< 8; i++) { SCL = 1; read_data <<= 1; read_data |= (unsigned char)SDA; SCL = 0; } return(read_data);}/****************************************************************************函数功能:向EEPROM写数据入口参数:write_data出口参数:ack_bit****************************************************************************/bit shout(unsigned char write_data){ unsigned char i; bit ack_bit; for(i = 0; i < 8; i++) { SDA = (bit)(write_data & 0x80); _nop_(); SCL = 1; _nop_(); _nop_(); SCL = 0; write_data <<= 1; } SDA = 1; _nop_(); _nop_(); SCL = 1; _nop_(); _nop_(); _nop_(); _nop_(); ack_bit = SDA; // 读取应答 SCL = 0; return ack_bit; // 返回AT24Cxx应答位}/****************************************************************************函数功能:向指定地址写数据入口参数:addr,write_data出口参数:****************************************************************************/void write_byte(unsigned char addr, unsigned char write_data){ start(); shout(OP_WRITE); shout(addr); shout(write_data); stop(); delayms(10); }/****************************************************************************函数功能:读取当前地址数据入口参数:出口参数:read_data****************************************************************************/unsigned char read_current(){ unsigned char read_data; start(); shout(OP_READ); read_data = http://www.xuexi88.com/zhishi/shin(); stop(); return read_data;}/****************************************************************************函数功能:向指定地址读数据入口参数:random_addr出口参数:read_data****************************************************************************/unsigned char read_random(unsigned char random_addr){ start(); shout(OP_WRITE); shout(random_addr); return(read_current());}#endif 以上是个头文件,你可以去验证一下,顺便说一下,你太吝啬了,一分都不赏,如果我不是保存的有以前写过的代码,是不会来答的 。
文章插图
- 邮件地址 邮件地址怎么注册
- lol新手礼包领取 lol新手礼包领取地址
- 濮阳市住房公积金管理中心首页 濮阳市住房公积金管理中心地址
- 肇庆人力资源和社会保障局 肇庆人力资源和社会保障局地址
- 什么叫email地址 email地址是什么
- Sstm绅士联盟地址
- 默认网关不在由ip地址和子网掩码定义的同一网络段上
- 通讯地址 通讯地址和家庭地址有何区别
- 高德地图注册公司地址 高德地图注册公司地址怎么填
- 黔南医专 黔南医专地址