打印
[STM32H7]

【STM32H750B-DK评测】2. SHT30数据读取及串口打印调试信息

[复制链接]
601|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
STM32H750B-DK套件,附带有一个SHT30温度传感器,是IIC接口的。
在套件提供的扩展板上,也有I2C接口:

注意插上扩展板的时候,方块引脚要对着方块引脚,不要插反了。

在4针传感器接口上,也有一个I2C接口,但是我没有对应的接头,所以用CN10也就是红框部分的。

查看一下官方的电路原理图,可以了解具体的设置:

从上图中可以看到,扩展板的SDA、SC分别连接到了主控板的PD13、PD12。


然后,我们在STM32CubeMX中,新建一个工程,并开启I2C通讯。

发现只有I2C4能够很好的使用,其他可能有冲突。


通讯速度,设置为100K即可。默认单位为K

如果默认的引脚不对,需要进行设置:

确保PD12为I2C4_SCL,PD13为I2C4_SDA,然后生成代码即可。


打开代码文件的main.c后,可以查看到,I2C4已经做好了初始化了:


下一步,引入SHT30的文件,就可以调用了。

sht30.h:https://gitee.com/honestqiao/stm32h750b-dk/blob/master/Core/Inc/sht30.h
sht30.c:https://gitee.com/honestqiao/stm32h750b-dk/blob/master/Core/Src/sht30.c
这部分的代码,参考了:https://blog.51cto.com/u_13640625/3032434 ,经过修改,适应当前最新的版本。


然后,在main.c中引入头文件:


并初始化所需要的变量:


然后就可以初始化了:


最后,在while部分读取显示即可:

注意读取不能太快,加一个1000毫秒的延时就可以了。


然后重新进入调试模式,用串口连接STLink的虚拟串口,就可以看到输出的信息了:


以上的具体代码,可以查看:https://gitee.com/honestqiao/stm32h750b-dk/tree/master/Core

在上述代码中,可以看到,我使用了ch_printf来输出信息到串口。
开发板默认情况下,是不能输出信息到串口的,需要进行一番设置。

具体步骤如下:
1. 升级STLink固件:需要先退出调试模式,再打开STM32CumeProgrammer,按照如下设置进行升级:

一定要打开VCP,这样就可以提供虚拟串口

2. 在STM32CubeMX中进行配置:

将DEBUG配置为Serial Wire

3. Makfile配置文件中,添加浮点数的处理:


4. 代码中添加ch_printf定义:


特别注意:因为可能需要多次使用STM32CubeMX来修改配置,所以写代码有一点务必要注意,自己的代码应该放在:

USER CODE BEGIN 和 USER CODE END之前,否则修改后,原有代码会被自动清理,前功尽弃。

经过以上的处理,就可以将信息输出到串口,并在电脑上通过STLink自带的串口来接收数据了,非常的方便。

使用特权

评论回复
沙发
极客晨星| | 2022-11-22 18:00 | 只看该作者
请问一下,SHT30的精度是不是很好很高啊?

使用特权

评论回复
板凳
漫过岁月| | 2022-11-22 18:32 | 只看该作者
很不错啊,这开发板还带传感器

使用特权

评论回复
地板
风吻过你的不羁| | 2022-11-22 19:04 | 只看该作者
SHT30就是体积太小了,而且价格太贵,不然早就火爆了

使用特权

评论回复
5
討厭和人归類| | 2022-11-22 19:36 | 只看该作者
SHT30的驱动还行,也是用I2C,时序不复杂

使用特权

评论回复
6
偷吻月亮| | 2022-11-22 20:08 | 只看该作者
我知道的是这传感器网上资料多多的啊

使用特权

评论回复
7
情和欲| | 2022-11-22 20:40 | 只看该作者
之前驱动过SHT21,感觉很准很稳,估计SHT30也差不多吧

使用特权

评论回复
8
喜爱弄人| | 2022-11-22 21:12 | 只看该作者
H750属实好玩,性价比还超级高

使用特权

评论回复
9
占得人间第一春| | 2022-11-22 21:44 | 只看该作者
这芯片能用linux么?是不是费劲啊?

使用特权

评论回复
10
銀河| | 2022-11-22 22:16 | 只看该作者
这芯片一般做GUI方面应该不错,主频够用

使用特权

评论回复
11
晚晚皆安| | 2022-11-22 22:48 | 只看该作者
话说,H750的硬件I2C是不是就没问题了啊

使用特权

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

本版积分规则

37

主题

91

帖子

2

粉丝