导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→请教STC12C2052AD ;EEROM的使用

* 87321: 请教STC12C2052AD ;EEROM的使用

   气贯长虹 
气贯长虹发表的帖子 

 请教STC12C2052AD ;EEROM的使用
这问题我已解决,谢谢大家了!27/12
我是刚拿到了STC12C2052AD芯片,在使用中EEROM的不能使用,以下是源程序,请大虾指点,在下载器上使用的:

#include   <REG51.H>  
#include   <intrins.h>   

sfr ISP_DATA = 0xE2;
sfr ISP_ADDRH = 0xE3;
sfr ISP_ADDRL = 0xE4;
sfr ISP_CMD  = 0xE5;
sfr ISP_TRIG = 0xE6;
sfr ISP_CONTR = 0xE7;


sbit CONTR = 0xB4; //P3.4 

extern void DataFlashByteWrite(unsigned int address, unsigned char bytedata);
extern unsigned char DataFlashLoad(unsigned int address);
extern void DataFlashPageErase(unsigned int address);
void main(void)
{
 

 EA   =  0; 

// SP  = 0xe0;
// ISP_CONTR = 0x40;

 DataFlashPageErase(0x1000);
 DataFlashByteWrite(0x1000,0x03);

// P3=ISP_DATA;
 
 ISP_DATA=0x00;

 if (DataFlashLoad(0x1000)==0x03)
 CONTR=0;
}


void DataFlashByteWrite(unsigned int address, unsigned char bytedata)
{
 ISP_CONTR=0x80;
 ISP_CMD=0x02;
 ISP_ADDRH=address/256;
 ISP_ADDRL=address%256;
 ISP_DATA=bytedata;
 
 ISP_TRIG=0x46;
 ISP_TRIG=0x89;    //waiting for write over
 _nop_(); 
 ISP_CONTR=0;
 ISP_CMD=0;
 ISP_TRIG=0;
 ISP_ADDRH=0;
 ISP_ADDRL=0;
 
 
}

unsigned char DataFlashLoad(unsigned int address)
{
 idata unsigned char temp;
 
 ISP_CONTR=0x80;
 ISP_CMD=0x01; 
 ISP_ADDRH=address/256;
 ISP_ADDRL=address%256;
 
 ISP_TRIG=0x46;
 ISP_TRIG=0x89;    //waiting for read over
 _nop_();
 temp=ISP_DATA;
 ISP_CONTR=0;
 ISP_CMD=0;
 ISP_TRIG=0;
 ISP_ADDRH=0;
 ISP_ADDRL=0;
 return temp;
}


void DataFlashPageErase(unsigned int address) //erase 512 Bytes(one page word);
{
 ISP_CONTR=0x80;
 ISP_CMD=0x03;
 ISP_ADDRH=address/256;
 ISP_ADDRL=address%256;
 ISP_TRIG=0x46;
 ISP_TRIG=0x89;    //waiting for erase over
 _nop_(); 
 ISP_CONTR=0;
 ISP_CMD=0;
 ISP_TRIG=0;
 ISP_ADDRH=0;
 ISP_ADDRL=0;
}



发表时间:2005年12月26日10:06:47

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:我是新手,大家多照顾!!我做的毕业设计是实现RS-232与RJ-45的通信,我想知道在哪里能找到这方
[下一篇帖子]:请教keilc?最近用keilC 写了个程序,编译时通过,连接的时候出现了***