基于单片机的超声波液位检测系统的设计_第1页
基于单片机的超声波液位检测系统的设计_第2页
基于单片机的超声波液位检测系统的设计_第3页
基于单片机的超声波液位检测系统的设计_第4页
基于单片机的超声波液位检测系统的设计_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、诚信申明本人申明:我所呈交的本科毕业设计(论文)是本人在导师指导下对四年专业知识而进行的研究工作及全面的总结。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中创新处不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京化工大学或其它教育机构的学位或证书而已经使用过的材料。与我一同完成毕业设计(论文)的同学对本课题所做的任何贡献均已在文中做了明确的说明并表示了谢意。若有不实之处,本人承担一切相关责任。本人签名: 年 月 日基于单片机的超声波液位检测系统的设计杨健自动化专业 自控0806班 学号080204170指导老师 张秋菊摘 要传统的液位控制绝大多数是人工控制,不仅造成了人

2、力资源的浪费,同时安全性可靠性都不高。现代工业生产正处于一个由劳动密集型、设备密集型向知识密集型转变的过程。在这一过程中,智能控制无疑起至关重要的作用,本课题主要对液位进行检测。一些发达国家在单片机新型测控装置与系统研究、制造、应用上,已积累了经验,奠定了基础,进入了国际市场。我国在新型测控装置与系统研究、制造、应用和经验上,有一定的基础,与其它发达国家相比还存在距离。液位是工业生产中最常见和最基本的工艺参数,因此完成一些主要功能需要比较全面地设计出超声波液位控制系统的方案。本设计从现代化计算机控制技术入手,利用单片机的强大智能功能,通过完整的软件与硬件的结合,阐述了一种液位测量系统。根据超声

3、波传感器的特点,设计出一套液位测量设备,主要通过单片机、超声波传感器测量液位。本次设计选择的设备有单片机,超声波液位传感器,液晶1602,蜂鸣器报警等,设计硬件控制流程图、控制电路图以及软件中的主程序流程图。通过系统模拟实验表明:该系统设计合理,实验过程时间短,工作稳定可靠,基本满足了设计的相关要求。关键词:AT89C51 液晶1602 蜂鸣器报警 PC机通信 超声波测距传感器SDM-IOBased ultrasonic liquid level detection system designAbstractThe traditional liquid level control the va

4、st majority of artificial control, not only resulted in the waste of human resources, at the same time the security reliability is not high. Modern industrial production is in a labor-intensive, equipment intensive to knowledge concentrated model the process of change. In this process, intelligent c

5、ontrol will undoubtedly play a crucial role, the main topic of liquid level detection. Some developed countries in the microprocessor control device and system research, manufacture, application, has accumulated experience, laid a foundation, entered an international market. Our country in the new m

6、easurement and control device and system research, manufacture, application and experience, have a certain foundation, and other developed countries there is a distance. Liquid level is the most common in industrial production and the most basic parameters, so that some of the major functions need m

7、ore comprehensive design of ultrasonic liquid level control system. This design from modern computer control technology to start, using powerful single chip intelligent function, through the complete combination of hardware and software, introduces a liquid level measuring system. According to the c

8、haracteristics of ultrasonic sensor, design a set of liquid level measurement equipment, mainly through the single chip computer, ultrasonic sensor to measure liquid level. The design of the selected device has an ultrasonic liquid level sensor, SCM, LCD 1602, buzzer alarm, control flow diagram, har

9、dware design and software control circuit diagram of the main program flow chart. Through the system simulation experiments show that: the system design is reasonable, the experiment process time is short, the work is stable and reliable, the basic design to meet the relevant requirements.Key words:

10、 AT89S51 LCD 1602 Buzzer alarm PC communication Ultrasonic ranging sensor SDM-IO目 录 TOC o 1-3 h z u HYPERLINK l _Toc314912538 前 言 PAGEREF _Toc314912538 h 1 HYPERLINK l _Toc314912539 第1章 课题研究价值 PAGEREF _Toc314912539 h 2 HYPERLINK l _Toc314912540 第节 选题背景 PAGEREF _Toc314912540 h 2 HYPERLINK l _Toc31491

11、2541 第节 研究目的与研究方法 PAGEREF _Toc314912541 h 3 HYPERLINK l _Toc314912542 第2章 系统硬件的介绍 PAGEREF _Toc314912542 h 4 HYPERLINK l _Toc314912543 第节 AT89C51单片机简介 PAGEREF _Toc314912543 h 4 HYPERLINK l _Toc314912544 第节 超声波测距原理 PAGEREF _Toc314912544 h 7 HYPERLINK l _Toc314912545 第节 显示电路 PAGEREF _Toc314912545 h 8 H

12、YPERLINK l _Toc314912546 第节 串口RS232 PAGEREF _Toc314912546 h 9 HYPERLINK l _Toc314912547 第3章 系统的硬件设计 PAGEREF _Toc314912547 h 14 HYPERLINK l _Toc314912548 第节 模块的选择 PAGEREF _Toc314912548 h 14 HYPERLINK l _Toc314912549 第4章 系统软件设计 PAGEREF _Toc314912549 h 19 HYPERLINK l _Toc314912550 总设计思想 PAGEREF _Toc314

13、912550 h 19 HYPERLINK l _Toc314912551 第节 具体设计 PAGEREF _Toc314912551 h 19 HYPERLINK l _Toc314912552 第5章 设计特色及前景 PAGEREF _Toc314912552 h 34 HYPERLINK l _Toc314912553 结 论 PAGEREF _Toc314912553 h 35 HYPERLINK l _Toc314912554 参考文献 PAGEREF _Toc314912554 h 36 HYPERLINK l _Toc314912555 致 谢 PAGEREF _Toc31491

14、2555 h 37前 言液位控制问题是工业过程中的一类常见问题,例如在饮料、溶液过滤、化工生产等多种行业的生产加工过程中都需要对液位进行适当的控制,在实际生产中,通常采用系统辨识的方法,对复杂系统进行建模,以建立一个简化的数学模型。然而对于一些控制精度较高的场合,则需要建立较精确的数学模型,一提高控制精度。超声波液位测量也广泛应用于石油、化工、气象等部门。实现无接触、智能化测量是液位测量目前的发展方向。由于计算机、微电子、传感器等高新技术的应用和研究,近年来液位仪表的研制得到了飞速的发展,已经满足了一般环境的应用。但是有些要在非常苛刻的条件下进行测试,如在高温、高压、低温、防腐蚀和防辐射等环境

15、下,这就需要能耐高温高压非接触等传感器。超声波就是非接触的传感器所以它适用范围较为广泛,可用于接触型测量仪表不能满足的特殊场合,如粘度高、腐蚀性强、污染性强、易结晶的介质。本文设计是为满足在工业生产领域中测量有毒、有害、高腐蚀、高温、高浓度等物质的液位高度,所以采用超声波进行非接触测量。超声波测量方法安全、易于安装、与辐射法相比对人体危害少。第1章 课题研究价值第1.1节 选题背景单片机自20世纪70年代问世以来,以极其高的性价比受到人们的关注和重视,所以应用很广,发展很快。单片机的优点是体积小、重量轻、抗干扰能力强、对环境要求不高、价格低廉、可靠性高、灵活性好,开发较为容易2。广大工程技术人

16、员通过学习有关单片机的知识后,也能靠自己的力量来开发所希望的单片机系统,并可获得较高的经济效益。正因为如此,在我国,单片机已被广泛地应用在工业自动化控制、自动检测、智能仪表,家用电器等各个方面。随着科技的发展,超声波广泛运用于诊断学、治疗学、工程学、生物学等领域。如工程学方面的应用:水下定位与通讯、地下资源勘查等;生物学方面的应用:剪切大分子、生物工程及处理种子等;诊断学方面的应用:A型、B型、M型和D型等;治疗学方面的应用:理疗、治癌、外科、体外碎石、牙科等。目前,市场上的超声波液位仪表功能各异,价格差异也较大。从价格和功能上比较,国内和国外产品存在较大的差异:国外的液位测量仪表,功能较全,

17、精度较高,但价格比较昂贵;而国内产品其功能和精度相对较低,但价格相对便宜。国外液位计量仪表早期大多采用机械原理,但近年来随着电子技术的应用,逐步向机电一体化发展,并且出现了许多新的测量原理。在传统原理中也渗透了电子技术及微机技术,其结构有了很大的改善、功能有了很大的提高。从国外液位仪表发展的技术动向看,当前主要有三个热点:接触测量方式的液位仪;非接触测量方式的液位仪;新原理的小型液位开关。超声波就是非接触的传感器所以它适用范围较为广泛,可用于接触型测量仪表不能满足的特殊场合,如粘度高、腐蚀性强、污染性强、易结晶的介质。第1.2节 研究目的与研究方法 研究目的由于计算机、微电子、传感器等高新技术

18、的应用和研究,近年来液位仪表的研制得到了飞速的发展,已经满足了一般环境的应用。但是有些要在非常苛刻的条件下进行测试,如在高温、高压、低温、防腐蚀和防辐射等环境下,这就需要能耐高温高压非接触等传感器。超声波就是非接触的传感器所以它适用范围较为广泛,可用于接触型测量仪表不能满足的特殊场合,如粘度高、腐蚀性强、污染性强、易结晶的介质。为了满足在工业生产领域中测量有毒、有害、高腐蚀、高温、高浓度等物质的液位高度,所以采用超声波进行非接触测量。超声波测量方法安全、易于安装、与辐射法相比对人体危害少。 研究方法首先深入掌握8051单片机位控制核心,检测到数据经8051单片机处理后,传至液晶1602显示模块

19、显示的功能。其次对超声波的液位测量原理、特点及测量系统的设计进行分析研究。最后对超声波液位测量系统的硬件电路进行分析以及硬件PCB的制作过程,同时对系统软件流程进行了分析。最后对系统测试结果进行了比较与总结。第2章 系统硬件的介绍第2.1节 AT89C51单片机简介AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次9

20、。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。如图所示。图2.1 AT89C51(1)主要特性:与MCS-51兼容4K字节可编程闪烁存储器寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定128*8位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源(2)管脚说明:P0口:P0口为一

21、个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,

22、输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将

23、输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:端口引脚复用功能RXD(串行输入口)TXD(串行输出口)P3.2INT0(外部中断0)INT1(外部中断1)T0(定时器0的外部输入)T1(定时器1的外部输入)WR(外部数据存储器写选通)RD(外部数据存储器读选通)RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此

24、它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次PSEN有效。但在访问外部数据存储器时,这两次有效的PSEN信号将不出现。EA/VPP:当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,EA将内部锁定为RESET;当

25、EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。(3)振荡器特性10:XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。第2.2节 超声波测距原理2.2.1 超声波超声(超音波学)的定义:声音是与人类生活紧密相联的一种自然现象

26、。当声的频率高到超过人耳听觉的频率极限时,人们就觉察不出声的存在,因而称这种高频率的声为“超”声。超声波通常指1秒内振动20000次以上的高频声波。超声波具有以下四个基本特性:束射特性,吸收特性,高功率, 声压作用。上述四个基本特性使超声波在媒体中导致如下五种效应:力学效应、热学效应、光学效应、电学效应和化学效应。超声波的特点是它能在各种媒质中传播;波长短,因而分辨率很好;声束尖锐,声能集中;在不同物质界面上会有反射、折射、散射等现象;可获得较高声强。利用声在媒质中的声速、衰减、共振、反射等现象可测量物质的成分、比重、厚度等。超声波测距就是利用超声波脉冲反射回波法实现的。超声波在空气中的传播速

27、度为340米/秒,因此,如果能测出超声波在空气中传播时间,就能算出其传播的距离。超声波测距就是通过测定超声波传播的时间间隔来测出声波传送的距离,这就是所谓的时间差测距法。超声波测距方法有如下两种:(1)直接式超声波测距方法:直接式超声波测距方法的原理是,测量发送器发射超声波到接收器并接收到超声波的时间t,已知超声波在空气中的传播速度V,则超声波发送器到对象物的距离为: S=Vt(2)反射式超声波测距方法:反射式超声波测距方法的原理是,发送器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播途中遇到对象物就立即返回来,接收器接收到反射波就立即停止计时,这时计时器就计下了超声波从发

28、射到对象物间的来回传播时间t,从而发送器到对象物的距离可用下式计算出来:S=Vt/22.2.2 超声波传感器的结构和发射原理将两个压电元件(或一个压电元件和一个金属板)粘合在一起,称为双压电晶片(由一个压电元件构成的称为单压电晶片)压电式超声波发生器实际上是利用压电晶体的谐振来工作的。它有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了。超声波传感器可以视为一个电感、电容和电阻串联

29、的(共振)电路其电抗特性是左侧右侧呈电容性,中间部分呈电感性。这种特性只有在高Q值的晶体振子活着陶瓷振子中可以看到。利用这一特性构成了超声波传感器特有的电路。超声波传感器由两个共振频率,低频的共振频率ft叫做串联共振频率,在电阻(R),电感(L)和电容(C1)的串联电路中振荡。这时的传感器阻抗最低;而在高频处的共振频率fa为逆共振频率,在电阻(R),电容(C1)和电容(C2)的串联电路中震荡。发送超声波在串联共振频率处具有最高灵敏度,接收超声波在串联逆共振频率处具有最高灵敏度,而且由于超声波传感器具有共振特性,即使将方波输入到发送传感器,接收传感器的输出也是正弦波。2.2.3 超声波传感器的选

30、择市场上的超声波传感器大致可以分为通用型,宽频带型,封闭型,高频型几类,他们各有优缺点,也就各有用途。通用型频带窄,但灵敏度高,抗干扰性强,在多通道,且通道间频率较近的应用中最好使用它;宽频带型能在工作频带内有两个共振点,因而加宽了频带,它兼做发送和接收传感器;封闭型适用于室外环境,有较好的奈风雨特性,用于汽车后的监测等装置上;高频型的中心频率可以达到200KHz,方向性强,可以进行高分辨率的测量。本次设计用了超声波测距传感器SDM-IO来发送和接收超声波。第节 显示电路由于数码管显示能力有限,所以采用LCD1602液晶屏作为显示。1602用于显示实时温度,温度限值,以及一些控制信息。如图 第

31、2.4节 串口RS232RS232是个人计算机上的通讯接口之一。由电子工业协会(Electronic Industries Association,EIA)所制定的异步传输标准接口。通常RS-232接口以9个引脚(DB-9)或是25个引脚(DB-25)的型态出现,一般个人计算机上会有两组RS-232接口,分别称为COM1和COM2。RS-232-C是美国电子工业协会EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS是英文“推荐标准”的缩写,232为标识号,C表示修改次数。RS-232-C总线标准设有25条信号线,包括一个主通道和一个辅助通道

32、。在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线,一条接收线及一条地线。RS-232-C标准规定的数据传输速率为每秒50、75、100、150、300、600、1200、2400、4800、9600、19200波特。RS-232-C标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m。若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-232属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于20m以内的通信。串行通信接口标准经过使用和发展,目前已经有

33、几种。但都是在RS-232标准的基础上经过改进而形成的。所以,以RS-232C为主来讨论。RS-323C标准是美国EIA(电子工业联合会)与BELL等公司一起开发的1969年公布的通信协议。它适合于数据传输速率在020000b/s范围内的通信12。这个标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。由于通行设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。电气特性:EIA-RS-232C对电器特性、逻辑电平和各种信号线功能都作了规定。在TXD和RXD上:逻辑1(MARK)=-3V-15V逻辑0(SPACE)=+315V在

34、RTS、CTS、DSR、DTR和DCD等控制线上:信号有效(接通,ON状态,正电压)+3V+15V信号无效(断开,OFF状态,负电压)=-3V-15V以上规定说明了RS-323C标准对逻辑电平的定义。对于数据(信息码):逻辑“1”(传号)的电平低于-3V,逻辑“0”(空号)的电平高于+3V;对于控制信号,接通状态(ON)即信号有效的电平高于+3V,断开状态(OFF)即信号无效的电平低于-3V,也就是当传输电平的绝对值大于3V时,电路可以有效地检查出来,介于-3V+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在(315)V之间。连接器的机械特性

35、13。连接器:由于RS-232C并未定义连接器的物理特性,因此,出现了DB-25、DB-15和DB-9各种类型的连接器,其引脚的定义也各不相同。下面分别介绍两种连接器。(1)DB-25:PC和XT机采用DB-25型连接器。DB-25连接器定义了25根信号线,分为4组:异步通信的9个电压信号(含信号地SG)2,3,4,5,6,7,8,20,2220mA电流环信号9个(12,13,14,15,16,17,19,23,24)空6个(9,10,11,18,21,25)保护地(PE)1个,作为设备接地端(1脚)DB-25型连接器的外形及信号线分配注意20mA电流环信号仅IBM PC和IBM PC/XT机

36、提供,至AT机及以后,已不支持。 (2)DB-9连接器在AT机及以后,不支持20mA电流环接口,使用DB-9连接器,作为提供多功能I/O卡或主板上COM1和COM2两个串行接口的连接器。它只提供异步通信的9个信号。DB-25型连接器的引脚分配与DB-25型引脚信号完全不同。因此,若与配接DB-25型连接器的DCE设备连接,必须使用专门的电缆线。电缆长度:在通信速率低于20kb/s时,RS-232C所直接连接的最大物理距离为15m(50英尺)。最大直接传输距离说明:RS-232C标准规定,若不使用MODEM,在码元畸变小于4%的情况下,DTE和DCE之间最大传输距离为15m(50英尺)。可见这个

37、最大的距离是在码元畸变小于4%的前提下给出的。为了保证码元畸变小于4%的要求,接口标准在电气特性中规定,驱动器的负载电容应小于2500pF。(3)RS-232C的接口信号14:RS-232C规标准接口有25条线,4条数据线、11条控制线、3条定时线、7条备用和未定义线,常用的只有9根,它们分别是:联络控制信号线。数据装置准备好(Data set ready-DSR)有效时(ON)状态,表明MODEM处于可以使用的状态。数据终端准备好(Data terminal ready-DTR)有效时(ON)状态,表明数据终端可以使用。这两个信号有时连到电源上,一上电就立即有效。这两个设备状态信号有效,只表

38、示设备本身可用,并不说明通信链路可以开始进行通信了,能否开始进行通信要由下面的控制信号决定。请求发送(Request to send-RTS)用来表示DTE请求DCE发送数据,即当终端要发送数据时,使该信号有效(ON状态),向MODEM请求发送。它用来控制MODEM是否要进入发送状态。允许发送(Clear to send-CTS)用来表示DCE准备好接收DTE发来的数据,是对请求发送信号RTS的响应信号。当MODEM已准备好接收终端传来的数据,并向前发送时,使该信号有效,通知终端开始沿发送数据线TXD发送数据。这对RTS/CTS请求应答联络信号是用于半双工MODEM系统中发送方式和接收方式之间

39、的切换。在全双工系统中作发送方式和接收方式之间的切换。在全双工系统中,因配置双向通道,故不需要RTS/CTS联络信号,使其变高。接收线信号检出(Received Line detection-RLSD)用来表示DCE已接通通信链路,告知DTE准备接收数据。当本地的MODEM收到由通信链路另一端(远地)的MODEM送来的载波信号时,使RLSD信号有效,通知终端准备接收,并且由MODEM将接收下来的载波信号解调成数字两数据后,沿接收数据线RXD送到终端。此线也叫做数据载波检出(Data Carrier Dectection-DCD)线。振铃指示(Ringing-RI)当MODEM收到交换台送来的振

40、铃呼叫信号时,使该信号有效(ON状态),通知终端,已被呼叫。数据发送与接收线。发送数据(Transmitted data-TXD)通过TXD终端将串行数据发送到MODEM,(DTEDCE)。接收数据(Received data-RXD)通过RXD线终端接收从MODEM发来的串行数据,(DCEDTE)。地线。有两根线SG、PG信号地和保护地信号线,无方向。上述控制信号线何时有效,何时无效的顺序表示了接口信号的传送过程。例如,只有当DSR和DTR都处于有效(ON)状态时,才能在DTE和DCE之间进行传送操作。若DTE要发送数据,则预先将DTR线置成有效(ON)状态,等CTS线上收到有效(ON)状态

41、的回答后,才能在TXD线上发送串行数据。这种顺序的规定对半双工的通信线路特别有用,因为半双工的通信才能确定DCE已由接收方向改为发送方向,这时线路才能开始发送。2个数据信号:发送TXD,接收RXD。1个信号地线:SG。6个控制信号:DSR数传机(即modem)准备好,Data Set Ready。DTR数据终端(DTE,即微机接口电路,如Intel8250/8251,16550)准备好,Data Terminal Ready。RTS请求DCE发送(Request To Send)。CTS允许DTE发送(Clear To Send),该信号是对RTS信号的回答。DCD数据载波检出,Data Ca

42、rrier Detection当本地DCE设备(Modem)收到对方的DCE设备送来的载波信号时,使DCD有效,通知DTE准备接收,并且由DCE将接收到的载波信号解调为数字信号,经RXD线送给DTE。RI振铃信号Ringing当DCE收到交换机送来的振铃呼叫信号时,使该信号有效,通知DTE已被呼叫。单片机和PC机的串行通信一般采用RS-232C、RS-422或B3-485总线标准接口,也有采用非标准的20nnJL电流环的。为保证通信的可靠,在选择接口时必须注意:通信的速率;通信距离;抗干扰能力;组网方式15。本文主要介绍采用RS-232C 接口与单片机通信的方法。RS-232C目前最常使用的串

43、行接口总线标准,RS-232C 串行接口总线适用于设备之间的通信距离不大于15M、传输速度最大为20kbit/s时的场合。第3章 系统的硬件设计第3.1节 模块的选择 超声波测距传感器SDM-IO1主要技术参数(技术指标不缩水):1:使用电压:DC 2.4V5.5V 2:静态电流:小于 2mA 3:测温范围:-45+85度4:测距工作温度范围:-20+70度5:输出方式:电平或UART 6:感应角度:不大于15度 7:探测距离:2cm-450cm 8:探测精度:0.3cm+1% 2本模块说明: 1: 尺寸本模块的尺寸:45mm*20mm*1.6mm。板上有两个半径为 1mm的机械孔。 2: 接

44、口说明如图所示,本模块的接口为 5Pin 2,54mm间距的弯排针,从左到右依次编号1,2,3,4,5。它们的定义如下: (1)接 VCC电源(供电范围2.4V5.5V)。 (2)接外部电路的 Trig端。 (3)接外部电路的 Echo端。 (4)接外部电路的地。 (5)接外部电路的地。 3. 测距工作原理 (1)模块接收到触发信号后,自动发送 8个 40khz的方波,然后检测是否有信号返回。 (2)有信号返回,计算超声波发送和返回的时间间隔,最后综合计算得出当前的测试距离。 (3)当为电平触发模式时,模块将距离值转化为 340m/s时的时间值的 2倍,通过 Echo端输出一高电平,可根据此高

45、电平的持续时间来计算距离值。即距离值为:(高电平时间*340m/s)/2。液晶1602由于数码管显示能力有限,所以采用LCD1602液晶屏作为显示。1602用于显示实时温度,温度限值,以及一些控制信息。如下图所示: 外接电源本设计使用外接电源(三节1.5V电池)给电路供电,使测量装置方便携带。 蜂鸣器报警本设计使用蜂鸣器实现声报警,蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示。它是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、 机、定时器等电子产品中作发声器件。本设计中,当液位超过规定范围时

46、,蜂鸣器实现声报警。其结构如下图所示: 键盘键盘输入单元采用独立式键盘,由上下左右四个键组成,其中上这个键为开始键,下为显示切换键,左右为数字增减键.增减键用以改变设定值的大小,见下图: 总体硬件组成框图系统框图如下图所示AT89C51液晶1602按键报警装置超声波测距传感器SDM-IO 总体硬件组成框图第4章 系统软件设计总设计思想超声波是一种频率比较高的声音,指向性强.超声波测距的原理是利用超声波在空气中的传播速度为已知,测量声波在发射后遇到障碍物反射回来的时间,根据发射和接收的时间差计算出发射点到障碍物的实际距离。由此可见,超声波测距原理与雷达原理是一样的。 测距的公式表示为:L=CT

47、式中L为测量的距离长度;C为超声波在空气中的传播速度;T为测量距离传播的时间差(T为发射到接收时间数值的一半)。 已知超声波速度C=344m/s (20室温)超声波传播速度误差 超声波的传播速度受空气的密度所影响,空气的密度越高则超声波的传播速度就越快,而空气的密度又与温度有着密切的关系,近似公式为:C=C0+0.607T 式中:C0为零度时的声波速度332m/s; T为实际温度()。 对于超声波测距精度要求达到1mm时,就必须把超声波传播的环境温度考虑进去。第4.2节 具体设计软件也是非常重要的部分,直接关系到最终结果。在以下的介绍中,主要是针对各个模块程序的整体功能的介绍。主程序流程图主程

48、序完成初始化工作、各路超声波发射和接收顺序的控制及记录超声波的发射时间。中断服务程序主要完成时间值的读取、距离计算、结果的显示或输出等工作。软件分为两部分,即主程序和中断程序。工作流程图如图10所示。开始初始化各参数,开启定时器T0,T1清零P1.0,启动超声波传感器读取定时器T1,并计算时间有时间计算距离存入寄存器由LCD显示等到T0定时器时间到重装T0,T1图10 主程序流程图 汇编源程序液位检测系统实现功能:液位检测,上限报警。#include /包括一个52标准内核的头文件#include #define uchar unsigned char /定义一下方便使用#define uin

49、t unsigned int#define ulong unsigned long/*sfr CLK_DIV = 0 x97; /为STC单片机定义,系统时钟分频sfr P0M1 = 0X93; /为STC单片机的IO口设置地址定义sfr P0M0 = 0X94;sfr P1M1 = 0X91;sfr P1M0 = 0X92;sfr P2M1 = 0X95;sfr P2M0 = 0X96; /*sbit Trig = P10; /产生脉冲引脚sbit Echo = P32; /回波引脚sbit Vo = P23; /测试用引脚sbit test = P11; /测试用引脚sbit KEY3=P

50、33; /报警上限值设定sbit KEY1=P34; /容器上限值设定sbit KEY2=P35; /容器下限值设定uint distance4 ; /测距接收缓冲区uint sheding=0,shangxian=0;float dis=0;uchar ge1,shi1,bai1,L5=0,Q3=0,LL5=P,temp,flag,outcomeH,outcomeL,i; /自定义寄存器uchar LS2=0;bit succeed_flag; /测量成功标志/*函数声明void conversion(uint temp_data);void delay_20us();void baojin

51、g();void key();void Delayms(uint del);void baojing()/报警子程序uint n;for(n=0;n100;n+); /延时Vo=Vo; /取反输出到喇叭的信号void main(void) / 主程序 uint distance_data,a,b; uchar CONT_1; CLK_DIV=0X03; /系统时钟为1/8晶振(pdf-45页) P0M1 = 0; /将io口设置为推挽输出 P1M1 = 0; P2M1 = 0; P0M0 = 0XFF; P1M0 = 0XFF; P2M0 = 0XFF; i=0; flag=0; test=0

52、;Trig=0; /首先拉低脉冲输入引脚TMOD=0 x11; /定时器0,定时器1,16位工作方式TR0=1; /启动定时器0 IT0=0; /由高电平变低电平,触发外部中断ET0=1; /打开定时器0中断 /ET1=1; /打开定时器1中断EX0=0; /关闭外部中断EA=1; /打开总中断0 L1602_init(); while(1) /程序循环 L1602_string(1,1,S:);L1602_string(1,3,LL);L1602_string(1,6,cm); L1602_string(1,10,B:);L1602_string(1,13,Q); key();EA=0;Tr

53、ig=1; delay_20us(); Trig=0; /产生一个20us的脉冲,在Trig引脚 while(Echo=0); /等待Echo回波引脚变高电平succeed_flag=0; /清测量成功标志EX0=1; /打开外部中断TH1=0; /定时器1清零 TL1=0; /定时器1清零TF1=0; / TR1=1; /启动定时器1 EA=1; key(); key(); key();while(TH1 30);/等待测量的结果,周期65.535毫秒(可用中断实现) TR1=0; /关闭定时器1 EX0=0; /关闭外部中断 key();if(succeed_flag=1) distanc

54、e_data=outcomeH; /测量结果的高8位 distance_datashangxian)/检测值大于上限值报警baojing();if(dis=3) CONT_1=0; b=a; conversion(b); key(); /*/外部中断0,用做判断回波电平INTO_() interrupt 0 / 外部中断是0号 outcomeH =TH1; /取出定时器的值 outcomeL =TL1; /取出定时器的值 succeed_flag=1; /至成功测量的标志 EX0=0; /关闭外部中断 /*/定时器0中断,用做显示timer0() interrupt 1 / 定时器0中断是1号

55、 TH0=0 xfd; /写入定时器0初始值 TL0=0 x77; /*/*/显示数据转换程序void key() if (KEY1=0|KEY2=0|KEY3=0) Delayms(2); if (KEY1=0) sheding+;LL0=sheding/100+48 ;sheding=sheding%100; /取余运算LL1=sheding/10+48; LL2=sheding%10+48; /取余运算 L1602_string(1,3,LL);if (KEY2=0) sheding-;LL0=sheding/100+48 ;sheding=sheding%100; /取余运算LL1=s

56、heding/10+48 ; LL2=sheding%10+48; /取余运算L1602_string(1,3,LL);if(KEY3=0)shangxian+; Q0=shangxian/10+48; Q1=shangxian%10+48; if(shangxian=100) shangxian=0;L1602_string(1,13,Q);void conversion(uint temp_data) uchar ge_data,shi_data,bai_data ; bai_data=temp_data/100 ; temp_data=temp_data%100; /取余运算 shi_d

57、ata=temp_data/10 ; temp_data=temp_data%10; /取余运算 ge_data=temp_data; EA=0;bai0 = bai_data; shi0 = shi_data; ge0= ge_data ; EA=1; /*void delay_20us()/延时子程序 uchar bt ; for(bt=0;bt100;bt+); void Delayms(uint del)uint i,j;for(i=0; idel; i+)for(j=0; j1827; j+) ;液晶1602的显示程序#include/这三个引脚参考资料sbit E=P27;/160

58、2使能引脚sbit RW=P26;/1602读写引脚sbit RS=P25;/1602数据/命令选择引脚/* 名称 : delay()* 功能 : 延时,延时时间大概为140US。* 输入 : 无* 输出 : 无*/void delay()int i,j;for(i=0; i=100; i+)for(j=0; j=20; j+);/* 名称 : enable(uchar del)* 功能 : 1602命令函数* 输入 : 输入的命令值* 输出 : 无*/void enable(unsigned char del)P0 = del;RS = 0;RW = 0;E = 0;delay();E =

59、1;delay();/* 名称 : write(uchar del)* 功能 : 1602写数据函数* 输入 : 需要写入1602的数据* 输出 : 无*/void write(unsigned char del)P0 = del;RS = 1;RW = 0;E = 0;delay();E = 1;delay();/* 名称 : L1602_init()* 功能 : 1602初始化,请参考1602的资料* 输入 : 无* 输出 : 无*/void L1602_init(void)enable(0 x01);enable(0 x38);enable(0 x0c);enable(0 x06);en

60、able(0 xd0);/* 名称 : L1602_char(uchar hang,uchar lie,char sign)* 功能 : 改变液晶中某位的值,如果要让第一行,第五个字符显示b ,调用该函数如下 L1602_char(1,5,b)* 输入 : 行,列,需要输入1602的数据* 输出 : 无*/void L1602_char(unsigned char hang,unsigned char lie,char sign)unsigned char a;if(hang = 1) a = 0 x80;if(hang = 2) a = 0 xc0;a = a + lie - 1;enabl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论