




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 本科生毕业设计本科生毕业设计 基于 52 单片机的车用超声波测距系统设计与实 现 based on 52 single-chip ultrasonic distance measurement system for car reversing 学生姓名 所在专业电气工程及其自动化 所在班级 申请学位工学学士 指导教师职称副教授 副指导教师职称 答辩时间2012 年 12 月 22 日 目目 录录 设计总说明 .i introduction.ii 1设计的研究背景及意义.1 1.1国内应用于汽车测距地方法对比.1 2整体方案设计及器件的选择.1 2.1超声波测距的原理.1 2.2hc-sr04
2、 超声波测距模块的原理及参数.2 2.3数据处理的核心:at89s52 芯片.3 2.4ds18b20 芯片介绍.5 2.5语音报警模块板载 isd1820 芯片.6 3超声波电路测距系统的硬件设计.7 3.1整体电路设计.7 3.2超声波模块电路.7 3.3超声波显示电路设计.9 3.4超声波温度补偿的电路设计.10 3.5报警电路设计语音报警模块板载 isd1820 芯片.10 4超声波测距的软件系统设计.11 4.1软件设计分析.11 4.2软件设计思路.11 4.2.1主程序.11 4.2.2温度补偿流程图.13 5调试及误差分析.13 5.1 软件调试.13 5.1.1 超声波发射启
3、动:.14 5.1.2 超声波模块工作.14 5.1.3 测距计算.15 5.1.4 距离溢出处理及报警.15 5.2 测试分析.16 5.3 误差分析.17 鸣 谢.18 参考文献.19 设计总说明 随着汽车产业的快速发展和人们生活水平的不断提高,我国的汽车数量正逐年增 加。同时汽车驾驶人员中非职业汽车驾驶人员的比例也逐年增加。在公路、街道、停 车场、车库等拥挤、狭窄的地方倒车时,驾驶员既要前瞻,又要后顾,稍微不小心就 会发生事故。据相关调查统计,15的汽车碰撞事故是因倒车时汽车的后视能力不良 造成的。因此,增加汽车的后视能力,研制汽车后部探测障碍物的倒车报警装置便成为 近些年来的研究热点。
4、安全避免障碍物的前提是快速、准确地测量障碍物与汽车之间 的距离。国内外的学者开始逐步重视倒车报警器在实际方面的应用,在低成本的基础 上力求高精度,这对于降低生产成本、促进技术发展和普及倒车雷达具有很重要的意 义1。 本设计采用 at89s52 芯片为核心,三个 hc-sr04 超声波测距模块为采样对象, lcd1602 为显示模块。三个超声波模块分别位于汽车的后方的左中右,实时把汽车后部 距离障碍物的距离显示给驾驶员,当某个距离少于 10cm 时,isd1820 语音报警模块播 报录音对驾驶员提出预警。 经试验证明,这套系统软硬件设计合理,抗干扰能力强,实时性能好,可以有效 地解决汽车倒车碰撞
5、,能让汽车停靠的更加整齐,驾驶员更加轻松、安全地倒车。 关键词:(52 单片机;汽车倒车;超声波模块) introduction with the rapid development of industry and the improvement in peoples living standards,more and more people have their cars in our country. the proportion of non- occupational car drivers also increased year by year. reversing in the c
6、rowded, narrow roads, streets, parking lots, garages and other places make the drive pay too much attention and it is easily cause traffic accidents. according to surveys, 5% traffic accidents are due to the drivers can not see what is behind the car. so improving the sight behind the car is very im
7、portant. if the drivers know the distance between the barrier and the car, they can avoid obstructions while car reversing. the domestic and foreign scholars start to take the back- draft alarm apparatus used in the cars. my design is using at89s52 chip at the core, three hc-sr04 ultrasonic ranging
8、module as a sample object, cd1602 as the demonstration module. three ultrasonic modules which are located in the left rear of the car to the right. tell the distance to the drivers at anytime. when one of the distances is less than 10cm, isd1820 voice alarm module broadcasts recorded on drivers earl
9、y warning. the test proved that this system is reasonable and it has strong anti-interference ability, it is a effective solution to the auto reversing collision. drivers can be more easily and safely reverse while having this system. keywords: 52 single-chip;car reversing; ultrasonic modules 基于 52
10、单片机的车用超声波测距系统设计与实现 电气工程及其自动化, 指导教师: 毕业设计说明书 1设计的研究背景及意义 超声波是指频率高于 20khz 的声波,属于机械波的范畴,遵循一般机械波在弹性 介质中的传播规律,如在介质中的分界面处发生的反射和折射现象,在进入介质后被 介质吸收而发生的衰减等,正是因为有这些性质,使得超声波可以用于距离的测量, 随着经济的发展,科技水平的不断提高,电子测量技术应用越来越广泛,超声波测量 精度高,成本低,性能稳定则备受青睐,所以超声波测距技术被广泛应用于人们的生 活和工作中1。 超声波测距是一种非接触检测技术,不受光线、被测对象颜色的影响,比其他仪 器更加卫生,具有
11、不污染、高可靠、寿命长等特点,被广泛应用于纸业、矿业等行业 中,可在不同环境中进行距离测量的准确度的在线标定,可直接用于水、酒精、等液 位控制,能达到工业实用的指标要求。因为超声波测距具有以上的这些特点,使得其 在汽车防碰撞方面有广泛的应用1。 1.1国内应用于汽车测距地方法对比 目前,运用于汽车的测距的主要有以下四种方式:超声波测距、毫米波雷达测距、 摄像系统测距、激光测距。雷达测距能够探测多目标,精度高,受天气影响较少,已 达到实用水平。作为车载雷达,却存在着电磁波的干扰问题,必须防止因雷达间以及 其他通讯设施的电磁波干扰而发生的误动作。目前,车载雷达测距主要作为防撞雷达, 防止在高速公路
12、上发生的追尾碰撞。 摄像系统测距模仿人体视觉原理,测量精度高。 但目前价格较高,同时由于受软件和硬件的制约,成像速度较慢。 激光测距仪虽然 具有测量时间短,量程大、精度高等优点,但同样被高昂的价格制约着他的发展。 超 声波测距原理简单,制作方便,成本较低,虽然受环境因素不能用于远距离和高精度 测量,但由于其理想的测量距离为 4-5 米,用于汽车的倒车防碰撞刚好合适1。 2整体方案设计及器件的选择 2.1超声波测距的原理 谐振频率高于 20khz 的声波称为超声波。超声波为直线传播方式,频率越高,反 射能力越强,而绕射能力越弱。利用超声波这种特性,常常利用检测其发射时间进行 测量。其工作原理是:
13、超声波模块向介质发射超声波,声波遇到目标后必然有反射回 波作用在模块上。若已知介质中胜诉为 c,回波到达时刻与发射波的时间差为 t,就可 以算出发射点与反射点的距离为 s: s=c*t/2. 2 式中的 c 为超声波在空气中的传播速度 340m/s,其与温度有关。如果环境温度变化 显著,必须考虑进行温度补偿。空气中声速与温度的关系可以表示为: c=331.4+0.607t 2 2.2hc-sr04 超声波测距模块的原理及参数 图 2-1 hr-sr04 超声波集成模块正面外观图 图 2-2 hr-sr04 超声波集成模块背面外观图 hc-sr04 超声波测距模块可提供 2cm-400cm 的非
14、接触式距离感应测距功能,模块 包括超声波发射器、接收器与控制电路。 基本工作原理: (1) 、采用 io 口 trig 触发测距,至少给出 10us 的高电平信号; (2) 、模块自动发送 8 个 40khz 方波,自动检测是都有信号返回; (3) 、有信号返回,通过 io 口 echo 输出一个高电平,高电平的持续时间就是超 声波从发射到返回的时间。测试距离=(高电平时间*声速(340m/s) )/2; hc-sr04 超声波电气参数 2.3数据处理的核心:at89s52 芯片 图 2-3 at89s52 单片机引脚图及实物图 at89s52 是一种低功耗、高性能 cmos 8 位微控制器,
15、具有 8k 在系统可编程 flash 存储器。使用 atmel 公司高密度非易失性存储器技术制造,与工业 80c51 产品指令和 引脚完全兼容。片上 flash 允许程序存储器在系统可编程,亦适于常规编程器。在单 芯片上,拥有灵巧的 8 位 cpu 和在系统可编程 flash,使得 at89s52 在众多嵌入式控 制应用系统中得到广泛应用3。 p p0 0 口口:p0 口是一个 8 位漏极开路的双向 i/o 口。作为输出口,每位能驱动 8 个 ttl 逻 辑电平。对 p0 端口写“1”时,引脚用作高阻抗输入。 当访问外部 程序和数据存储器时, p0 口也被作为低 8 位地址/数据复用。在这种模
16、式下, p0 不具有内部上拉电阻。 在 flash 编程时,p0 口也用来接收指令字节;在程序校验 时,输出指令字节。程序校验 时,需要外部上拉电阻。 p p1 1 口口:p1 口是一个具有内部上拉电阻的 8 位双向 i/o 口,p1 输出缓冲器 能驱动 4 个 ttl 逻辑电平。对 p1 端口写“1”时,内部上拉电阻把端口拉高, 此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的 原因,将输出电流( iil)。 p2 口:口:p2 口是一个具有内部上拉电阻的 8 位双向 i/o 口,p2 输出缓冲器能驱动 plcc 封装 4 个 ttl 逻辑电平。对 p2 端口写“1”
17、时,内部上拉电阻把端口拉高,此时可以作为输入 口 使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(iil) 。 在 访问外部程序存储器或用 16 位地址读取外部数据存储器(例如执行movx dptr) 时, p2 口送出高八位地址。在这种应用中, p2 口使用很强的内部上拉发送 1。在使用 8 位地址 (如 movx ri)访问外部数据存储器时, p2 口输出 p2 锁存器的内容。 在 flash 编程和校 验时,p2 口也接收高 8 位地址字节和一些控制信号。 p3p3 口:口:p3 口是一个具有内部上拉电阻的 8 位双向 i/o 口,p3 输出缓冲器能驱动 4 个 t
18、tl 逻辑电平。对 p3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为 输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流 (iil)。 p3 口亦作为 at89s52 特殊功能(第二功能)使用,如下表所示。 在 flash 编程和校验时,p3 口也接收一些控制信号4。 第二功能: p3.0 rxd(串行输入口) p3.1 txd(串行输出口) p3.2 into(外中断 0) p3.3 int1(外中断 1) p3.4 t0(定时/计数器 0) p3.5 t1(定时计数器 1) p3.6 wr(外部数据存储器写选通)p3.7 rd(外部数据存储器读选通) a
19、 al le e/ /p pr ro og g:当访问外部程序存储器或数据存储器时, ale(地址锁存允许)输 出脉冲用于锁存地址的低 8 位字节。一般情况下, ale 仍以时钟振荡频率的 1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当 访问外部数据存储器时将跳过一个ale 脉冲。对 flash 存储器编程期间,该引脚 还用于输入编程脉冲( prog)。如有必要,可通过对特殊功能寄存器( sfr)区中 的 8eh 单元的 d0 位置位,可禁止 ale 操作。该位置位后,只有一条 movx 和 movc 指令才能将 ale 激活。此外,该引脚会被微弱拉高,单片机
20、执行外部程序时,应设 置 ale 禁止位无效 5。 p ps se en n:程序储存允许( psen)输出是外部程序存储器的读选通信号,当 at89s52 由外部程序存储器取指令(或数据)时,每个机器周期两次psen 有效, 即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次psen 信号。 e ea a/ /v vp pp p:外部访问允许,欲使 cpu 仅访问外部程序存储器(地址为 0000h- ffffh),ea 端必须保持低电平(接地)。需注意的是:如果加密位lb1 被编程, 复位时内部会锁存 ea 端状态。如 ea 端为高电平(接 vcc 端),cpu 则执行内部 程序存储
21、器的指令。 flash 存储器编程时,该引脚加上 +12v 的编程允许电源 vpp,当然这必须是该器件是使用 12v 编程电压 vpp。 x xt ta al l1 1:振荡器反相放大器和内部时钟发生电路的输入端。 x xt ta al l2 2:振荡器反相放大器的输出端 6。 2.4ds18b20 芯片介绍 由于考虑到汽车倒车环境的复杂性,对声速进行温度补偿将大大提高数据的准确性。 ds18b20 数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺 纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有ltm8877,ltm8874 等 等。主要根据应用场合的不同而改变其外观。封装后的
22、ds18b20 可用于电缆沟测 温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库 测温等各种非极限温度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用 于各种狭小空间设备数字测温和控制领域 11。 图 2-4 ds18b20 的引脚图及实物图 特点:独特的一线接口,只需要一条口线通信 多点能力,简化了分布式温度传 感应用 无需外部元件 可用数据总线供电,电压范围为 3.0 v 至 5.5 v 无需备用 电源 测量温度范围为 -55 c 至+125 。华氏相当于是 -67 f 到 257 华氏 度 -10 c 至+85 c 范围内精度为 0.5 c 温度传感器可编程的
23、分辨率为 912 位 温度转换为 12 位数字格式最大值为 750 毫秒 用户可定义的非易失性温度报警设置 应用范围包括恒温控制,工业系统, 消费电子产品 温度计,或任何热敏感系统 描述该 ds18b20 的数字温度计提供 9 至 12 位(可编程设备温度读数。信息 被发送到/从 ds18b20 通过 1 线接口,所以 中央微处理器 与 ds18b20 只有一个一 条口线连接。为读写以及温度转换可以从数据线本身获得能量,不需要外接电源。 因为每一个 ds18b20 的包含一个独特的序号,多个 ds18b20s 可以同时存在于一条 总线。这使得温度传感器放置在许多不同的地方。它的用途很多,包括空
24、调环境控 制,感测建筑物内温设备或机器,并进行过程监测和控制 18。 2.5语音报警模块板载 isd1820 芯片 板载 isd1820 语音模块具有接线简单,容易控制等特点,只需在 playe 引脚上 连上单片机的某个 io 口,当给出一个有效电平时,语音模块即可播放预先录制的声音。 1、板载咪头,可以直接录音 2、可以进行 10 秒左右的语音录放 3、高质量自然的语音还原,可用作喊话器模块 4、带循环播放,点动播放,单遍播放功能 5、芯片主要的引脚已经引出,可以通过单片机控制操作 6、工作电压:35v 图 2-4 板载 isd1820 芯片模块的正面实物图 整体电路的控制核心为单片机 at
25、89s52,三个超声波发射和接收模块 hc-sr04 对汽 车的左、中、右数据进行采集并发送到芯片处理。ds18b20 则对实时温度采集保证声速 误差尽量减少。所测得的数据全部显示在 led1602 上面,当某个数据显示的距离少于 10cm 时,isd1820 语音报警模块播报录音对驾驶员提出预警。 3超声波电路测距系统的硬件设计 3.1整体电路设计 led1602 显示 at89s52 hc-sr04 hc-sr04 hc- sr04 ds18b20 isd1820isd1820 语音报警语音报警 图 3-1 整体电路设计系统框图 三个 hc-sr04 超声波模块发出 40khz 的信号,遇
26、到障碍物后返回并发给单片机一个 有效电平,单片机内部定时器记录期间的时间 t,结合被 ds18b20 修正了的声速计算出 距离并显示在 led1602,一同显示的还有实时的温度。当某个测量距离少于 10cm 时, isd1820 语音报警芯片播报预先录制的声音对驾驶员提出预警。 3.2超声波模块电路 图 3-2 超声波模块发射电路 图 3-3 超声波模块接收电路 图 3-4 超声波时序图 以上时序图表明只要提供一个 10us 以上的脉冲触发信号,该模块内部将发出 8 个 40khz 周期电平并检测回波。一旦检测到有回波信号则输出回响信号。回响 信号的脉冲宽度与所测距离成正比。由此通过发射信号到
27、回收的回响信号时间间 隔可以计算得到距离。 3.3超声波显示电路设计 图 3-5 lcd1602 模块正面图 图 3-6 lcd1602 模块的电路引脚接线 由于本设计连接三个超声波模块,一个温度检测芯片,要显示的内容较多,综合 考虑采用 led1602 显示。1602 液晶也叫 1602 字符型液晶它是一种专门用来显示字 母、数字、符号等 的点阵型液晶模块它有若干个 5x7 或者 5x11 等点阵字符位组成, 每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔每行之间也有间 隔起到了字符间距和行间距的作用 。1602 液晶模块内部的字符发生存储器 (cgrom)已经存储了 160 个
28、不同的点阵字符图形,这些字符有:阿拉伯数字、英文 字母的大小写、常用的符号、和日文假名等 。 1602 采用标准的 16 脚接口,其中: 第 1 脚:vss 为电源地 第 2 脚:vdd 接 5v 电源正极 第 3 脚:v0 为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源 时对比度最高(对比度过高时会 产生“鬼影”,使用时可以通过一个 10k 的电位 器调整对比度) 。 第 4 脚:rs 为寄存器选择,高电平 1 时选择数据寄存器、低电平 0 时选择指 令寄存器。 第 5 脚:rw 为读写信号线,高电平 (1)时进行读操作,低电平 (0)时进行写操 作。 第 6 脚:e(或 en)端
29、为使能(enable)端。 第 714 脚:d0d7 为 8 位双向数据端。 第 1516 脚:空脚或背灯电源。 15 脚背光正极, 16 脚背光负极。 3.4超声波温度补偿的电路设计 ds18b20 是美国 dallas 半导体公司推出的一种改进型智能温度传感器。与传统的 热敏电阻相比,它能够直接读出被测温度并且可以根据实际要求通过简单的编程实现 9-12 位数字式读数方式。可以在 93.75ms 和 750ms 内完成 9 位和 12 位的数字量,并且 从 ds18b20 读出的信息或写入 ds18b20 的信息仅需要一根接线的读写,温度变换功率 来源于数据总线,总线本线也可以向所挂接的
30、ds18b20 供电,无需额外电源。因而使 用 ds18b20 可以使系统结构更加简单,可靠性更高。由于声速受气温的影响比较大, 所以通过 io 口控制该芯片来对超声波测距中的声速进行校正,尽量减少测距中的误差。 图 3-7 ds18b20 的引脚接线 3.5报警电路设计语音报警模块板载 isd1820 芯片 图 3-8 isd1820 语音报警模块的引脚接线 当测量的距离少于系统设定的值(本系统预设值为 10cm) ,给 beep 引脚一个高 低电平(专门用于出发 isd1820) ,语音芯片收到信号,开始播报预先录制的音乐。 语音报警模块板载 isd1820 芯片内部电路 图 3-9 is
31、d1820 语音报警模块的内部结构 4超声波测距的软件系统设计 4.1软件设计分析 完成了系统的硬件设计之后,接下来就是系统的软件设计,此设计所需要完成的 主要是针对系统功能的实现及数据的处理和应用。由以上所述系统硬件设计和各个电 路功能,系统软件需要实现以下功能: 1. 信号控制。在系统硬件中,已经完成了 hc-sr04 与单片机的连接。在系统软件设计 中只需要完成循环控制触发或接收各个超声波模块的信号。 2. 数据的存储。测量系统中需要得到发射信号和接收回波的时间差,需要读出计数 器的值,然后存储在 ram 中,在发射下一个信号前,需要对定时器以及存储参数 清零。 3.数据处理以及显示。r
32、am 中的计数值通过程序得到真实值*cm,再通过 lcd 显 示出来,必要时启动语音芯片。 4.2 软件设计思路 4.2.1主程序 主程序的流程图如下图所示。主程序首先对系统各个连接的硬件进行初始化,包 括设置 t0 的工作方式,开中断,1602 的初始化等。然后控制给超声波模块触发管脚一 个 trig 一个持续 10us 的有效信号,超声波模块开始发射 8 个 40hkz 的周期电平信号, 一旦检测到有回波信号则输出回响信号。回响信号的脉冲宽度与所测距离成正比。回 响信号刚变高电平时,开启定时器,等到电平拉低,关闭定时器并记录时间 t。程序进 入计算子程序,中间首先执行记速程序,利用 ds1
33、8b20 修正当时速度。通过一系列判 断(超过 4m 发生溢出,低于设定的 10cm,启动语音报警)显示在 lcd1602 上面。 开始 系统初始化 1602 初始显示 超声波发射子程序 启动温度修正程序 判断距离 循环计算三个模块的 距离 显示-显示距离 显示距离 启动语音报警 结束 超出 4m 少于 10cm 图 4-1 系统程序流程图 4.2.2温度补偿流程图 图 4-2 温度补偿流程图 考虑到温度对声速的影响,程序在一开始就进行温度采集,在关闭定时器后,修正声 速后再进行数据处理。 5调试及误差分析 5.1软件调试 由于本设计采用的是模块连接,连接前首先保证 gnd 都已连接,有万用表
34、可以测试 一下它们是否已经有效连接。连接前,可以先测试各个模块是否能够工作,其功能能 否达到要求。硬件测试好后,便可以将程序便已下载到单片机中试运行。根据实际情 况可以修改超声波发生子程序每次发送的脉冲宽度和两次测量的时间间隔,以适应不 同距离的测量需要。根据所设计的电路参数和程序,测距仪能测量的范围为 0.04- 4m,测距仪最大的误差不应超过 1cm。系统调试完后应对测量误差和重复一致性进行多 次实验分析,不断优化系统使其达到实际使用效果要求。本设计使用 keil3 编译。 图 5-1 keil3 的程序编译界面 设计采用调用多个头文件的方法,这样层次和思路比较清晰,其中的包括 led16
35、02.h 是以前就编译后的,这让调用起来比较节省时间,修改也很方便。 5.1.1超声波发射启动: void startmodule1() /启动模块1 unsigned char nop ; tx1=1; /启动一次模块 for(nop=0;nop=400)|flag=1) /超出测量范围显示“-” flag=0; displayonechar(2, 1, ascii11); displayonechar(3, 1, ascii10);/显示点 displayonechar(4, 1, ascii11); displayonechar(5, 1, ascii11); displayonecha
36、r(6, 1, ascii12);/显示 m else disbuff0=s%1000/100;/定义距离数组 disbuff1=s%1000%100/10; disbuff2=s%1000%10 %10; displayonechar(2, 1, asciidisbuff0); displayonechar(3, 1, ascii10);/显示点 displayonechar(4, 1, asciidisbuff1); displayonechar(5, 1, asciidisbuff2); displayonechar(6, 1, ascii12);/显示 m s1=disbuff0*10
37、+disbuff1+0.1* disbuff2; if(s110) speak1(); 5.2 测试分析 基于上面设计的硬件电路和软件,连接好电路后,装在 hex 文件,对系统进行测试。 由于本设计针对的是车用倒车装置,所以测量距离集中于 4-40cm。实际测试距离如表 所示 左超声波模块: 实际距离46810121416182022 测量距离46810111416182022 误差0000000000 实际距离24262830405060708090 测量距离24262830405159697888 误差0000001122 左超声波模块: 实际距离46810121416182022 测量距
38、离47810121416182022 误差0000000000 实际距离24262830405060708090 测量距离24262830405059697888 误差0000001122 左超声波模块: 实际距离46810121416182022 测量距离46910121416182022 误差0000000000 实际距离24262830405060708090 测量距离24262830405059697888 误差0000001122 图 5-2 车用超声波实物演示图 由于超声波模块没有把他们固定在电路板上,所以在放置测距上面由于角度上的问题, 造成同一型号的模块测出的距离有所不同,但就
39、总体上而言,对倒车造成的影响可以 忽略。 5.3 误差分析 经过调试分析,发现非常适用 4-40cm 的测量距离。距离长于 60cm 时,误差开始 变大。经过分析,超声波测距在实际应用中也有局限性,一是超声波在空气中衰减极 大,测量距离的不同,造成回波信号的起伏,使回波到达时间的测量产生了较大的误 差;二是环境因素,诸如风速等。以上的因素都限制了超声波测距在一些对测距精度 要求较高、适合长距离测距的场合的应用。本系统的适合倒车的范围内误差基本可以 忽略,所以综合各种因素,非常适合装载在汽车上使用。 鸣 谢 首先,我要感谢我的导师在毕业设计中对我给予的悉心指导和严格的要求,同时 也感谢本校的一些
40、老师在毕业设计期间给予我的帮助。在我毕业论文写作期间,各位 老师给我提供的各种专业知识上的指导和日常生活上的关怀,没有您们这样的帮助, 我的设计不会这么顺利的完成,借此机会,向您们表示由衷的感激。同时还要谢谢宿 舍各位舍友在试验期间给我提供的帮助。在毕业设计的短短 3 个月里,你们给我提供 的宝贵意见,给了我不少工作上的支持,在此也真诚地感谢你们。最后我要深深地感 谢我的家人,真是他们含辛茹苦地把我养育成人,在生活和学习上给予我无尽的爱、 理解和支持,这才使我时刻充满信心和勇气,克服成长路上的种种困难,顺利完成学 业。还有许许多多给予我学业上的鼓励和帮助的朋友,在此无法一一列举,在此也一 并便
41、是感谢。 参考文献 1 胡萍.超声波测距仪的研制.计算机与现代化,2003.10 2 时德刚,刘哗.超声波测距的研究.计算机测量与控制,2002.10 3 华兵.mcs-51 单片机原理应用.武汉:武汉华中科技大学出版社,2002 .5 4 李华.mcu-51 系列单片机实用接口技术.北京航空航天大学出版社 1993.6 5 陈光东.单片机微型计算机原理与接口技术.华中理工大学出版社,1999.4 6 徐淑华,姚万生.单片机微型机原理及应用.哈尔滨工业大学出版社,1999. 6. 7 苏长赞.红外线与超声波遥控.北京:人民邮电出版社,1993.7 8 张谦琳.超声波检测原理和方法.北京:中国科
42、技大学出版社,1993.10 9 樊昌元,丁义元. 高精度测距雷达研究.电子测量与仪器学报,2000.10 10 苏伟,巩壁建.超声波测距误差分析.传感器技术,2004. 11 永学等.1-wire 总线数字温度传感器 ds18b20 及应用.电子产品世界, 2003.12 12 胜全.d18b20 数字温度计在微机温度采集系统中的序编制.1998. 3 13 恒清,张靖.加强单片机系统抗干扰能力的方法.通化师范学院学报,2004 .10 14 晗晓,袁慧梅.单片机系统的印制板设计与抗干扰技术.电子工艺技术,2004 .6 15 占操,梁厚琴,曹燕.单片机系统中的软件抗干扰技术.电子技术,20
43、03.3 16 华兵.mcs-51 单片机原理应用.武汉:武汉华中科技大学出版社,2002 .5 17 继兴,刘霞.单片机系统软件抗干扰措施分析.电子测量技术出版社,2003 18 田华等.可编程单总线数字式温度传感器 ds18b2 的原理与应用.2004.7 19 guiyun tian .foumdation and application pf microcontroller. 高等教育出版社 2003.4 20 vizimuller, p at89c51 data sheep philips semiconductors 1999.dec 附 录 程序: *=*/ #include /
44、主体程序 #include #include #include #include #include void displayonechar(unsigned char x, unsigned char y, unsigned char ddata); void displaylistchar(unsigned char x, unsigned char y, unsigned char code *ddata); void decode(unsigned char scancode); /*/ void zd0() interrupt 1 /t0 中断用来计数器溢出,超过测距范围 flag=1
45、; /中断溢出标志 /*/ void main(void) unsigned char delay; int ds18b20_temp; delay400ms(); /启动等待,等 lcm 讲入工作状态 lcminit(); /lcm 初始化 delay5ms(); /延时片刻(可不要) designer_display_initial() ; for (delay=0; delay0 x19) /若到达字串尾则退出 if (x 480us dq=1; delay(14);/delay25us while(dq);/等待 1820 的回应信号 / led1=0;/受到回应 led1 发光 de
46、lay(10); dq=1; /*1820 读时序*/ unsigned char read(void) unsigned char i; unsigned char dt=0; for(i=0;i1; _nop_(); _nop_(); _nop_(); _nop_(); if(dq) dt=dt|0 x80; delay(10);/delay49us return dt; /*1820 的写时序*/ void write(unsigned char d) unsigned char i; for(i=0;i15us dq=d delay(10); dq=1; d=d1; /*温度转换*/
47、void rd_te(void) unsigned char low,high; init(); write(0 xcc); write(0 x44); delay(200); init(); write(0 xcc); write(0 xbe); low=read(); high=read(); if(high16) sign=0;/零下温度 else sign=1; if(!sign) low=low+1; if(!low) high=high+1;/向 high 进位 else high=high; /对零下温度取反加一 t=high*160+low*0.625; /*数据处理*/ vo
48、id pro(void) /uchar i; if(sign) fuhao=13; else fuhao=11; bai=t/100%10; shi=t%100/10; ge=t%10; voiddisplay_tempture() rd_te();/读取温度 pro();/数据处理 displayonechar(10,1,asciifuhao); displayonechar(11,1,asciibai); displayonechar(12,1,asciishi); displayonechar(13,1,ascii10); displayonechar(14,1,asciige); we
49、nduzhi=bai*10+shi+0.1*ge ; /* displayonechar(5,0,ascii15); displayonechar(6,0,ascii14); */ /*数据处理子程序 */ unsigned char code cls = ; sbit speak = p36; static unsigned char disnum = 0; /显示用指针 unsigned int time=0; unsigned long s=0,s1=0; bit flag =0; unsigned char disbuff4 = 0,0,0,0,; void speed() float
50、 speed=0; time=th0*256+tl0; th0=0; tl0=0; speed=(331.4+0.607*wenduzhi)/200; s=(time*speed)/100; /算出来是 cm void speak1() speak=0; delay(10); speak=1; /*/ void startmodule0() /启动模块 0 unsigned char nop ; tx=1; /启动一次模块 for(nop=0;nop21;nop+) _nop_(); tx=0; /*/ void startmodule1() /启动模块1 unsigned char nop
51、; tx1=1; /启动一次模块 for(nop=0;nop21;nop+) _nop_(); tx1=0; /*/ void startmodule2() /启动模块 2 unsigned char nop ; tx2=1; /启动一次模块 for(nop=0;nop=700)|flag=1) /超出测量范围显示“-” flag=0; displayonechar(2, 1, ascii11); displayonechar(3, 1, ascii10); /显示点 displayonechar(4, 1, ascii11); displayonechar(5, 1, ascii11); displayonechar(6, 1, ascii12); /显示 m else disbuff0=s%1000/100;/定义距离数组 disbuff1=s%1000%100/10; disbuff2=s%1000%10 %10; displayonechar(2, 1, asciidisbuff0); displayonechar(3, 1, ascii10); /显示点 displayonechar(4, 1, asciidisbuff1); displayonechar(5, 1, asciidisbuff2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中地理野外实践课程设计与应用论文
- 2024年度河南省二级造价工程师之建设工程造价管理基础知识真题练习试卷B卷附答案
- 小学环保教育实验:厨余堆肥蚯蚓粪对小白菜生长实验观察报告论文
- 中国医药行业用黄原胶行业市场前景预测及投资价值评估分析报告
- 节假日装修管理制度
- 苯乙烯储存管理制度
- 茶艺坊安全管理制度
- 调试组1019题库题库(500道)
- 一年级《古对今》课件
- 财务预算练习题及参考答案
- 2023年1月国家开放大学本科《中国法律史》期末纸质考试试题及答案
- 县级妇幼保健院发展的问题与策略
- 10kV电缆线路穿越乐山至成都高速公路涵洞-专项施工方案
- 2024年菏泽市中考英语试题(附答案)
- 小学数学对教学评一体化的实践与思考
- 河南省平顶山市2024-2025学年高一语文下学期期末考试试题1
- NB-T10859-2021水电工程金属结构设备状态在线监测系统技术条件
- 2024年福建省中考生物试卷附答案
- 航空航天概论智慧树知到期末考试答案章节答案2024年西安航空学院
- 公安院校公安专业本专科招生考生档案审核表
- 监理签字审批意见全套
评论
0/150
提交评论