IIC通信

1 篇文章 0 订阅
1 篇文章 0 订阅

今天花了好长时间看了硬件IIC的原理以及寄存器配置,同时还比较了模拟IIC。有以下收获:
1.硬件IIC比模拟IIC速度快,但是引脚固定,不如模拟IIC灵活
2.网上各类帖子以及正点原子的例程都说ST的硬件IIC接口复杂而且容易不稳定,模拟的IIC虽然程序写起来繁琐,但是灵活方便,可以根据自己的需要配置
3.区别一下IIC通信和EEPROM:
(1)IIC是一种通信总线,而EEPROM是拥有IIC接口的ROM
(2)以前觉得模拟IIC的程序好复杂,但是其实并不是,IIC的时序如下图1,就是特别简单时序图,而我以前所认为的复杂仅仅是把EEPROM使用IIC通信认作了IIC的通信格式,图2是EEPROM的通信机制。
图1.IIC总线协议
在这里插入图片描述
在这里插入图片描述
4.还有一点就是ACK和NACK以前一直不能理解,其实无论发送还是读取,都是要ACK来应答的,单片机读数据的时候读一个字节结束若发送ACK(0)表示继续读,若发送NACK(1)则代表停止,所以读取N个字符的时候,前N-1个发送ACK,最后一个发送NACK,写数据的时候同理,写操作结束后,若单片机接收到ACK则表示写入成功,若接收到NACK则写入失败
5.自己的一点反思:思考+总结+自己动手不做伸手党,以后学习一定要踏实,一定不能图块。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值