I2C协议小心得

1.IIC应答位

   应答位出现在发送每个字节的后一位,1个字节8位,应答出现在第9位,即第9个clk时钟周期。在时序上的表示:  当SCL为高电平时,SDA为低时响应;SDA为高时不响应

   每一个被传送的字节后面都必须跟一个应答位(一帧共有9个位)



2.IIC设备地址和传输方向之间的关系

比如说 画出向0x15(7位地址)器件的0x30写0x01的完整波形


地址转换

void main()
{
    int IIC_device_address = 0x15;/*7位IIC设备地址*/ 001 0101
    
    int WriteAddr ,ReadAddr;
    
    WriteAddr = IIC_device_address<<1;
    printf("IIC设备的写地址为:0x%x \n",WriteAddr); //0x2a  0010  1010
    
    ReadAddr = (IIC_device_address<<1) +1;         
    printf("IIC设备的读地址为:0x%x  ",ReadAddr);  //0x2b  0010 1011
    
}




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值