• 大小: 3KB
    文件类型: .c
    金币: 2
    下载: 1 次
    发布日期: 2021-05-27
  • 语言: 其他
  • 标签: EEPROM  

资源简介

本程序是开发使用AT89C52自带的EEPROM

资源截图

代码片段和文件信息

#include
#include
#define uchar unsigned char
#define uint unsigned int
#define rdcommand 0x01
#define prgcommand 0x02
#define erasecommand 0x03
#define error 1
#define ok 0
#define waittime 0x01
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 dula=P2^6;
sbit wela=P2^7;
uchar code table[]={0x3f0x060x5b0x4f
0x660x6d0x7d0x07
0x7f0x6f0x770x7c
0x390x5e0x790x71};
uchar num; // 中断函数的变量为什么在这定义,换个地方行吗??
void delay1(uchar z)
    {   uchar xy;
    for(x=z;x>0;x--)
   for(y=110;y>0;y--);
}
 void display(uchar shiuchar ge)
    {  dula=1;
   P0=table[shi];
   dula=0;
       P0=0xff;
   wela=1;
   P0=0xfe;
   wela=0;
   delay1(5);


   dula=1;
   P0=table[ge];
   dula=0;
       P0=0xff;
   wela=1;
   P0=0xfd;
   wela=0;
   delay1(5);          
}
void display1(uchar shiuchar ge)
    {  dula=1;
   P0=table[shi];
   dula=0;
       P0=0xff;
   wela=1;
   P0=0xfb;
   wela=0;
   delay1(5);


   dula=1;
   P0=table[ge];
   dula=0;
       P0=0xff;
   wela=1;
   P0=0xf7;
   wela=0;
   delay1(5);          
}
/*----打开 ISPIAP-----*/
void ISP_IAP_enable(void)
  {EA=0;
   ISP_CONTR=ISP_CONTR&0x18;
    ISP_CONTR=ISP_CONTR&waittime;
     ISP_CONTR=ISP_CONTR|0x80;
  } 
/*----关闭 ISPIAP-----*/
void ISP_IAP_disable(void)
  {ISP_CONTR=ISP_CONTR&0x70;
   ISP_TRIG=0x00;
   EA=1;
  }
/*----公用的触发代码-----*/
void ISPgoon(void)
  {ISP_IAP_enable();
   ISP_TRIG=0x46;
   ISP_TRIG=0xb9;
   _nop_();
  }
/*----字节读-----*/
uchar byte_read(uint byte_addr)
 {

评论

共有 条评论