调试部分分析
1.实验要求
1.1设计任务
超声波测距系统
1.2设计要求
使用STM-32开发板上硬件资源及HC-SR04超声波测距模块,编程实现超声波测距功能,通过数码管实时显示距离。
1.3要求分析
1.使用HC-SR04 超声波测距模块以及stm-32自带数码管、LED等
2.实现实时距离测量功能,通过数码管实时显示当前距离:设计程序实现对距离报警值的设定,并在低于报警值时使用蜂鸣器等进行提示。
1.4总体设计方案
总体设计方案
实时距离: 本超声波测距系统可实现对距离的实时测量,并不断显示在数码管上
保持距离: 用户可通过按键使得当前距离值在数码管保持,也可再次返回对距离的实时测量,此模式下距离小于报警值不会报警,仅为显示模式。
两种模式相互转换,并且可以在距离保持状态时通过按键进入修改报警距离模式,如果实测距离小于下限值,蜂鸣器报警,当距离大于下限值时,报警自动停止。
HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm;模块包括超声波发射器、接收器与控制电路。
基本工作原理:
(1)采用IO口TRIG触发测距,给最少10us的高电平信号。
(2)模块自动发送8个40kHz的方波,自动检测是否有信号返回;
(3)有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。
测试距离=(高电平时间*声速(340M/S))/2
以上时序图表明你只需要提供一个 10uS以上脉冲触发信号,该模块内部将
发出8个 40kHz周期电平并检测回波。一旦检测到有回波信号则输出回响信号。
回响信号的脉冲宽度与所测的距离成正比。 由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。
4.软件控制HC-SR04超声波模块
1:硬件说明
超声波模块测距触发引脚Trig--->PC6
超声波模块测距信号返回引脚Echo--->PC7
2:软件实现
实现方法:20ms触发一次测距,在定时器100us的中断里面计模块Echo返回信号高电平的时间,然后通过高电平时间*声速(340m/S)/2计算出距离,并串口打印显示。
注意:20ms触发一次测距,说明最远只能测3.4m。
5.实验测试
测试结果:
试验达到了预期的效果,实现了两种模式下的距离测量及两种模式的相互切换,并实现距离报警值的设定与显示,当前距离小于报警值时进行报警。误差在5mm以内
2.5总结
2.5.1实验中遇到的问题及解决办法
1数码管显示距离值时无小数点。
给需要显示小数点的数字的显示码“与”小数点显示码0x80再显示即可加上小数点。
2每次按键设置报警值是报警值跳动太快
增加按键扫描函数里的延时即可。
完整的Word格式文档51黑下载地址:
汽车倒车防撞报警设计-调试分析.docx
(379.4 KB, 下载次数: 15)
|