资料介绍
先来点题外话~网上说STM32F103的IIC有瑕疵!就当是有些短板吧,个人觉得,用起来肯定没问题,只是不好用。因为ST公司考虑到专利问题,所以没按飞利浦的标准来。导致STM32的IIC使用起来非常繁杂。下面就讲讲用STM32 IO口模拟IIC的注意问题:IIC总线时序:进入正题→_→博主就因为没理解好应答,吃了亏。讲一讲IIC的几个重要状态:1、空闲状态:当IIC总线空闲时,SDA和SCL两条线均为高电平,由于连接到总线上的器件必须是漏级和集电极开路(至于威为什么请读者自己搜索),只要有一个器件任意时刻输出低电平,都将使总线上的信号变低,即各器件的SDA和SCL是线与的关系。由于各器件输出端是漏级开路,故必须通过上拉电阻接正电源,以保证SDA和SCL在空闲时被拉为高电平。2、起始信号S和终止信号P(注意起始和终止信号中的延时,严格按照数据手册来,快一点,慢一点都不行!):起始信号S:在SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号,只有在起始信号以后,其他命令才有效。终止信号P:在SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号,随着终止信号的出现,所有外部操作都结束。如图:3、数据的传送:一句话:低电平变化,高电平稳定。IIC总线在进行数据传送时,每一位数据位的传送都与时钟脉冲相对应。时钟脉冲为高电平期间,数据线上的数据必须保持稳定;只有在时钟线为低电平期间,数据线上的电平状态才允许变化。即:数据在SCL的上升沿来之前就需准备好,并在下降沿来之前必须稳定。如图:4、(易错)应答信号ACK、非应答信号NACK、终止信号P:应答信号ACK:该信号是由从器件产生的,IIC总线在传送一字节(8位)数据后都必须有应答信号A,下面是易错点:对于反馈有效应答位ACK的要求是,接收器在第九个时钟脉冲之前得低电平期间将SDA线拉低,并且确保在该时钟的高电平期间为稳定的低电平。表示其已经收到一个8位的数据了。如图:非应答信号NACK:该信号是由主器件产生的。当主器件接收来自从机的数据时,接收到最后一个数据字节后,必须给从器件发送一个非应答信号,使从机释放数据总线,以便主机发送一个终止信号,从而结束数据的传送。终止信号P:主机发送终止信号有两种情况:1、当数据传输完成后,主器件发送终止信号。2、由于某种原因,接收方不对主器件寻址信号应答时,例如接收方正在进行其他处理而无法接收总线上的数据时,必须释放总线,将数据线置为高电平,而由主器件产生一个终止信号以结束总线的数据传送。从上文中可以看出:1、无论何种数据传输格式(主发从收,主收从发,主机收发),寻址字节都由主器件发出,数据字节的传送方向则由寻址字节中的方向为来决定。2、寻址字节只表明了从器件的地址及数据传送方向。从器件内部的n个数据地址,由器件设计者在该器件的IIC总线数据操作格式中,指定第1个数据字节作为器件内的单元地址指针,并且设置地址自动加减功能,以减少从器件的寻址操作。3、每个字节传送都必须有应答信号相随。4、从器件在接收到起始信号后都必须释放数据总线,使其处于高电平(最后一个图),以便主器件发送从机地址。(mbbeetchina)
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- OLED兼容SPI和IIC版本资料汇总下载 0次下载
- IIC通信小OLED显示屏模块资料汇总 83次下载
- 常见信号链设计的难点及数据采集系统设计的挑战资料下载
- 模电的难点重点,怎么学资料下载
- STM32之DAC资料下载
- 汽车零部件低功耗测试三大难点资料下载
- 嵌入式ARM学习总结之IIC资料下载
- stm32 iap 关键点记录资料下载
- STM32 FSMC驱动TFTLCD 难点解析资料下载
- 无线充电测试难点及解决方案资料下载
- 多层PCB线路板打样难点资料下载
- MLCC选型,工程师可能会犯哪些错资料下载
- IIC 开漏输出相关分析资料下载
- 51单片机IIC总线通信原理及其简单应用资料免费下载
- ALIENTEK_MINISTM32_实验16_IIC实验 7次下载
- IIC总线的FPGA实现说明 1.8k次阅读
- 晶体知识—位错的生成和增值知识介绍 5.5k次阅读
- 晶体知识:位错的基本类型和特征 1.1w次阅读
- 什么是a位错,c位错,c+a位错?如何区分三种位错? 1.1w次阅读
- 如何在透射电镜下判断位错类型 4.5k次阅读
- STM32基础知识:IIC总线操作EEPROM存储模块AT24C02 3.8k次阅读
- STM32基础知识:IIC概述与软件模拟IIC 3.8k次阅读
- 用面向对象思想封装IIC、AT24C64驱动 1.7k次阅读
- 面向对象方法实现IIC驱动封装以及AT24CXX存储器的封装 2.1k次阅读
- 如何实现IIC驱动封装以及AT24CXX存储器的封装 1.7k次阅读
- 60个电工常见易错的技术知识点要点! 5.8k次阅读
- C/C++入门易错点及常用小技巧 3.4k次阅读
- C语言误用易错知识点与基本语法汇总 2.3k次阅读
- iic和spi有什么区别 3w次阅读
- 最全STM32外设资料汇总 3w次阅读
下载排行
本周
- 1PD取电芯片 ECP5702规格书
- 0.88 MB | 3次下载 | 免费
- 2氮化镓GaN FET/GaN HEMT 功率驱动电路选型表
- 0.10 MB | 2次下载 | 免费
- 3EMC PCB设计总结
- 0.33 MB | 2次下载 | 免费
- 41节电池用电池保护IC S-8261D系列数据手册
- 3.07 MB | 1次下载 | 1 积分
- 5PD取电芯片,可取5/9/12/15/20V电压ECP5702数据手册
- 0.88 MB | 1次下载 | 免费
- 6飞腾FT2000-4 COM Express核心板技术手册0603
- 1.22 MB | 1次下载 | 免费
- 7飞腾S5000C-64双路服务器系列应用宣传册--一乘科技
- 945.81 KB | 1次下载 | 免费
- 8IP2345支持PD3.0等多种快充协议 支持4~6节串联电池最大充电功率30W异步升降压充电IC
- 1.41 MB | 次下载 | 免费
本月
- 1美的电磁炉电路原理图资料
- 4.39 MB | 22次下载 | 10 积分
- 2反激式开关电源设计解析
- 0.89 MB | 16次下载 | 5 积分
- 3耗尽型MOS FET产品目录选型表
- 0.14 MB | 3次下载 | 免费
- 4PD取电芯片 ECP5702规格书
- 0.88 MB | 3次下载 | 免费
- 5氮化镓GaN FET/GaN HEMT 功率驱动电路选型表
- 0.10 MB | 2次下载 | 免费
- 6EMC PCB设计总结
- 0.33 MB | 2次下载 | 免费
- 7PC5200 700V_10A GaN HEMT驱动器数据手册
- 1.63 MB | 1次下载 | 免费
- 81节电池用电池保护IC S-8261D系列数据手册
- 3.07 MB | 1次下载 | 1 积分
总榜
- 1matlab软件下载入口
- 未知 | 935137次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420064次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233095次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191457次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183360次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81605次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73831次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65991次下载 | 10 积分
电子发烧友App





创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论