24c04寻址地址怎么写( 二 )

< 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 以上是个头文件,你可以去验证一下,顺便说一下,你太吝啬了,一分都不赏,如果我不是保存的有以前写过的代码,是不会来答的 。

24c04寻址地址怎么写

文章插图