1 / 4
文档名称:

stc12c5a16s2单片机eeprom的使用.doc

格式:doc   大小:22KB   页数:4页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

stc12c5a16s2单片机eeprom的使用.doc

上传人:zgs35866 2019/5/25 文件大小:22 KB

下载得到文件列表

stc12c5a16s2单片机eeprom的使用.doc

文档介绍

文档介绍:本程序实现了利用STC12c5a16s2内部的EEPROM来存取数据的功能,这样的功能可以保证数据在掉电后不会丢失,上电后依然会保存。在这个程序中,只是简单地演示了利用该单片机的一个扇区来存储数码管的值。数码管的值每一秒增一,日后熟练地话,可以在单片机中存储许多重要的信息。作者:让梦远航日期:2012年10月18日最后修改:2012年11月6日欢迎对程序的功能进行扩充。*********************************************************/#include""//stc12c5a16s2单片机的头文件,可以从stc官网上下载#include<>#defineucharunsignedchar#defineuintunsignedint#mand0x01#mand0x02#mand0x03#defineError1#defineOK0#defineWaitTime0x01ucharcount,shu,shi,ge;sbitwela=P2^1;sbitwela1=P2^2;ucharcodeduanma[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};voiddelay(uintz){ uintj,k; for(j=0;j<z;j++) for(k=0;k<110;k++);}voiddisplay(ucharshu){ ucharshi,ge; shi=shu/10; ge=shu%10; wela1=0; P0=duanma[ge]; delay(2); wela1=1; wela=0; P0=duanma[shi]; delay(2); wela=1;}voidISP_IAP_enable(){ EA=0;IAP_CONTR=IAP_CONTR&0x18; IAP_CONTR=IAP_CONTR|WaitTime; IAP_CONTR=IAP_CONTR|0x80;}voidISP_IAP_disable(){IAP_CONTR=IAP_CONTR&0x7f; IAP_TRIG=0x00; EA=1;}voidISPgoon(){ ISP_IAP_enable(); IAP_TRIG=0x5a; IAP_TRIG=0xa5; _nop_(); }ucharbyte_read(uintbyte_addr){ IAP_ADDRH=(uchar)(byte_addr>>8); IAP_ADDRL=(uchar)(byte_addr&0x00ff); IAP_CMD=IAP_CMD&0xf8; IAP_CMD=IAP_CMD|mand; ISPgoon(); ISP_IAP_disable(); return(IAP_DATA);}voidSectorErase(uintsector_addr){ uintiSectorAddr; iSectorAddr=(sector_addr&0xfe00); IAP_ADDRH=(uchar)(iSectorAddr>>8); IAP_ADDRL=0x00; IAP_CMD=IAP_CMD&0xf8; IAP_CMD=IAP_CMD|mand; ISPgoon(); I