金牌会员
 
- 积分
- 1371
- 金钱
- 1371
- 注册时间
- 2015-3-24
- 在线时间
- 190 小时
|
5金钱
//读出1串数据 存放读出数据 待读出长度 待读出地址 器件类型(24c16或SD2403)
u8 I2C_ReadByte(u16 ReadAddress, u8 DeviceAddress)
{
u8 buffer;
if(!I2C_Start()) return 0;
I2C_SendByte(((ReadAddress & 0x0700) >>7) | DeviceAddress & 0xFFFE);//设置高起始地址+器件地址
if(!I2C_WaitAck()){I2C_Stop(); return 0;}
I2C_SendByte((u8)(ReadAddress & 0x00FF)); //设置低起始地址
I2C_WaitAck();
I2C_Start();
I2C_SendByte(((ReadAddress & 0x0700) >>7) | DeviceAddress | 0x0001);
I2C_WaitAck();
buffer = I2C_ReceiveByte();
I2C_NoAck();
I2C_Stop();
return buffer;
}
keytime=I2C_ReadByte(0x02,ZLG7290);
Delay_Ms(1);
key_dat=I2C_ReadByte(0x01,ZLG7290);
读出地址02的按键时间都是有的(会根据不同的按键长短显示大小不同的数字),但是按键键值却是00,求解?
、、、、这个直接用就是了撒,还需要啥子配置?ZLG7290=0X70
|
|