w_r_e2ram.c
来自「433.92m无线模块的接收到有效数据后」· C语言 代码 · 共 65 行
C
65 行
//////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////
#include "Reg935.h"
#include "W_R_E2RAM.h"
//////////////////////////////////////////////////////////////////////////////////////////
/*--------------------------------------------------------------------------------------*/
//////////////////////////////////////////////////////////////////////////////////////////
void Write_Datato_E2RAM (uchar Count,uchar Addr,uchar *Wdata_Addr )
{
uchar *Temp;
Temp=Wdata_Addr;
EA=0; //写操作前关闭中断功能,避免干扰
while(Count>0)
{
DEECON=0x00; //初始化DEECON
DEEDAT=*Temp; //赋值DEEDAT
DEEADR=Addr; //赋值DEEADR
while((DEECON&0x80)==0); //等待写完成
DEECON=DEECON&0x7F; //清0写完成标志
Addr++; //地址递增
Temp++;
Count--; //循环次数递减
}
EA=1; //开中断
}
/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
void Read_Datato_E2RAM (uchar Count,uchar Addr,uchar *Wdata_Addr )
{ uchar *Temp;
Temp=Wdata_Addr;
while(Count>0)
{
DEECON=0x00; //初始化DEECON
DEEADR=Addr; //赋值DEEADR
while((DEECON&0x80)==0); //等待
*Temp=DEEDAT; //将读出的值赋给Tem
Temp++;
Addr++; //地址递增
Count--; //循环次数递减
}
}
////////////////////////////////////////////////////////////////////////////
void Write_Datato_00E2RAM (uchar Count,uchar Addr )
{
EA=0; //写操作前关闭中断功能,避免干扰
while(Count>0)
{
DEECON=0x00; //初始化DEECON
DEEDAT=0x00; //赋值DEEDAT
DEEADR=Addr; //赋值DEEADR
while((DEECON&0x80)==0); //等待写完成
DEECON=DEECON&0x7F; //清0写完成标志
Addr++; //地址递增
Count--; //循环次数递减
}
EA=1; //开中断
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?