基于单片机的超声波测距及仿真内容摘要:
时钟电路 按键电路 我们通过 来启动测量,程序中通过查询 的电平来检测是否按键被按下,电路原理如下: 图 7 按键电路 当按下按键时 为低电平,单片机通过 查询到低电平开始测量距离,当松开按键, 即为高电平。 在软件中通过软件延时来消除按键的机械抖动。 蜂鸣器电路 . . 工作原理:当 输出高电平时, Q3 导通, Q5 截止,蜂鸣器回路开路,蜂鸣器不响。 当 输出高电平 时, Q3 截止, Q5 导通,蜂鸣器回路闭合,蜂鸣器发出响声。 电路组成如图 8 示: 图 8 蜂鸣器电路 温度采集 DS18B20 电路 物理学告诉我们,超声波在空气中的传播速度为: TC G ,由此可见,超声波的速度和温度密切关系,即温度每增加 1176。 C,超声波速度约增加 ,本次我们考虑温度补偿,以使我们的设计更加精确,温度的采集通常使用 DS18B20 一线式数字温度传感器,电路非常简洁,具体电路图如下图所示。 DS18B20 是美国 DALLS 公司推出的 DS1820 的替代产品,具有 1 12 位的转换精度,未编程时默认的精度是 12 位,测量精度一般为 176。 C,软件处理后可以达到 176。 C,温度输出以 16 位符号扩展的二进制数形式提供,低位在先,以 176。 C/LSB 形式表达。 其中高五位为扩展符号位。 转换周期与转换精度有关, 9 位转换精度时,最大转换时间为 ms, 12 位转换精度时,最大转 换时间为 750ms。 DS18B20 引. . 脚判断方法是:字面朝人,从左到右依次是 1 ( GND)、 2(输入 /输出)、 3( VDD)。 图中的R4 为上拉电阻,阻值选 5K 左右。 图 DS18B20 温度传感器 LCD 显示电路 本设计采用 LCD 液晶显示屏显示。 其具有体积小、功耗低、界面美观大方等优点,这里使用 YB1602 液晶屏, 1602 显示模块用点阵图形显示字符,显示模式分为 2 行 16 个字符。 它具有 16 个引脚,其正面左起为第一脚,如下图所示: 第一脚 GND:接地。 第二脚 VCC: +5V 电源。 第三脚 VO:对比度调整端。 使用时通过接一个 10K 的电阻来调节。 第四脚 RS:寄存器选择信号线。 第五脚 RW:读写信号线。 第六脚 E:使能端,当 E 由高电平跳变为低电 平时执行命令。 第 7~14 脚: 8 位数据线 D0~D7。 第十五脚 BLA:背光电源正极输入端。 第十六脚 BLK:背光电源负极输入端。 . . 图 LCD 显示电路 1602液晶模块内部的字符发生存储器( CGROM)已经存储了 160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母 “A”的代码是 01000001B( 41H),显示时模块把地址 41H 中的点阵字符图形显示出来,我们就能看到字母 “A”。 因为 1602识别 的是 ASCII 码,试验可以用 ASCII 码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如 39。 A’。 1602通过 D0~D7的 8位数据端传输数据和指令。 显示模式设置: (初始化 ) 0011 0000 [0x38]设置 162显示, 57点阵, 8位数据接口; 显示开关及光标设置: (初始化 ) 0000 1DCB D 显示 (1有效 )、 C 光标显示 (1有效 )、 B 光标闪烁 (1有效 ) 0000 01NS N=1(读或写一个字符后地址指针加 1 amp。 光标加 1), . . N=0(读或写一个字符后地址指针减 1 amp。 光标减 1), S=1 且 N=1 (当写一个字符后,整屏显示左移 ) s=0 当写一个字符后,整屏显示不移动 数据指针设置: 数据首地址为 80H,所以数据地址为 80H+地址码 (027H, 4067H) 其他设置: 01H(显示清屏,数据指针 =0,所有显示 =0); 02H(显示回车,数据指 针 =0)。 . . 第四章 系统软件设计 系统程序的结构 (1)DS18B20温度传感器接口模块,分为初始化程序、写入命令以及读取子程序等部分; (2)基于 YB1602的显示模块,分为初始化子程序、写入子程序以及显 示子程序; (3)温度补偿与距离计算模块、分为超声波发送控制程序、接收处理程序、温度补偿子程序等; (4)本次设计使用 C 语言编写程序, C 语言相比汇编有许多的优势;编译器使用 Keil Version2进行程序编译, Keil 功能强大使用方便。 (5)主程序,分为系统初始化、按键处理以及各个子程序的调度管理等部分。 如图 所示描述了各个模块的关系: . . 图 系统软件方框图 系统主程序 本设计主程序的思想如下: (1)温度为两位显 示,距离为四位显示单位为 mm; (2)温度每隔 900ms 采样一次, DS18B20在 12位精度下转换周期为 750ms ,故 900ms满足该速度要求;超声波每隔 60ms 发送一次。 (3)按键 S 为测量启动键; (4)系统采用 AT89S52的内时钟: 12MHz; (5)没有使用看门狗功能; (6)超声波发送一定时间后才开始启动检测,避免直达信号造成误判。 所以系统最小测量约为 112mm; . . 系统主程序见附录 第五章基于 Proteus 的软件仿 真 Proteus 是一款功能强大的软件,其 ISIS 用来做仿真十分方便,尤其是单片机系统的仿真,我们。基于单片机的超声波测距及仿真
相关推荐
构成。 扬声器中的线圈通电时,在线圈附近会产生磁场,磁场与 扬声器前端的磁铁相互作用,使得线圈以一定的频率振动从而发出声音来。 语音报警的过程需要扬声器不断的发出声音来,因此需要对播报内容进行一个事先的存储,即将其存放在 SD 卡中。 要实现音频文件的输出,若单独由单片机来解码 MP3 文件是很困难的,因为从处理速度和资源各个方面都很难满足要求,因此需要采用专门的 MP3/ADPCM 解码芯片
通信技术的应用,预计该技术将向数字网络是的灌区液位定位系统发展 [15]。 图 为主程序流程图。 开机后先显示亮灯并且蜂鸣器发声,表示开始工作。 T0用于记录发射至接收的时间间隔 t(单位为 ms)。 初始化后,程序控制发射 40KHZ 的超声波信号,发射开始立即启动定时器开始计时。 发射完成。 CPU 接收回波信号后,立即产生中断 同时立即停止计数。 定时器专门用于记录 CPU
内置通用 8 位中 央处理器和 Flash 存储单元, AT89C52 单片机在电子行业中有着广泛的应用 [5] [6]。 主要功能特性: ( 1) 兼容 MCS51 指令系统 ( 2) 8k 可反复擦写 (大于 1000 次) Flash ROM ( 3) 32 个双向 I/O 口 ( 4) 3 个 16 位可编程定时 /计数器中断 ( 5) 3 个 16 位可编程定时 /计数器中断 ( 6)
/O 口线,看门狗定时器, 2个数据指针,三个 16位定时器 /计数器,一个 6向量 2级中断结构,全双工串行口,片内晶振及时钟电路。 另外, AT89S52 可降至 0Hz静态逻辑操作,支持 2种软件可选择节电模式。 空闲模式下, CPU停止工作,允许 RAM、定时器 /计数器、串口、中断继续工作。 掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止
构如图 31 所示。 它主要由单片机、超声波发射及接收电路、超声波传感器、键盘、 LED 显示电路及电源电路组成。 系统主要功能包括: 1) 超声波的发射、接收, 并根据计时时间计算测量距离; 2) LED 显示器显示距离; 3) 键盘接收用户命令并处理; 4) 当系统运行不正常时,用电平式开关与上电复位电路复位。 图 31 超声波测距仪系统结构框图 齐鲁工业大学 2020
式选项 2 CE 复位 /停止键或启动 /停止键 (高电平有效 ) /BUSY 忙信号输出(工作时出 0,平时为 1) 2 MSEL1 模式设置端 1 BE 键声选择(接 1 为有键声, 0 则无) 2 MSEL2 模式设置端 1VSSD 数字电路电源地 2EXTCLK 外接振荡频率端(用内部时钟时接地) 1VSSA 模拟电路电源地 2 /RE 录放 选择端( 0为录音、 1为放音) 1 SP+