No.51284 作者:wocy 邮件:wocy@mail.china.com ID:17660 登陆:5次 文章数:8篇 最后登陆IP:219.133.6.51 最后登陆:2004/4/30 21:45:16 注册:2004/1/29 18:10:22 财富:137 发帖时间:2004/3/24 22:11:43 发贴者IP:218.18.141.57 标题:wocy:这个24C02的程序错误太多了能不能帮忙看一下. 摘要:No.51284这个24C02的程序错误太多了能不能帮忙看一下. #include <reg52.h> #include <intrins.h> #define uchar unsigned char #define uint unsigned int sbit ASDA=P1^0; sbit ACLK=P1^1; sbit kd_key=P1^2; sbit LEDP=P1^7; sbit SDA=P3^4; sbit SCL=P3^5; extern void Read24c02(unsigned char *RamAddress, unsigned char RomAddress,unsigned char bytes); extern void Write24c02(unsigned char *RamAddress, unsigned char RomAddress,unsigned char bytes); /****************************************************************/ #define WriteDeviceAddress 0xa0 #define ReadDviceAddress 0xa1 uchar i,k,second=0,minute=0; uint time; uchar data display_bit ,display_buffer[4]; uchar code led[10]= {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}; void send(uchar a); void delay(uint n); void display(void); void start(void); void stop(void); void ACK(void); void NOACK(void); void TESTACK(void); bit Write8Bit(unsigned char input); unsigned char Read8Bit(); void delay(uint n) { unsigned char i,j; for(i=0;i <n;i++) { for(j=0;j <250;j++); } } void send(uchar a) { uchar k; for (k=0;k <8;k++) { if(_crol_(a,k)&0x80) ASDA=1; else ASDA=0; ACLK=1; ACLK=0; } } void display() { display_bit=0xbf; // uchar i,k; for(i=0;i <4;i++) { P1=0XFF; k=led[display_buffer[i]]; send(k); delay(1); P1=display_bit; display_bit=_cror_(display_bit,1); } } void time0(void)interrupt 1 using 1 { TH0=-9216/256; TL0=-9216%256; if(++time==100) { ++second; time=0; } if(second==60) { ++minute; second=0; } if(minute==59) { minute=0; } //******************************************************************* /********************/ void Start() { SDA=1; SCL=1; SDA=0; SCL=0; } /*********************/ void Stop() { SCL=0; SDA=0; SCL=1; ......
>>返回讨论的主题
|