![a4ae999414e4293eb622ab4e7be7611d.png](https://i-blog.csdnimg.cn/blog_migrate/df39910a8788cb06d86c5a3aa721ccc5.png)
在本次实验中,我们运行该实验内容为通过IIC总线读取温湿度传感器(SHT30)数值并串口打印显示,实验大致过程描述为如下:
我们由STM32向温湿度传感器SHT30发送相关指令,由STM32通过IIC总线接收温湿度传感器的相关数值,再将该数据经过相关公式的转变计算,形成具体的温度与湿度数值,再经由串口UART1发送至电脑的XCOM串口调试助手或者经由串口UART2发送至蓝牙模块,再由串口传输至PC端串口调试助手XCOM进行温湿度的实时显示。如下为具体相关说明:首先,我们在HARDWARE文件夹下建立uart.c与uart.h作为串口处理函数块的头文件与源文件、在HARDWARE文件下建立sht30.c与sht30.h作为温湿度传感器的数值读取函数块的头文件与源文件。在外围文件中分别新建UART文件夹与HARDWARE文件夹用来存放uart.c与uart.h、sht30.c与sht30.h。存放好以后,我们分别将uart.c与sht30.c引入HARDWARE框架之下,操作如下图所指示:
![36e077f731fe0a8747d07a2e4b592bd1.png](https://i-blog.csdnimg.cn/blog_migrate/5946f906994d6ba90ee147f79452ecb1.png)
然后点击魔术棒,在C/C++选项卡中引入头文件所在路径,使我们的编译器可以识别头文件所在位置。如下图所示:
![87993f64d795b48fdca57c67aae28c47.png](https://i-blog.csdnimg.cn/blog_migrate/e5ba1427c67986449ca7957456bb9101.png)
这些准备工作做好以后,接下来可以分别编写4个头文件与源文件了,首先,编写uart.h串口的头文件,即如果没有定义,则新定义uart.h头文件。在该头文件中,声明我们源文件中所编写好的串口初始化函数。在此我们初始化并设置串口1连接XCOM的相关参数。