项目场景:
STM32F103单片机和HC_SR04超声波测距模块测量距离。
其中HC_SR04模块采用5V供电。
问题描述:
代码编写完成以后,HC_SR04超声波测距模块传递模块返回来的高电平一直是一个默认值。
如下图所示:
ECHO信号引脚一直为220us左右的高电平。
原因分析:
-
首先采用示波器观察TRIG信号引脚是否有输出:发现TRIG信号仅有一个2V多一点的高电平。
-
使用电压表测量HC_SR04模块的VCC和GND引脚之间的电压差:发现仅有2V左右。
-
使用电压表测量STM32单片机核心板的5V与GND引脚之间的电压差:发现仅有2V左右。
综上,发现是电源电压不足,HC_SR04测距模块无法正常工作。
解决方案:
将CH340转TTL模块的电平选择改为5V。
运行结果正确,如图所示: