stc單片機EEPROM讀寫--最簡潔的的拿來就用保證沒錯^_^簡潔至上!

sfr isp_data=0xe2;
sfr isp_addrh=0xe3;
sfr isp_addrl=0xe4;
sfr isp_cmd=0xe5;
sfr isp_trig=0xe">

小视频免费在线观看_夜夜b_男女隐私免费视频_国产一级性生活视频_久久综合入口_精品国内视频

技術(shù)頻道

stc eeprom的實用讀寫演示,提供了一種eeprom動

stc單片機EEPROM讀寫--最簡潔的的拿來就用保證沒錯^_^簡潔至上!

sfr isp_data=0xe2;
sfr isp_addrh=0xe3;
sfr isp_addrl=0xe4;
sfr isp_cmd=0xe5;
sfr isp_trig=0xe6;
sfr isp_contr=0xe7;

unsigned char eeprom_read(unsigned int addres);
void eeprom_write(unsigned int address,unsigned char wdata);
void eeprom_eares(unsigned int addres);//扇區(qū)擦除。

void eeprom_eares(unsigned int addres)//扇區(qū)擦除。
{unsigned i;
isp_addrl=addres; //低位地址
isp_addrh=addres>>8; //高位地址
isp_contr=0x01;
isp_contr=isp_contr|0x80; //設時間與充ISP操作。
isp_cmd=0x03; //扇區(qū)命命令
isp_trig=0x46; //觸發(fā)
isp_trig=0xb9; //觸發(fā)啟動。
for(i=0;i<3;i++);
isp_addrl=0xff;
isp_addrh=0xff;
isp_contr=0x00;
isp_cmd=0x00;
isp_trig=0x00;

}
void eeprom_write(unsigned int addres,unsigned char write_data)//寫數(shù)據(jù)。
{unsigned char i;
isp_data=write_data; //要寫入的數(shù)據(jù)。
isp_addrl=addres; //低位地址
isp_addrh=addres>>8; //高位地址
isp_contr=0x01;
isp_contr=isp_contr|0x80; //設時間與充ISP操作。
isp_cmd=0x02; //寫命令
isp_trig=0x46; //觸發(fā)
isp_trig=0xb9; //觸發(fā)啟動。
for(i=0;i<3;i++);
isp_addrl=0xff;
isp_addrh=0xff;
isp_contr=0x00;
isp_cmd=0x00;
isp_trig=0x00;


}
unsigned char eeprom_read(unsigned int addres)
{unsigned char i,z;
isp_addrl=addres; //低位地址
isp_addrh=addres>>8; //高位地址
isp_contr=0x01;
isp_contr=isp_contr|0x80; //設時間與充ISP操作。
isp_cmd=0x01; //寫命令
isp_trig=0x46; //觸發(fā)
isp_trig=0xb9; //觸發(fā)啟動。
for(i=0;i<3;i++);
isp_addrl=0xff;
isp_addrh=0xff;
isp_contr=0x00;
isp_cmd=0x00;
isp_trig=0x00;
z=isp_data;
return(z);


}

最給一個匯編的:
;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
;;; 內(nèi)部EEPROM讀寫定義
ISP_DATA EQU 0E2H ;寫入讀出數(shù)據(jù)寄存器.
ISP_ADDRH EQU 0E3H ;地址寄存器高8位
ISP_ADDRL EQU 0E4H ;地址寄存器低8位
ISP_CMD EQU 0E5H ;命令模式寄存器
ISP_TRIG EQU 0E6H ;命令觸發(fā)寄存器
ISP_CONTR EQU 0E7H ;ISP/IAP控制寄存器.
ISP_IAP_BYTE_READ EQU 1 ;字節(jié)讀
ISP_IAP_BYTE_PROGRAM EQU 2 ;字節(jié)編程,要空才能寫
ISP_IAP_SECTOR_ERASE EQU 3 ;扇區(qū)擦除,
WAIT_TIME EQU 1 ;20M以下為1
BYTE_ADDR_HIGH EQU 60H ;高位地址
BYTE_ADDR_LOW EQU 61H ;低位地址
BYTE_WRITE_DATA EQU 62H ;要寫入的數(shù)據(jù)

;***********************內(nèi)部EEPROM操作*************************
READ_EEPROM:MOV ISP_ADDRH,ISP_ADDRH ;送高地址
MOV ISP_ADDRL,ISP_ADDRL ;送低地址
MOV ISP_CONTR,#01h ;設置等等待時間
ORL ISP_CONTR,#80h ;允許ISP/IAP操作
MOV ISP_CMD,#01h ;送讀命令
MOV ISP_TRIG,#46H ;觸發(fā)
MOV ISP_TRIG,#0B9H ;觸發(fā)啟動.
NOP
NOP
MOV ISP_CONTR,#00H
MOV ISP_CMD,#00H
MOV ISP_TRIG,#00H
MOV ISP_ADDRH,#0FFH
MOV ISP_ADDRL,#0FFH
MOV 6AH,ISP_DATA ;讀出的數(shù)據(jù)放到6AH單元中。

RET
WRITE_EARES: MOV WDT,#34H
CLR EA ;關(guān)中斷
MOV ISP_ADDRH,ISP_ADDRH ;送高地址
MOV ISP_ADDRL,ISP_ADDRL ;送低地址
MOV ISP_CONTR,#1h ;設置等等待時間
ORL ISP_CONTR,#10000000B ;允許ISP/IAP操作
MOV ISP_CMD,#3h ;送扇區(qū)命令
MOV ISP_TRIG,#46H ;觸發(fā)
MOV ISP_TRIG,#0B9H ;觸發(fā)啟動.
NOP
NOP
MOV ISP_CONTR,#00H
MOV ISP_CMD,#00H
MOV ISP_TRIG,#00H
MOV ISP_ADDRH,#0FFH
MOV ISP_ADDRL,#0FFH
SETB EA
RET
WRITE_EEPROM:MOV WDT,#34H
CLR EA
MOV ISP_DATA,BYTE_WRITE_DATA ;要寫入的數(shù)據(jù)
MOV ISP_ADDRH,ISP_ADDRH ;送高地址
MOV ISP_ADDRL,ISP_ADDRL ;送低地址
MOV ISP_CONTR,#1h ;設置等等待時間
ORL ISP_CONTR,#10000000B ;允許ISP/IAP操作
MOV ISP_CMD,#02h ;送寫命令
MOV ISP_TRIG,#46H ;觸發(fā)
MOV ISP_TRIG,#0B9H ;觸發(fā)啟動.
NOP
NOP
MOV ISP_CONTR,#00H
MOV ISP_CMD,#00H
MOV ISP_TRIG,#00H
MOV ISP_ADDRH,#0FFH
MOV ISP_ADDRL,#0FFH
SETB EA ;開中斷

RET

文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。

主站蜘蛛池模板: 国产精品一区二区三区不卡 | 欧美日韩中文在线观看 | 亚洲成人av一区二区三区 | 日韩国产在线播放 | 成年人在线观看视频 | 香蕉视频色版在线观看 | 亚洲福利一区二区三区 | 国产成人深夜视频51 | 99精品视频在线观看免费 | 福利片在线播放 | 久久草av| 欧美日韩亚洲国产精品 | 亚洲免费大片 | 国产精品视频1区 | 男女av在线 | 韩国三级hd中文字幕 | 成人免费在线观看 | 欧美天天 | 国产精品久久久久久久久久久杏吧 | 欧美日韩色 | 亚洲射| 成人av在线网址 | 欧美成人免费在线 | 久久久久久久综合 | 欧美一区二区三区免费看 | 我不卡手机影院 | 日韩视频一区二区三区四区 | 成人黄色毛片视频 | 亚洲 成人 在线 | 成人性生交大片 | 久久精品视频网 | 久久久久久亚洲精品视频 | 黄色免费网站 | 日日夜夜狠狠 | 91精品啪在线观看国产线免费 | 性欧美18 | 久久久精品美女 | 国产精品久久综合 | 一区二区中文字幕 | 久久久精品免费观看 | 精品9999|