標題:
關(guān)于51單片機存儲FLASH的問題
[打印本頁]
作者:
Royal丶豪
時間:
2019-1-16 10:21
標題:
關(guān)于51單片機存儲FLASH的問題
STC89C52 STC12 STC15 STC8系列等 串口接收到數(shù)據(jù) 如何存儲在FLASH中 然后換串口或者 在此串口中換器件 并且發(fā)送存儲的數(shù)據(jù)。求資料,求程序,或者指教下該去看哪方面的東西。
作者:
ggzzc
時間:
2019-1-16 11:39
直接看數(shù)據(jù)手冊,中間Flash編程部分詳細看。網(wǎng)上例程非常多。
作者:
ahshmj
時間:
2019-1-16 14:58
數(shù)據(jù)手冊中有示范程序,可以直接套用。
作者:
Jason_Jay
時間:
2019-1-16 15:04
STCISP 自帶的例程 有擦寫EEPROM、串口的例程
EM截圖_201911615259.jpg
(141.21 KB, 下載次數(shù): 55)
下載附件
2019-1-16 15:04 上傳
作者:
yy625
時間:
2019-1-16 15:26
給一個STC8的作為參考
u8 iap_byte_rd(u16 addr)
{
u8 tmp;
F0 = EA;
EA = 0;
IAP_CONTR = 0x80;
IAP_CMD = 1;
IAP_ADDRH = (u8)(addr >> 8);
IAP_ADDRL = addr;
IAP_TRIG = 0x5a;
IAP_TRIG = 0xa5;
_nop_();
tmp = IAP_DATA;
IAP_CONTR = 0;
IAP_CMD = 0;
IAP_TRIG = 0;
IAP_ADDRH = 0xff;
IAP_ADDRL = 0xff;
EA = F0;
return tmp;
}
void iap_byte_wr(u16 addr, u8 val)
{
F0 = EA;
EA = 0;
IAP_CONTR = 0x80;
IAP_CMD = 2
IAP_ADDRH = (u8)(addr >> 8);
IAP_ADDRL = addr;
IAP_DATA = val;
IAP_TRIG = 0x5a;
IAP_TRIG = 0xa5;
_nop_();
IAP_CONTR = 0;
IAP_CMD = 0;
IAP_TRIG = 0;
IAP_ADDRH = 0xff;
IAP_ADDRL = 0xff;
EA = F0;
}
void iap_sec_erase(u16 addr)
{
F0 = EA;
EA = 0;
IAP_ADDRH = (u8)(addr >> 8);
IAP_ADDRL = addr;
IAP_CONTR = 0x80;
IAP_CMD = 3;
IAP_TRIG = 0x5a;
IAP_TRIG = 0xa5;
_nop_();
IAP_CONTR = 0;
IAP_CMD = 0;
IAP_TRIG = 0;
IAP_ADDRH = 0xff;
IAP_ADDRL = 0xff;
EA = F0;
}
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1