No.88851 作者:cy757 邮件:wcy757@sohu.com ID:37672 登陆:13次 文章数:6篇 最后登陆IP:58.61.221.169 最后登陆:2013/4/3 9:30:44 注册:2005/7/18 16:08:32 财富:148 发帖时间:2006/2/13 23:27:49 发贴者IP:61.143.95.163 标题:cy757:通过调试的AT93C46读写程序(C语言) 摘要:No.88851通过调试的AT93C46读写程序(C语言) 本程序是我个人根据现在各个93C46/93C56/93C66读写的程序修改而成,欢迎各个读者就本程序存在的问题提出讨论。 /********************************************************************* 通过调试的AT93C46读写程序(C语言) * 程序说明:本程序实现51系列单片机对AT93C46的读写,ORG端接地。各位读者 在使用过程中如果出现那些问题欢迎给我来信。 * 版本: v1.1 * 时间: 2006.2.8 * 作者: 广州大学松田学院 飘扬 * QQ: 23328100 * E-mail:cy757@21cn.com *********************************************************************/ #include <reg51.h> #include <intrins.h> unsigned char uchar; #define READ_D 0xc0 //读指令 #define WRITE_D 0xa0 //写指令 #define ERASE_D 0xe0 //擦除指令 #define EWEN_D 0x98 //擦/写允许指令 #define EW_D 0x80 //擦/写禁止指令 sbit CS = P1^0; sbit SK = P1^1; sbit DI = P1^2; sbit DO = P1^3; //时钟函数 void at93c46_clock(void) { SK=0; _nop_(); SK=1; } //输入函数;in_data为数据,d_bit为输入数据的位数。 void send(uchar in_data,uchar d_bit) { uchar i; for(i=0;i <d_bit;i++) { DI=(bit)(in_data&0x80); in_data < <=1; at93c46_clock(); } } //接收函数 ucha ......
>>返回讨论的主题
|