打印
[STM32F1]

stm32程序架构

[复制链接]
198|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pentruman|  楼主 | 2024-5-25 09:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1 硬件实现协议:
        stm32的硬件IIC,在某些情况下会出现错误,但也没有必要去纠结这个问题。
        STM32的I2C外设可用作通讯的主机及从机,支持100Kbit/s和400Kbit/s的速率,支持7位、10位设备地址,支持DMA数据传输,并具有数据校验功能。
IIC1
IIC2
2 时钟控制逻辑
这里计算分频系数,如何理解?
        连接到SDA引脚。
PEC(帧校验)寄存器以及SDA数据线。
当向外发送数据的时候,数据移位寄存器以“数据寄存器”为数据源,把数据一位一位地通过SDA信号线发送出去;
4 整体控制逻辑
整体控制逻辑负责协调整个I2C外设,控制逻辑的工作模式根据我们配置的“控制寄存器(CR1/CR2)”的参数而改变。其中,CR1寄存器控制各种起始、结束的使能,CR2寄存器管理中断。
还有一个比较重要的地方:
配置的是CR2寄存器的FREQ[5:0]位:
在外设工作时,控制逻辑会根据外设的工作状态修改“状态寄存器(SR1和SR2)”,只要读取这些寄存器相关的寄存器位,就可以了解I2C的工作状态,这个非常重要,我们编程时要参考这些标志位。接下来,详细的看一下每个标志位的意义。
这些标志位,对应了IIC的时序图种,产生的各种事件标志。

使用特权

评论回复
沙发
OKAKAKO| | 2024-5-25 20:25 | 只看该作者
楼主具体是用的哪些stm32程序架构细节

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

1112

帖子

1

粉丝