- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式技术与应用
课程设计报告
题 目 STM32 I2C固件库分析与应用 I2C接口
1.1介绍
1.2主要特点
1.3概述
1.4功能描述
1.4.1I2C从模式
1.4.2I2C主模式
1.4.3错误条件
1.4.4SDA/SCL线控制
1.4.5SMBus
1.4.6DMA请求
1.4.7包错误校验(PEC)
1.5 中断请求
内部集成电路(I2C)1.6.1 I2C寄存器结构
1.6.2 I2C库函数
函数I2C_DeInit .
函数I2C_ Init
.2.3 函数I2C_ StructInit
函数I2C_ Cmd
函数I2C_ DMACmd
函数I2C_ DMALastTransferCmd
函数I2C_ GenerateSTART
函数I2C_ GenerateSTOP
函数I2C_ AcknowledgeConfig
0 函数I2C_ OwnAddress2Config
1 函数I2C_ DualAddressCmd
2 函数I2C_ GeneralCallCmd
3 函数I2C_ ITConfig
4 函数I2C_ SendData
5 函数I2C_ ReceiveData
6 函数I2C_ Send7bitAddress
7 函数I2C_ ReadRegister
8 函数I2C_ SoftwareResetCmd
9 函数I2C_ SMBusAlertConfig
0 函数I2C_ TransmitPEC
1 函数I2C_ PECPositionConfig
2 函数I2C_ CalculatePEC
3 函数I2C_ GetPEC
4 函数I2C_ ARPCmd
5 函数I2C_ StretchClockCmd
6 函数I2C_ FastModeDutyCycleConfig
7 函数I2C_ GetLastEvent
9 函数I2C_ GetFlagStatus
0 函数I2C_ ClearFlag
1 函数I2C_ GetITStatus
2 函数I2C_ ClearITPendingBi
12C接口
1.1 介绍
I2C 总线接口连接微控制器和串行 I2C 总线。它提供多主机功能,控制所有 I2C 总线特定的时序、协议、仲裁和定时。支持标准和快速两种模式,同时与 SMBus2.0 兼容。I2C 总线有多种用途,包括 CRC 码的生成和校验、SMBus(系统管理总线 SystemManagement Bus)、PMBus(电源管理总线 Power Management Bus)。根据特定设备的需要,可以使用 DMA 以减轻 CPU 的负担。
1.2 主要特点
● 并行总线/I2C 总线协议转换器
● 多主机功能:同一接口既可做主设备也可做从设备
● I2C 主设备功能
? 产生时钟
? 产生起始和停止信号
● I2C 从设备功能
? 可编程的 I2C 地址检测
? 可响应 2 个从地址的双地址能力
? 停止位检测
● 产生和检测 7 位/10 位地址和广播呼叫
● 支持不同的通讯速度
? 标准速度(高至 100 kHz)
? 快速(高至 400 kHz)
● 状态标志:
? 发送器/接收器模式标志
? 字节发送结束标志
? I2C 总线忙标志
● 错误标志
? 主模式时的仲裁丢失
? 地址/数据传输后的应答(ACK)错误
? 检测到起始和停止错位
? 禁止拉长时钟功能后的上溢或下溢
● 2 个中断向量
? 1 个中断用于地址/数据通讯成功
? 1 个中断用于出错
● 可选的拉长时钟功能
● 具单字节缓冲器的 DMA
● 可配置的 PEC(信息包错误检测)的产生或校验:
? 发送模式中 PEC 值可以作为最后一个字节传输
? 用于最后一个接收字节的 PEC 错误校验
● 兼容 SMBus 2.0
? 25 ms 时钟低超时延时
? 10 ms 主设备累积时钟低扩展时间
? 25 ms 从设备累积时钟低扩展时间
? 带 ACK 控制的硬件 PEC 产生/校验
? 支持地址分辨协议(ARP)
● 兼容 SMBus
不是所有产品中都包含上述所有特性。请参考相关的数据手册,确认该产品支持的 I2C 功能。
1.3 概述
I2C 接口接收和发送数据,并将数据从串行转换成并行,或并行转换成串行。可以开启或禁止中断。接口通过数据引脚(SDA)和时钟引脚(SCL)连接到 I2C 总线。允许连接到标准(高至 100 kHz)或快速(高至 400 kHz)I2C 总线。
模式选择
接口可以下述 4 种模式中的一种运行:
● 从发送器模式
● 从接收器模式
● 主发送器模式
● 主接收器模式
默认模式为从模式。接口
您可能关注的文档
最近下载
- 青少年趣味编程(Python)第十一节多分支选择if-elif 课后服务.pptx VIP
- 金蝶云星空+V7.6产品培训_财务_税务管理.pptx VIP
- 药品生产质量管理题库(附答案).docx VIP
- 山东省青岛市李沧区九年级(上)期末化学试卷 (2).doc VIP
- 办公楼保洁项目重点难点及解决方案.pdf VIP
- 卫生院职能部门对药物临床应用进行监测与评价,有持续改进的成效.docx VIP
- 满足顾客需求培训(ppt 39页).ppt VIP
- 22S702 室外排水设施设计与施工-钢筋混凝土化粪池图集.pdf VIP
- 青少年趣味编程(Python)第十节 if-else条件语句 课后服务.ppt VIP
- 教学课件24 稀硝酸生产.ppt VIP
原创力文档


文档评论(0)