No.105370 作者:yenongqing 邮件:yenongqing@163.com ID:76232 登陆:2次 文章数:3篇 最后登陆IP:125.76.157.10 最后登陆:2007/8/11 15:47:18 注册:2007/4/27 14:25:43 财富:116 发帖时间:2007/4/29 14:17:33 发贴者IP:222.90.92.170 标题:yenongqing:AT93C56如何运用 摘要:No.105370AT93C56如何运用 #include <reg51.h> #define u_char unsigned char #define u_int unsigned int sbit CS=P1^4; sbit SK=P1^5; sbit DI=P1^6; sbit D=P1^7; u_char xdata yangan=0x5e; u_char data fanyangan; /*void at93c56_ewen(void); void at93c56_ewds(void); u_char at93c56_read(u_char addr); void at93c56_write(u_char addr,u_char mybyte); void at93c56_erase(u_char addr); void at93c56_wral(u_char mybyte); void at93c56_eral(void); */ void at93c56_ewen(void) { u_char i,temp; CS=0;SK=0;CS=1;DI=1;SK=1;SK=0; temp=0x30; for(i=0;i <8;i++) { DI=temp&0x80; SK=1;SK=0;temp < <=1; } CS=0; } void at93c56_ewds(void) { u_char i,temp; CS=0;SK=0;CS=1;DI=1;SK=1;SK=0; temp=0x00; for(i=0;i <8;i++) { DI=temp&0x80; SK=1;SK=0;temp < <=1; } CS=0; } u_char at93c56_read(u_char addr) { u_char i,result; CS=0;SK=0;CS=1;DI=1;SK=1;SK=0; DI=1;SK=1;SK=0;DI=0;SK=1;SK=0; for(i=0;i <8;i++) { DI=addr&0x80; SK=1;SK=0;addr < <=1; } CS=0;D=1;CS=1; SK=0; while(!D) { SK=1;SK=0; } SK=1;SK=0; result=0; for(i=0;i <8;i++) { result < <=1; result=result|D; SK=1;SK=0; } CS=0; return(result); } void at93c56_write(u_char addr,u_char mybyte) { u_char i; at93c56_ewen(); CS=0;SK=0;CS=1;DI=1;SK=1;SK=0; DI=0;SK=1;SK=0;DI=1;SK=1;SK=0; for(i=0;i <8;i++) { DI=addr&0x8 ......
>>返回讨论的主题
|