ImageVerifierCode 换一换
格式:DOC , 页数:13 ,大小:226.50KB ,
资源ID:4400609      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-4400609.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(超声波测距仪.doc)为本站会员(fmgc7290)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

超声波测距仪.doc

1、超声波测距仪专业:测试计量技术及仪器摘要:本系统是设计一个装潢专用的超声波测试距离仪器,它可以对房屋的长度,宽度以及高度进行测量,通过超生波传感器系统发出信号,经过墙壁这个障碍物反射,系统再接收信号,同时系统会自动检测波形并将波形转变为方波出现在显示屏上,从而实现房屋长度,宽度及高度的数字显示。然后通过ATMEGA8USB 下载线进行下载程序,再用 ATMEGA16 最小系统进行调试;用 AVR 编写程序来实现系统的后续计算,从而实现对房屋面积的计算,进而即可计算出装潢成本预算;它的原理与夜间猫头鹰飞行有些相似,即通过发射信号-接收信号实现它自身的功能。关键词:传感器、ATMEGA8USB 下

2、载线、STC89C52 最小系统、C 语言编程Abstract: This system is a special decoration design of ultrasonic testing distance instrument , It can be about house length, width and height measurement, Through the super living wave sensor system to signal, After the wall the obstacles reflection, the system to receiving

3、signals, and the system will automatically detect waveform and will appear in the transformation of square wave wave screen, so as to realize the house length, width and height of the digital display. Then through the ATMEGA8USB download line to download program, reoccupy ATMEGA16 minimum system com

4、missioning; Write a program to achieve with AVR system of subsequent calculation, so as to achieve the calculation of building area, and then calculate the cost budget can decorate; Its principle and the night owl flying some similar, that is, through the signal-received signal realize its function.

5、Keywords: sensors, ATMEGA8USB download line, STC89C52 minimal systems, C language programming 1.引言:本系统在通过多次实验和调试完成后,将会以成品的形式展现出来,实现它自身的功能。在以经济建设为中心的当今社会,房屋建设无疑将成为未来发展的重要环节,所以对测量的需求量和精度要求将会大大增加,本产品将会实现对房屋长度,宽度和高度的自动测量,从而实现对面积的计算,进而即可计算出装潢成本预算,操作简单高效,省时省力。他的出现将会大大减轻装潢公司的工作负荷,提高工作效率,进而引起装潢界的效率风暴;而从长远角度

6、来看,这也再间接加快经济建设的步伐。2.系统组成:本系统包括硬件部分和软件部分。统硬件电路由单片机最小系统、超声波发射电路、超声波接收电路、显示电路构成。系统软件包括主程序、定时器计时子程序、计算子程序、液晶显示子程序等。主程序包括初始化和各个子程序的调用,最后把测量结果用液晶显示屏显示出来。3.硬件电路设计:本系统硬件电路由单片机最小系统、温度补偿电路、超声波发射电路、超声波接收电路、显示电路构成,如下图 1 所示。乘乘乘乘 乘乘乘乘 乘乘乘乘乘乘乘乘 乘乘乘乘 40KHz乘乘STC89C52 乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘本超声波测距仪的具体工作过程如下,在单片机产生复位信号后,由单

7、片机STC89C52 产生一个控制信号,控制外围电路产生 40kHz 的超声波,经整形放大后加到超声波换能器发射出频率为 40kHz 的超声波。同时,计数 STC89C52 内部的定时器,测量超声波信号从发出到接收所花的时间,并把经超声波换能器 R 接收到的超声波信号放大、滤波、整形,并作为接收信号来启动定时器的输入捕捉功能,完成一次超声波测距的时间操作。在液晶显示屏上显示相应的测量值以及当前温度。STC89C52 系列单片机是高速/低功耗的新一代 8051 单片机,最高工作频率可分别达到 25MHz50MHz。STC89C 系列单片机有较宽的工作电压,5V 型号的可工作于 3.4V6.0V,

8、3.3V 型号的可工作于 2.0V4.0V(ISP/IAP 操作时对电压要求会稍严)。正常工作模式下的典型耗电为 4mA7mA,空闲模式为 2mA,掉电模式(可由外部中断唤醒)下则小于 0.1A。此外,STC89C 系列单片机在完全兼容 8052 芯片(在标准 8051 基础上增加了T2 定时器和 128 字节内部 RAM)的基础上,新增了许多实用功能。3.1 超声波发射电路超声波发射电路包括超声波产生电路和超声波发射控制电路两个部分,超声波探头的型号选用 TCRT16-40 40KHz(其中心频率为 40KHz ),通过输出引脚输入至驱动器,经过驱动器驱动后推动探头产生超声波 这种。方法的特

9、点是充分利用软件,灵活性好,但是需要设计一个驱动电流为 100mA 以上的驱动电路 可以产生 的超声波信号,具体电路如下图所示超声波的发射电路图中,与非门 74LS04 组成超声波发射电路,用 74LS04 构成多谐振荡器,通过调节 20k 的电位器,可产生超声波发射的 40kHz 信号,其中 U3A 为驱动器,电路振荡频率 f1/2.2RC,单片机的控制信号由 U2A 输入。为增大超声波的发射频率,本设计利用了单运放 LM386,发射距离可达 4m。3.2 超声波接收电路超声波接收部分采用集成芯片 CX20106A ,这是一款红外线检波接收的专用芯片 接收的回波信号先经过前置放大器和限幅放大

10、器,将信。号调整到合适的幅值;再经过带通滤波器滤波得到有用信号,滤除干扰信号;最后由峰值检波器和整形电路输出到锁相环路,实现准确的计时当 CX20106A 接收到 40KHz 的信号时,会在第 7 脚产生一个低电平。下降脉冲,这个信号可以接到单片机的外部中断引脚作为中断信号输入,超声波接收电路图如下图所示。超声波的接收电路液晶显示字符点阵系列模块是一类专门用于显示字母、数字、符号等的点阵型显示模块。分 4 位和 8 位数据传输方式。它提供 57 点阵+光标和 510 点阵+光标的显示模式。提供显示数据缓冲区 DDRAM、字符发生器 CGROM 和字符发生器CGRAM,可以使用 CGRAM 来存

11、储自己定义的最多 8 个 58 点阵的图形字符的字模数据。它提供了丰富的指令设置:清显示,光标回原点,显示开/关,光标开/关,显示字符闪烁,光标移位,显示移位等。提供内部上电自动复位电路,当外加电源电压超过+4.5V 时,自动对模块进行初始化操作,将模块设置为默认的显示工作状态。12864 显示四行字符,每行可以显示 8 个字符。本设计采用 12864液晶,显示四行字符,分别显示“装潢测距仪”、 “长度: cm” 、 “ 宽度: cm” 、 “长乘宽: m*m” 。系统软件设计系统软件包括主程序、温度采集子程序、定时器计时子程序、计算子程序、液晶显示子程序等。主程序包括初始化和各个子程序的调用

12、,最后把测量结果用液晶显示屏显示出来(见图 4)。乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘乘NC 语言编程:#include#include #define uchar unsigned char#define uint unsigned int#define ulong unsigned longdata uchar testok;data unsigned char temp;data unsigned int i;data unsigned long time;data unsigned int chang;data unsigned

13、int kuan;data unsigned long mianji;data uchar fashecishu = 4;/*/*通用延时子程序*/void delay_lcd(int N)uchar i;while(N-)for(i=0; i20; i+);/* 12864LCD 引脚定义 */sbit LCD12864_CS = P20;sbit LCD12864_SID = P21;sbit LCD12864_SCLK = P22;sbit LCD12864_PSB = P23;sbit LCD12864_RESET = P24;sbit fs = P10;sbit jsen = P11

14、;sbit key1 = P12;sbit key2 = P13;/*显示模板 */uchar LCD12864_DIS116 = “ 装潢测距仪 “;uchar LCD12864_DIS216 = “长度: cm “;uchar LCD12864_DIS316 = “宽度: cm “;uchar LCD12864_DIS416 = “长乘宽: m*m “;uchar DIP_NUM11=“0123456789.“;void sendbyte(uchar bbyte) uchar i;for(i=0;i8;i+)LCD12864_SID=bbyte /取出最高位LCD12864_SCLK=1;

15、_nop_();_nop_();LCD12864_SCLK=0;bbyte=1; /左移 void write(bit start, uchar ddata) uchar start_data,Hdata,Ldata;if(start=0) /11111,(0),(0),0start_data=0xf8; /写指令 else /11111,(0),(1),0start_data=0xfa; /写数据Hdata=ddata /取高四位Ldata=(ddata4) /取低四位sendbyte(start_data); /发送起始信号delay_lcd(1); /延时sendbyte(Hdata);

16、 /发送高四位delay_lcd(1); /延时sendbyte(Ldata); /发送低四位delay_lcd(1); /延时void lcdinit() delay_lcd(10); /延时等待 LCM 进入工作状态LCD12864_PSB=0; /串口驱动模式LCD12864_RESET=0; delay_lcd(5);LCD12864_RESET=1; LCD12864_CS=1; write(0,0x30); /功能设定为基本指令操作write(0,0x0c);/显示状态开关不显示光标整体显示开 (write(0,0x0d);显示光标) write(0,0x01); / 清除显示wr

17、ite(0,0x06); /void lcd_scan()/显示文字uchar i;write(0,0x80); for(i=0;i16;i+) write(1,LCD12864_DIS1i);write(0,0x90); for(i=0;i16;i+) write(1,LCD12864_DIS2i);write(0,0x88); for(i=0;i16;i+) write(1,LCD12864_DIS3i);write(0,0x98); for(i=0;i16;i+) write(1,LCD12864_DIS4i);void fashe()uchar i,j;for(i=0;i4;i+)fs

18、 = 0;for(j=0;j2;j+)fs = 1;/*/void main(void)lcdinit(); lcd_scan();fs = 0;TMOD = 0x21;TH0 = 0X00;TL0 = 0X00;TH1 = 0XF2;TL1 = 0XF2;PX0 = 1;ET0 = 1;EA = 1;TR0 = 1;while (1)testok = 0;while (!testok) lcd_scan();if(testok = 2)time = TH0;time = (time8) | TL0;time *= 172;chang = time / 10000;LCD12864_DIS48

19、=DIP_NUMchang/1000;time = chang % 1000;LCD12864_DIS49=DIP_NUMchang/100;time %= 100;LCD12864_DIS410=DIP_NUMchang/10;LCD12864_DIS411=DIP_NUMchang%10;for (i=0; i300; i+) lcd_scan(); TR0 = 1;for (i=0;i100;i+)lcd_scan(); /*超声接收程序(外中断 0)*/void cs_r(void) interrupt 0TR0 = 0;ET0 = 0;EX0 = 0;jsen = 1;testok

20、= 1;/*超时清除程序(内中断 T0)*/void overtime(void) interrupt 1EA = 0;TR0 = 0;jsen = 1;TH0 = 0;TL0 = 0;ET1 = 1;EA = 1;TR0 = 1;TR1 = 1;testok = 2;void overtime2(void) interrupt 3fs=fs;fashecishu-;if (fashecishu != 0) return;TR1 = 0;ET1 = 0;fashecishu = 4;EX0 = 1;jsen = 0;/*/结论本系统采用单片机 STC89C52 做主控制器,可靠性好,抗干扰和电磁兼容性强,内部资源较丰富,软件的工作量大大降低编程更加方便,灵活。在本设计中,通过外部硬件电路来产生 40kHz 的超声波信号,因而相对于由单片机产生的 40kHz 超声波信号而言,更加接近超声波传感器的共振频率,因而使超声波传感器的输出最大,可以有效地提高测量距离,测量距离在 0.3m-4m 内。本设计采用数字式温度传感器实现对单片机超声波测距系统的温度测量和补偿,对声速进行补偿,对引起测量误差的因素进行修正处理,提高了系统的测量精度及灵敏度,使探测精度不超过 1cm,从而达到了很好的效果。

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报