最后更新:2021-11-20 17:14
一. 利用STM32F103 完成基于I2C 协议的AHT20温度湿度传感器的数据收集工作,然后通过使用STM32F103 完成I2C 公共汽车通信协议,并在一个串口出口获得的温度湿度值。
1) “软 I2C”和“硬件 I2C”有什么区别?
2) 阅读AHT20的数据文件,AHT20旨在每两秒钟收集温度和湿度数据,然后通过一个序列端口将数据传送到较高级的机器(win10)。
理解 OLED 屏幕显示器和 Han点数组编码概念,并利用 STM32F103 的 SPI 或 IIC 接口来履行下列功能:
Philips发明了I2C通讯协议(Inter-In综合电路),现在该协议广泛用于系统内许多集成电路(IC)之间的通讯,因为它的脚足较少,硬件简单且可扩缩,不需要USART和CAN等外部接收和发送设备。
①物理层
I2C是辅助设备的主要线路。 多个 I2C 通信设备可以连接在一起,为多个通信主机和众多通信操作员服务。 I2C 公共汽车只有两条公共汽车线,一条双向线数据线(SDA)和一条字符串时钟线(SCL )。
②协议层
它主要描述通信的启动和停止信号、数据有效性、反应、仲裁、时钟同步和地址广播。
①硬件I2C
STM32芯片直接使用外部I2C硬件。
硬件I2C的使用
只要定义了必要的内存,外部设置就为标准序列协议产生一个时间序列。在激活 I2C 外部设置后,只需要一个登记册 1 的位置,在此点,外部设置控制相应的 SCL 和 SDA 线自动生成 I2C 启动信号,消除内核直接控制踢相关设置的电高度的需要,只要定义了必要的内存,标准序列协议就产生一个时间序列。在激活 I2C 外部设置后,只需要一个登记册 1 的位置,在此点,外部设置控制相应的 SCL 和 SDA 线自动生成 I2C 初始信号,消除内核直接控制踢电高度的需要。
②软件I2C
直接使用CPU内核来控制全球定位系统组织在I2C协议所要求的低层次和高层次的输出,从而模拟I2C。
软件I2C的使用
在管理I2C启动信号时,有必要控制用作高输出的SCL线的全球定位系统,然后控制用作从高向低水平过渡的SDA线的全球定位系统,最后控制SCL线切换到低水平,从而产生典型的I2C启动信号。
③两者的差别
硬件 I2C 直接利用外部设置来控制基点,从而最大限度地减少CPU负担。 然而,硬件 I2C 有义务使用特定的固定拖曳作为SCLs和SDAs, 而软件则使用任意的GPIO来复制I2C, 后者比较灵活。 硬件 I2C 的使用更为复杂,软件 I2C 的过程更清楚。
1.连接硬件
Stm32f103指南单元i2c分别与SCL、GND、SDA和VCC相对应。
通过在硬件版本中的空白工程中添加程序,可以履行以下功能:
每两秒钟就记录一次温度数据,并通过序列端口传送给顶端机器。
首先主函数如下:
main.c
接下来我们拿下下面的代码文件 和主界面 把它们拼凑在一起
usart.c
然后,通过将创建的Hex文件烧为stm32,并启动序列调试协助,就可以观察实验的结果。
效果图如下:
对芯片的打击导致温度和湿度的改变,表明实验是成功的。
SPI是摩托罗拉公司引入的高速、全时同步通信总线的串行周边界面的缩略语,这是摩托罗拉公司在ADC、LCD和MCU之间通信率高的情况下常用的高速、全时同步通信总线。SPI总线系统可能直接连接到各公司提供的大量标准外围系统。界面通常使用四条线:序列时线(SCK)、主机输入/来自机器输出数据线MISO的主机输入/来自机器输入数据线MOST的输出和低级别有效机器选择线C/S(一些SPI接口芯片包括断线信号线INT或INT,其他SPI接口芯片没有机输入数据线MOSI的主机输出/来自机器输入数据线MOSI的输出)。
SPI提供了四种交流方式,关键区别在于CSK的时钟状态,即公交车是免费的以及数据取样的时间。 此处为方便起见提出了“钟极CPOL”和“钟级CPHA”的概念。
CSCOL是SCK信号线(即NSS线高时SCK状态和SPI通信装置自由)在SPI通信开始之前的平方信号。 CPOL = 0, SCK 自由时是低方信号线, CPOL = 1, 反向信号线是低方信号线。
当时钟阶段 CPHA = 0时,MOSI 或 MISO 数据线上的信号会按照SCK 时钟的“奇缘”取样。当CPHA = 1时,数据线会按照SCK 时钟的“偶边缘”取样。
实验连接
显示姓名学号
字库取模
由于 OLED 显示器使用中文字符, 需要制作中文模型, 才能获得中文的点数阵列代码, 并将其放入 Oledfont.h 文件, 该文件被调用并显示在 OLED 上 。

有关该守则的更多信息,请见博客:
根据SPI通信机制,使用了OLED显示器。
https://blog.csdn.net/qq_45237293/article/details/111712565
本次温度传感器的数据收集是为了后面将采集的温度-湿度值通过串口输出,显示学号姓名也是对根据SPI通信机制,使用了OLED显示器。的一个初级了解,本次实验虽操作简单,但是重点是要了解这些代码,也是对于I2C协议和SPI通信方式进行通信的一个过程理解。
对不起,csdn。 这篇文章是澳大利亚特别报导的一部分。 net/hh277523article/ details/11397514。
根据SPI通信机制,使用了OLED显示器。:
https://blog.csdn.net/qq_45237293/article/details/111712565
本文由 在线网速测试 整理编辑,转载请注明出处。