NUCLEO-F446RE试用体验】+超声波测距和串口输出
-
-
great_CC
- LV5工程师
-
| 2017-09-17 14:22:25
- 浏览量 867
- 回复:1
本帖最后由 great_CC 于 2017-9-17 14:25 编辑
对HAL库还在慢慢学习,试用使用HAL实在很费劲,当然HAL肯定是要去学的,以后就要脱离标准库了。不过这次试用还是用标准库做个小测试。这次是使用HC-SR04超声波模块进行测距测试,并使用串口进行输出。
HC-SR04超声波模块可测3cm-400cm的距离,精度说是可达3mm。HC-SR04模块使用5V供电,有Trig触发引脚,有Echo回波接收引脚。串口使用UART1,使用串口助手工具接收距离测量值。
硬件接线很简单:
HC-SR04 : VCC-5V GND-GND Trig-PB5 Echo-PB10
USB转TTL: GND--GND RX-PA9(UART1->TX) TX-PA10(UART1->RX)
新建立工程,使用标准库,添加库文件。
程序流程:1、初始化串口、GPIOB口管脚、TIM2配置。
2、测距离:先PB5高电平输出,持续10us,触发发出信号; 读取PB10管脚状态,若是高电平,则开始计时,对高电平持续时间进行计数;计算距离。
时间*340/2 = 距离(米);这个是每记一次中断的单位距离;TIM2计数了多少,就是多少个单位距离,乘一下就是总距离。
3、串口输出距离数值到串口助手。
从测试结果看,误差还是比较大的,可能也跟测试程序有关。测静态遮挡物还好点,拿一本书在SR04上面慢慢的晃,晃的幅度很小,但差的就比较多。
本帖最后由 great_CC 于 2017-9-17 14:25 编辑
对HAL库还在慢慢学习,试用使用HAL实在很费劲,当然HAL肯定是要去学的,以后就要脱离标准库了。不过这次试用还是用标准库做个小测试。这次是使用HC-SR04超声波模块进行测距测试,并使用串口进行输出。
HC-SR04超声波模块可测3cm-400cm的距离,精度说是可达3mm。HC-SR04模块使用5V供电,有Trig触发引脚,有Echo回波接收引脚。串口使用UART1,使用串口助手工具接收距离测量值。
硬件接线很简单:
HC-SR04 : VCC-5V GND-GND Trig-PB5 Echo-PB10
USB转TTL: GND--GND RX-PA9(UART1->TX) TX-PA10(UART1->RX)
新建立工程,使用标准库,添加库文件。
程序流程:1、初始化串口、GPIOB口管脚、TIM2配置。
2、测距离:先PB5高电平输出,持续10us,触发发出信号; 读取PB10管脚状态,若是高电平,则开始计时,对高电平持续时间进行计数;计算距离。
时间*340/2 = 距离(米);这个是每记一次中断的单位距离;TIM2计数了多少,就是多少个单位距离,乘一下就是总距离。
3、串口输出距离数值到串口助手。
从测试结果看,误差还是比较大的,可能也跟测试程序有关。测静态遮挡物还好点,拿一本书在SR04上面慢慢的晃,晃的幅度很小,但差的就比较多。