单片机课程设计(1) - 图文 下载本文

内容发布更新时间 : 2024/11/6 9:48:33星期一 下面是文章的全部内容请认真阅读。

课程设计报告

设计名称: 超声波测距 班 级: 15 q物联网1班 学 号: 201524690127 姓 名: 王东升 指导教师: 邢玉秀

2017年12月11日--2017年12月15日

基于单片机的超声波测距设计

1设计目的

我所设计的基于ATMEL公司AT89C52单片机的超声波测距,是利用该51单片机和HC-SR04超声波模块来测量距离。

超声波是只频率高于20kHz以上的声波,它属于机械波。遵循一般机械波在弹性介质种的传播规律,如在介质的分界面处发生反射和折射的现象,在进入介质后被介质吸收而发生衰减等。正是因为这些性质,使得超声波可以被用于距离的测量中。超声测距是一种非接触检测技术,不受光线,被测对象的颜色等的影响,抗干扰能力强。利用超声波检测往往比较迅速、方便、计算简单、易于实现实时控制,并且在测量精度方面能达到工业实用的指标要求,因而超声波测距被广泛的应用于生活中的各个方面,甚至于很多机器人能及时避开障碍物也是用的超声波测距。因此研究超声波测距是非常有意义的。基于市面上单片机成本低、精度高、易于控制、操作简单,故本设计采用AT89C52单片机和HC-SR04超声波模块来测量距离。

2 设计方案

本设计采用以AT89C52单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。整个电路采用模块化设计,由主程序、预置子程序、发射子程序、接收子程序、显示子程序等模块组成。各探头的信号经单片机综合分析处理,实现超声波测距仪的各种功能。在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。 基本工作原理:

(1)采用IO口TRIG触发测距,给最少10us的高电平信呈。 (2)模块自动发送8个40khz的方波,自动检测是否有信号返回;

(3)有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声 波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2;

1)硬件设计:

超声波测距按模块可化分为: ·1 单片机主控芯片

·2 超声波发射部分(包括功率驱动电路、超声波发生器)

·3 超声波接收部分(包括超声波接受器、放大电路、锁相环电路) ·4 显示部分 (显示电路 LCD1602)

* 5 超声波是一种声波,属于机械波,其速度和使用环境的温度及空气的湿度、是否有尘埃物质都有较大的响,所以若要测量得更加精确,则必须要相关的传感器来检测使用的环境。此处只列出温度的影响情况。

此处可加温湿度传感器和空气种颗粒物含量传感器,用以来补偿或估测环境引起的误差 LCD1602

2)软件设计 ·1主程序设计:

主程序对整个单片机系统进行初始化后,先将超声波的回波接受标志位置位并且使单片机P2.1端口输出一个低电平用来启动超声波发射电路,,同时将定时器T0启动,然后调用距离计算的子程序,再根据定时器T0记录的时间计算出所需要测量的距离,然后再调用显示子程序,再将测出的距离以十进制的形式送至LCD1206液晶显示屏显示。最后主程序通过对回拨信号的接收,完成后续的工作,假如标志位清 0则说明接受到了回波信号,那么主程序就返回到初始端重新将回拨接收标志置位并且在单片机的P2.0端口上发送低电平到超声波的发射电路,就这样连续不断的来运行,循环不断的工作用来实现测距。 ·2显示程序

初始化-->写命令-->写数据

*将各类函数声明都写到同一个头文件中,方便查看各个函数的参数以及功能。

3 硬件电路

HC-SR04

超声波测距模块说明书 产品特点:

HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm;模块包括超声波发射器、接收器与控制电路。