4.IIC总线
一.IIC总线说明:
IIC总线时序只有高低电平的持续时间一般是大于多少us/ms。
iic时序:
开始:当SCL为高电平时,SDA由高电平状态切换到低电平状态时,会产生一个起始信号。
停止:当SCL为高电平时,SDA由低电平转换为高电平,产生一个终止信号。
数据位传输:当SCL为高电平时SDA的状态不能发生改变,在此过程中数据位被传输。
当SCL为低电平时SDA的状态可以发生改变,当SCL为高电平状态时被传输。
应答信号的产生: 主机向从机写数据时,由从机产生应答信号,主机接收
主机读数据时,由主机产生应答信号,从机接收。 当第九个时钟信号到来时,SDA为高电平规定为不产生应答信号,低电平为产生应答信号。
IIC设备读写序列:
写: START | SLAVEADDR W | ACK| MEMOMRYADDR| ACK| DATA LSB| ACK| DATA MSB| ACK| STOP|
读: START | SLAVEADDR W | ACK| MEMORYADDR | ACK| REPEATED START| MEMORYADDR R|ACK|DATA LSB|ACK|DATA MSB|NACK|STOP|
二.调试说明:
确定总线时序没有问题时,应从多方面分析问题。
对于IIC总线,当读取到的信号全为0XFF时,说明的问题是 :
时序问题 ,延迟不准确导致
硬件问题 ,接线是否正确,从机器件信息是否正确,线是否接反。
上拉电阻 ,因为SDA /SCL只能输出0,所以需要上拉电阻才能产生高电平。1.5K /2.2K /4.7K
******************
**此次调试的问题:**
******************
确定软件时序没问题后,没能从硬件角度去查找问题。当GPIO引脚复用时,要开启RCC_APB2Periph_AFIO时钟。
各种信号都有电平状态,前期可以根据电平值初步估计硬件是否有问题。
三、多主机设备 multi host
最新文章
- 自定义Sublime Text的图标
- 流行的JavaScript库 ——jQuery
- Cats(2)- Free语法组合,Coproduct-ADT composition
- Maven应用
- Unix/Linux编程实践教程(0:文件、终端、信号)
- SQL语句中如何把文件以二进制数组形式存入数据库
- 【百度SEO优化】如何让蜘蛛爬行你的网站
- BZOJ1013 球形空间产生器sphere
- Go语言Web框架gwk介绍 1
- MAC平台下mysql7.5的安装
- Spark:使用Spark Shell的两个示例
- burpsuite+sqlmap跨登录验证SQL注入
- mysql数据与Hadoop之间导入导出之Sqoop实例
- gitlab 升级
- 《并行程序设计导论》——MPI(Microsoft MPI)(1):Hello
- 第一迭代目标——future weather
- Python基础之列表深浅复制和列表推导式
- Linux 本地repo配置
- 【hta版】获取AppStore上架后的应用版本号
- CSS3 transition过渡
热门文章
- Django框架(七)
- 20175227张雪莹 2018-2019-2 《Java程序设计》第四周学习总结
- [Codeforces613E]Puzzle Lover
- vue-router进阶-3-过渡动效
- HDU1171将多个不同价值不同数量的器材尽可能按等价值均分 第一份的价值尽可能的大 所以sum/2对第二份进行01背包 使其价值尽可能的大
- A Network-based End-to-End Trainable Task-oriented Dialogue System
- js添加锚点
- 阿里云centos7使用yum安装mysql的正确姿势
- ID3-C45-CART
- sql server中用聚合函数查询退休人的开销信息