书签 分享 收藏 举报 版权申诉 / 121
上传文档赚钱

类型[工学]单片机的课程设计综合应用实例课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:5102246
  • 上传时间:2023-02-11
  • 格式:PPT
  • 页数:121
  • 大小:3.34MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《[工学]单片机的课程设计综合应用实例课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    工学 单片机 课程设计 综合 应用 实例 课件
    资源描述:

    1、第第13章章 单片机的课程设计单片机的课程设计(综合应用实例综合应用实例)13.1 红外接收器件红外接收器件TL1838 近年来随着计算机在社会各领域的渗透,单片机的应用正在不断地走向深入,同时也带动传统的控制、检测等工作日益更新。传统的遥控器大多采用无线电遥控技术,随着科技的进步,红外线遥控技术的进一步成熟,红外遥控也逐步成为了一种被广泛应故不同房间的家用电器可使用通用的遥控器而不会产生相互干扰;电用的通信和遥控手段。为了方便实用,传统的家庭电器逐渐采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等有害环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。红外遥控的特点是不影响

    2、周边环境、不干扰其它电器设备。由于其无法穿透墙壁,路调试简单,只要按给定电路连接无误,一般不需任何调试即可投入工作;编解码容易,可进行多路遥控。红外遥控虽然被广泛应用,但各产商的遥控器不能相互兼容。当今市场上的红外线遥控装置一般采用专用的遥控编码及解码集成电路,但编程灵活性较低,且产品多相互绑定,不能复用,故应用范围有限。而本文采用单片机进行遥控系统的应用设计,遥控装置将同时具有编程灵活、控制范围广、体积小、功耗低、功能强、成本低、可靠性高等特点,因此采用单片机的红外遥控技术具有广阔的发展前景。13.1.1 概述概述 1.基于单片机的红外遥控系统概述 当今社会科学技术的发展与日俱增,人们生活水

    3、平也是日益提高,为了减少人们的工作量,所以对各种家用电器、电子器件的非人工控制的要求越来越高,针对这种情况,设计出一种集成度比较高的控制体系是必然的。现代科技的飞速发展在许多危险、不可近场合也对远程控制提出了越来越高的要求。单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机的集成度很高,它体积小、功耗低、控制功能强、

    4、扩展灵活、微型化、使用方便等突出特点,尤其耗电少,又可使供电电源体积小、质量轻。所以特别适用于“电脑型产品”,它的应用已深入到工业、农业、国防、科研、教育以及日常生活用品(家电、玩具)等各种领域,几乎很难找到哪个领域没有单片机的踪迹。单片机特别适合把它做到产品的内部,取代部分老式机械、电子零件或元器件。可使产品缩小体积,增强功能,实现不同程度的智能化。红外线是一种光线,具有普通光的性质,可以以光速直线传播,强度可调,可以通过光学透镜聚焦,可以被不透明物体遮挡等等。特别制造的半导体发光二极管,可以发出特定波长(通常是近红外)的红外线,通过控制二极管的电流可以很方便的改变红外线的强度,以达到调制的

    5、目的,因此,在现代电子工程应用中,红外线常常被用做近距离视线范围内的通讯载波。使用红外线做信号载波的优点很多:成本低、传播范围和方向可以控制、不产生电磁辐射干扰,也不受干扰等等。因此被广泛地应用在各种技术领域中。由于红外线为不可见光,因此对环境影响很小,再由红外光波长远小于无线电波的波长,所以红外线遥控不会影响其他家用电器,也不会影响临近的无线电设备。最典型的应用就是家电遥控器。红外线遥控不具有像无线电遥控那样穿过障碍物去控制被控对象的能力,所以,在设计家用电器的红外线遥控器时,不必要像无线电遥控器那样,每套(发射器和接收器)要有不同的遥控频率或编码(否则,就会隔墙控制或干扰邻居的家用电器)。

    6、同类产品的红外线遥控器,也可以有相同的遥控频率或编码,而不会出现遥控信号“串门”的情况。这对于大批量生产以及在家用电器上普及红外线遥控提供了极大的方面。本设计主要研究并设计一个基于单片机的红外发射及接收系统,实现对温度控制的隔离控制。控制系统主要是由 MCS-51 系列单片机、集成红外发射遥控器、红外接收电路、LCD 显示电路,温度控制电路等部分组成,发射遥控信号经红外接收处理传送给单片机,单片机根据不同的信息码控制温度报警,并完成相应的状态指示(如图13-1)。按键编码和调制红外发射红外接收解码并响应红外遥控器红外接收图图13-1 红外线遥控系统框图红外线遥控系统框图 2.本设计方案思路 本

    7、设计主控芯片采用目前比较通用的MCS-51系列单片机。此类单片机的运算能力强,软件编程灵活,自由度大,市场上比较多见,价格便宜且技术比较成熟容易实现。红外传输利用载波对信号进行调制从而减少信号传输过程中的光波干扰,提高数据传输效率。由遥控器将键盘信息及系统识别码等数据调制在红外载波上经红外发射头发射出去。接收方由红外一体化接收头实现对接收信号的放大解调并还原为数据流,经由单片机解码后对相关IO口进行操作。3.研发方向和技术关键 1)合理设计硬件电路,使各模块功能协调;2)红外接收信号的脉冲波形;3)红外接收信号的编解码;4)单片机对IO口的操作;4.主要技术指标 1)遥控最远距离8到10m 2

    8、)工作频率为 38KHz,即红外发射和接收的载频为 38KHz;4)接收端可显示受控状态以及输入控制数据。13.1.2 总体设计总体设计 红外遥控系统是集中集光、电于一体的系统。其工作原理是用户按键信号经单片机编码处理后转化为脉冲信号,经由红外发射头发送出去;接收端由红外一体化接收头实现对接收信号的放大解调并还原为数据流,经由单片机解码后对相关IO口进行操作,从而完成整个遥控操作。整个系统主要是由51单片机基本电路、红外接收电路、LCD 显示电路,温度控制电路等部分组成。系统硬件由以下几部分组成:红外数据发射遥控器。红外数据接收则是采用 VS1838B 一体化红外接收头,内部集成红外接收、数据

    9、采集、解码的功能,只要在接收端 INT0 检测头信号低电平的到来,就可完成对整个串行的信号进行分析得出当前控制指令的功能。然后根据所得的指令去操作相应的用电器件工作,如图13-2所示。图图13-2 系统总体结构框图系统总体结构框图 1.红外遥控发射部分 红外遥控发射部分为常见的普通遥控器。2.红外遥控接收部分 红外遥控接收电路框图见图13-3。红外接收端普遍采用价格便宜,性能可靠的一体化红外接收头(VS1838B,它接收红外信号频率为38KHz,周期约26s)。它能同时对信号进行放大、检波、整形,得到TTL 电平的编码信号。红外接收头收到信号后单片机立即产生中断,开始接收红外信号。接收到的信号

    10、经单片机解码得到用户遥控信息并转至IO口执行,同时单片机还完成对处于工作状态的设备进行计数并显示。3.红外编码标准 通过拆解遥控器知道这个用的编码芯片是PT2221 通过查询得知是NEC编码标准:此标准下的发射端所发射的一帧码含有一个引导码、8位用户码、8位用户反码,8位键数据码、8位键数据反码。引导码由一个9ms的高电平和4.5ms的低电平组成。当按下持续时间超过108ms时,则发送简码(简码由9ms高电平和2.25ms的低电平组成)来告之接收端是某一个按键一直按着,象电视的音量和频道切换键都有此功能,简码与简码之间相隔是108ms。“1”和“0”的区分采用脉冲位置调制方式(PPM)。1)二

    11、进制信号的调制 二进制信号的调制仍由发送单片机来完成,A是二进制信号的编码波形,B 是频率为38KHz(周期为26s)的连续脉冲,C是经调制后的间断脉冲串(相当于C=AB),用于红外发射二极管发送的波形。2)二进制信号的解调 二进制信号的解调由一体化红外接收头VS1838B来完成,它把接收到的红外信号(图13-4 中波形D)经内部处理并解调复原,在输出脚输出图13-4中波形E,VS1838B 的解调可理解为:在输入有脉冲串时,输出端输出低电平,否则输出高电平。可直接与单片机串行输入口及外中断相联,以实现随时接收遥控信号并产生中断,然后由单片机对编码还原。3)二进制信号的解码 二进制信号的解码由

    12、接收单片机来完成,它把红外接收头送来的二进制编码波形通过解码,还原出发送端发送的数据。如图13-4,把波形解码还原成原始二进制数据信息101。图图13-4 红外接收头接收及输出波形红外接收头接收及输出波形 13.1.3 硬件设计硬件设计 1.主控芯片AT89C51 AT89C51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4k bytes的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程。2.红外发射红外发送器大多是使用Ga、As

    13、等材料制成的红外发射二极管,其能够通过的LED电流越大,发射角度越小,产生的发射强度就越大;发射强度越大,红外传输距离就越远,传输距离正比于发射强度的平方根。通常,红外遥控器将遥控信号(二进制脉冲码)调制在40KHz(周期为26.3ms)的载波上,经缓冲放大后送至红外发光二极管,产生红外信号发射出去。在红外数据发射过程中,由于发送信号时的最大平均电流需几十mA(对应mW级发射功率),所以需要三极管放大后去驱动红外光发射二极管(又称电光二极管)。单片机通过软件编程将调制好的脉冲信号从P3口第6脚(P3.5)将数据输出 3.红外遥控接收电路 本部分电路是该设计中硬件电路的重点部分,系统由红外接收电

    14、路,单片机电路,设备驱动电路,状态显示电路组成。一体化红外接收头采用VS1838B,它负责对接收到的红外遥控信号的解调。将调制在40kHz上的红外脉冲信号解调后再输入到AT89C51的INT0(P3.2)引脚,由单片机进行高电平与低电平宽度的测量。遥控信号的还原是通过P3.1输入二进制脉冲码的高电平与低电平及维持时间,当接收头接收信号时,单片机产生中断,并在P3.1口对信号电平进行识别,并还原为原发送数据,这在后面的软件设计中会具体介绍到。数据流通过单片机处理后送驱动控制部分。并通过数码管显示用电设备的个数 1)红外信号接收电路 VS1838B是用于红外遥控接收的小型一体化接收头,它的主要功能

    15、包括放大,选频,解调几大部分,要求输入信号需是已经被调制的信号。经过它的接收放大和解调会在输出端直接输出原始信号的反相信号。其不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,从而使电路达到最简化!灵敏度和抗干扰性都非常好。它适合于各种红外线遥控和红外线数据传输,中心频率38.0kHz。接收器对外只有3个引脚,如图13-5所示,从左至右依次为OUT、GND、VCC。红外接收头电路图如图13-6所示,OUT脚(1号脚)与单片机IO口直接相连。图图13-5 VS1838B引脚引脚 红外接收头内部放大器的增益很大,很容易引起干扰,依次在接

    16、收头的供电脚上必须加上滤波电容。故红外接收部分电路如图13-6所示。图图13-6 红外接收头电路红外接收头电路 2)控制部分电路 单片机收到红外接收头解调后的信号后,对其进行解码,从中解出控制码,此时系统将转至对具体设备的控制工作。温度检测部分采用DS18B20数字温度传感器,DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温

    17、度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。3)显示部分 红外遥控系统接收到遥控码并对相关设备操作后,单片机将对正在工作的设备进行计数并通过一个LCD12232显示。13.1.4 制作过程制作过程 仿真调试电路如图13-7所示。图图13-7 红外仿真调试电路图红外仿真调试电路图 实物制作样品如图13-8所示。图图13-8 实物制作样品图实物制作样品图 实物演示效果图如图13-9所示。图图13-9 实物演示效果图实物演示效果图 温度控制规则:当前实际温度大于设定最高温度,LED灯发出警告。当前实际温度小于设定最少温度,LED灯发出警告。由于目前的遥

    18、控装置大多对某一设备进行单独控制,而在本设计中的红外遥控电路设计了多个控制按键,可以对不同的设备,也可以对同一设备的多个功能进行控制。系统可通过设定发射及接收程序中的识别码及识别反码达到不同遥控器间相互区分,对识别码、识别反码、控制码和控制码反码的判定一方面消除了非遥控信号的红外干扰,另一方面降低了误操作发生的几率。经过测试,设计结果完全达到课题任务要求。但是本电路也有不完善的地方,由于时间、水平和经验有限,在信号解码、抗干扰及功耗控制等方面仍有不足之处,有改进的余地。例如设计中可通过增加红外线发射功率进而增加遥控距离,改进信号编码方式以提高数据的传输速度,使用小型单片机以降低功耗等。另外在系

    19、统的调试方面,由于时间和设备的原因,只进行了短距离的调试,更多参数有待进一步的调试。在设计过程中,通过大量的查阅资料,认真研究教材,对单片机有了更为深刻的理解,在编写软件时,须仔细的分析硬件电路及所要达到的功能,然后设计程序流程,编写代码。整个过程培养了我的耐性和刻苦钻研的精神。这次设计对于我们组来说,既是一次机遇,又是一次挑战。通过这次的设计,我学到了很多东西。通过自己的实践,增强了动手能力,掌握了系统的分析解决问题的方法。通过实际工程设计也使我了解到书本知识和实际应用的差别。在实际应用中遇到很多的问题,这都需要我对问题进行具体的分析,并一步一步地去解决它。13.1.5 源程序代码源程序代码

    20、#include#include#include 18b20.h#define uchar unsigned char#define uint unsigned int uchar m,k1,k2;uchar c,c1,c2,c3,t1,t2,t3,b;uint temp;uint temp_h=350,temp_l=250;void delay(uchar x);/x*0.14MS void display(uchar*tab1,uchar*tab2);void IR_IN();/*IO口定义 */sbit IRIN=P32;/红外接收器数据线 sbit LCD_RS=P10;sbit LC

    21、D_RW=P11;sbit LCD_EN=P12;sbit led=P13;/1602数据口接P0 uchar IRCOM7;uchar cdis1 =当前温度:-.-;uchar cdis2 =当前编码:-;uchar cdis21 =最高报警温度;uchar cdis22 =35.0 新:-.-;uchar cdis31 =最低报警温度;uchar cdis32 =25.0 新:-.-;/*/*/*写指令数据到LCD */*RS=L,RW=L,E=高脉冲,D0-D7=指令码。*/*/*/void lcd_wcmd(uchar cmd)LCD_RS=0;LCD_RW=0;LCD_EN=0;P

    22、0=cmd;LCD_EN=1;delay(50);LCD_EN=0;delay(50);/*/*/*写显示数据到LCD */*RS=H,RW=L,E=高脉冲,D0-D7=数据。*/*/*/void lcd_wdat(uchar dat)LCD_RS=1;LCD_RW=0;LCD_EN=0;P0=dat;LCD_EN=1;delay(50);LCD_EN=0;delay(50);/*/*/*LCD初始化设定 */*/*/void lcd_init()lcd_wcmd(0 x30);/16*2显示,5*7点阵,8位数据 lcd_wcmd(0 x0c);/显示开,关光标 lcd_wcmd(0 x06

    23、);/移动光标 lcd_wcmd(0 x01);/清除LCD的显示内容 /*/*/*显示函数 */*/*/void display(uchar*tab1,uchar*tab2)lcd_wcmd(0 x80);/设置显示位置为第一行的第1个字符 m=0;while(tab1m!=0)/显示字符 lcd_wdat(tab1m);m+;lcd_wcmd(0 x90);/设置显示位置为第二行第1个字符 m=0;while(tab2m!=0)lcd_wdat(tab2m);/显示字符 m+;/*延时函数*/void delay(unsigned char x)/x*0.14MS uchar i;whil

    24、e(x-)for(i=0;i=temp_h|temp=temp_l)led=0;else led=1;/else if(temp=tem_tl)/默认45度,继电器动作,等到温度降到35,继电器恢复 /led=1;/*红外数据接收和处理*/void IR_IN()interrupt 0 using 0 unsigned char j,k,N=0;EX0=0;delay(15);if(IRIN=1)EX0=1;return;/确认IR信号出现 while(!IRIN)/等IR变为高电平,跳过9ms的前导低电平 信号。delay(1);for(j=0;j4;j+)/收集四组数据 for(k=0;k

    25、=30)EX0=1;return;/0.14ms计数过长自动离开。/高电平计数完毕 IRCOMj=IRCOMj 1;/数据最高位补“0”if(N=8)IRCOMj=IRCOMj|0 x80;/数据最高位补“1”N=0;/end for k /end for j if(IRCOM2!=IRCOM3)EX0=1;return;IRCOM5=IRCOM2&0 x0F;/取键码的低四位 IRCOM6=IRCOM2 4;/右移4次,高四位变为低四位 if(IRCOM59)IRCOM5=IRCOM5+0 x37;else IRCOM5=IRCOM5+0 x30;if(IRCOM69)IRCOM6=IRCO

    26、M6+0 x37;else IRCOM6=IRCOM6+0 x30;/*(显示编码之后,测试译码,将编码转变成功能键)*/if(IRCOM5=C&IRCOM6=0)/遥控器中的0按键的编码是0 x0C,当接收的编码是0 x0c时显示1 c=1;b+;if(b=4)b=0;if(IRCOM6=5&IRCOM5=E)c=3;b+;if(b=4)b=0;if(IRCOM6=0&IRCOM5=8)c=4;b+;if(b=4)b=0;if(IRCOM6=1&IRCOM5=C)c=5;b+;if(b=4)b=0;if(IRCOM6=5&IRCOM5=A)c=6;b+;if(b=4)b=0;if(IRCOM

    27、6=4&IRCOM5=2)c=7;b+;if(b=4)b=0;if(IRCOM6=5&IRCOM5=2)c=8;b+;if(b=4)b=0;if(IRCOM6=4&IRCOM5=A)c=9;b+;if(b=4)b=0;if(IRCOM6=1&IRCOM5=6)c=0;b+;if(b=4)b=0;/if(IRCOM6=0&IRCOM5=7)k1+;k2=0;if(IRCOM6=1&IRCOM5=5)k2+;k1=0;if(IRCOM6=0&IRCOM5=9)k2=0;k1=0;/*测试译码end */cdis210=IRCOM5;cdis29=IRCOM6;if(k10&k2=0)if(b=1)

    28、t1=c;cdis229=c+0 x30;if(b=2)t2=c;cdis2210=c+0 x30;if(b=3)t3=c;cdis2212=c+0 x30;temp_h=t3+t2*10+t1*100;b=0;if(k20&k1=0)if(b=1)t1=c;cdis329=c+0 x30;if(b=2)t2=c;cdis3210=c+0 x30;if(b=3)t3=c;cdis3212=c+0 x30;temp_l=t3+t2*10+t1*100;b=0;EX0=1;/*/main()IRIN=1;/I/O口初始化 lcd_init();/初始化LCD IE=0 x81;/允许总中断中断,使

    29、能 INT0 外部中断TCON=0 x01;/触发方式为脉冲负边沿触发 while(1)/if(k10)b=0;lcd_wcmd(0 x01);/清除LCD的显示内容 cdis220=temp_h/100+0 x30;/显示十位cdis221=temp_h/10%10+0 x30;/显示个位cdis223=temp_h%10+0 x30;/显示0.1cdis229=-;cdis2210=-;cdis2212=-;while(1)display(cdis21,cdis22);if(k1=0)break;warr();if(k20)b=0;lcd_wcmd(0 x01);/清除LCD的显示内容cd

    30、is320=temp_l/100+0 x30;/显示十位cdis321=temp_l/10%10+0 x30;/显示个位cdis323=temp_l%10+0 x30;/显示0.1cdis329=-;cdis3210=-;cdis3212=-;while(1)display(cdis31,cdis32);if(k2=0)break;warr();if(k2=0&k1=0)lcd_wcmd(0 x01);/清除LCD的显示内容while(1)temp=ReadTemperature();/读温度cdis19=temp%1000/100+0 x30;/显示十位cdis110=temp%100/10

    31、+0 x30;/显示个位cdis112=temp%10+0 x30;/显示0.1display(cdis1,cdis2);if(k2!=0|k1!=0)break;warr();/end main#include 18b20.h#define uchar unsigned char#define uint unsigned int sbit DATA=P14;/DS18B20接入口/*延时子函数*/void Ddelay(uint num)while(num-);/*/*DS18b20设置*/Init_DS18B20()/传感器初始化 uchar x=0;DATA=1;/DQ复位 Ddelay

    32、(10);/稍做延时 DATA=0;/单片机将DQ拉低 Ddelay(80);/精确延时 大于 480us /450 DATA=1;/拉高总线 Ddelay(20);x=DATA;/稍做延时后 如果x=0则初始化成功 x=1则初始化失败 Ddelay(30);/读一个字节 ReadOneChar()uchar i=0;uchar dat=0;for(i=8;i0;i-)DATA=0;/给脉冲信号 dat=1;DATA=1;/给脉冲信号 if(DATA)dat|=0 x80;Ddelay(8);return(dat);/写一个字节 WriteOneChar(unsigned char dat)u

    33、char i=0;for(i=8;i0;i-)DATA=0;DATA=dat&0 x01;Ddelay(10);DATA=1;dat=1;Ddelay(8);/读取温度int ReadTemperature()uchar a=0;uchar b=0;int t=0;float tt=0;Init_DS18B20();WriteOneChar(0 xCC);/跳过读序号列号的操作WriteOneChar(0 x44);/启动温度转换Init_DS18B20();WriteOneChar(0 xCC);/跳过读序号列号的操作WriteOneChar(0 xBE);/读取温度寄存器等(共可读9个寄存

    34、器)前两个就是温度a=ReadOneChar();/低位b=ReadOneChar();/高位t=b;t=8;t=t|a;t=t*0.625;return(t);/*/13.2 超声波测距超声波测距 随着我国经济与社会的发展,交通安全日益成为人们不能忽视的问题。由于人口的大幅增长,机动车辆的大量增加,使得路况越来越复杂,车辆和行人所面临的危机也越来越大。根据中国汽车协会发布的数据,随着中国经济的高速发展和居民生活水平的不断提高,居民拥有汽车的数量已经有爆炸性上涨的趋势。随着汽车保有量的迅速增加以及城市市区的密集化,目前公路上、停车场上的汽车越来越多,交通也越来越拥挤,使得出现越来越多的交通事故

    35、,严重威胁着人民群众的生命和财产安全。由于道路空间的有限性,驾车穿行、拐弯、倒车等总次数不断增长,但是汽车驾驶员视野又是非常有限,故而碰撞和拖挂的事故时有发生,夜间因为视野的原因,使得撞车事故更为频发。因此汽车迫切的需要一种能够实时测距,并且能够给驾驶员提供警示的器件,汽车防撞报警器的研究有着很重要的现实意义和应用价值。如何利用现代高科技,开发出一种可用于汽车上的防撞报警器,具有很重要的现实意义。这种报警系统应该能够实时的测量车辆之间的距离,并且将所测得的数据显示在表盘上,以便于驾驶员根据路况进行判断。而且一旦车辆之间的距离超过了警戒距离,报警器应该立即采取警示措施,即采取蜂鸣器响,LED灯亮

    36、的形式对驾驶员发送警告敦促驾驶员立即采取应变措施,能够有效的解除驾驶员停车和起动车辆时前后左右探视所引起的困扰,并帮助驾驶员克服视野不足以及操纵困难的矛盾,大大的提高了行车出行安全性。该系统的硬件部分主要有单片机模块,超声波测距模块,1602显示模块和报警模块。软件部分利用C语言编程,严格定义了单片机和各部分电路的接口。并且将软件分成几个模块编写,极大的降低了难度和减少了时间。主要有超声波发射程序,距离计算程序,1602显示程序等,通过主程序来分别调用以完成测距和报警的目标。通过对报警系统的研究设计,进一步熟悉单片机系统的原理和应用,对C语言程序开发流程有更透彻的理解,并且在将程序与报警器硬件

    37、结合起来的过程中,强化了动手能力,强化了理论结合实际的能力,培养了独立思考和独立解决问题的能力。13.2.1 系统设计与分析系统设计与分析 1.超声波的测距原理 超声波是人耳听不到的一种声波,是一种频率高于20KHz的声波。通常频率高于20KHz的超声波不仅波长短、方向性好、能够成射线定向传播、纵向分辨率比较高、对色彩和光照度不敏感、对外界光线和电磁场不敏感,碰到界面就会有显著反射,而且能在有灰尘、烟雾、有毒等各种环境中稳定工作。它方向性好,穿透能力强,易于获得较集中的声能在水中传播距离远,可用于测距,测速,清洗,焊接,碎石、杀菌消毒等。在医学、军事、工业、农业上有很多的应用。因此在本设计中采

    38、用超声波发射器来实现测距的功能,经综合比较,基于超声波的汽车防撞报警系统的设计中,采用的是超声波频率为40KHz的超声波传感器。2.超声波发射器及其原理 超声波发射器一般可以分为两大类:一 类是用电气方式产生超声波,一类是用机械方式产生超声波。电气方式包括压电型、磁致伸缩型和电动型等;机械方式有加尔统笛、液哨和气流旋笛等。它们所产生的超声波的频率、功率和声波特性各不相同,因而用途也各不相同。超声波传感器是利用超声波的特性研制出的传感器,它必须能够发射超声波和接收超声波。具备这种功能的装置就是超声波传感器,习惯上称为超声波换能器,或者超声探头。超声波传感器主要制造材料有压电晶体及镍铁铝合金两类。

    39、这这类传感器适用于测距、遥控、防盗等用途。超声波应用有三种基本类型,透射型-用于遥控器,防盗报警器、自动门、接近开关等;分离式反射型-用于测距、液位或料位;反射型-用于材料探伤、测厚等。这里主要应用了超声波的测距功能,通过超声波来计算障碍物与小车之间的距离。目前较为常用的是压电式超声波发生器。压电式超声波发生器实际上是利用压电晶体的谐振来工作的。超声波发生器内部结构如下图13-10所示,它有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其产生的频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波 时,将压

    40、迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了。超声波实物正面图以及发射器原理图如图13-10所示。图图13-10 超声波实物正面图以及发射器原理图超声波实物正面图以及发射器原理图 3.声波测距算法设计 声波测距算法原理如图13-11所示。图图13-11 声波测距算法原理声波测距算法原理 通过超声波发射装置发出超声波,根据接收器接到超声波时的时间差就可以知道距离了。超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。(超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,

    41、就可以计算出发射点距障碍物的距离(s),即:s=340t/2)在实际使用中,超声波的声速会受到温度的影响,因此常常需要使用温度补偿模块,通过温度传感器测得外界的温度,再根据温度求得对应的声速值。在实际的运算中,要采用温度补偿后的温度值。但是,在对测量精度要求不高的情况下,温度补偿模块可以忽略,声速确定后,只要测得超声波往返的时间,可以根据公式计算出距离,这就是超声波测距的原理。超声波测距原理图如图13-12所示。图图13-12 超声波测距原理图超声波测距原理图 4.模块设计与原理 系统设计原理框图如图13-13所示。图图13-13 系统设计原理框图系统设计原理框图 全部模块都由STC89C52

    42、单片机控制整合,单片机在此处相当于一个微型计算机的功能,通过输入和输出的端口与传感器和显示器等外部端口交换信息,从而控制内部的操作能够按照流程实现功能。在C语言软件设计上,首先启动超声波发生模块,定义超声波发生接口为TX,然后驱动器推动探头产生超声波。发射的超声波在空气中传播,当遇到障碍物的时候发生反射回来,被超声波的接受探头所感知,在C语言设计程序中用RX表示超声波接收端。当接受到超声波反射信号时候,RX=1,此时定时器中断,根据时间计算公式求出时间,再根据距离计算模块算出距离大小。当障碍物的距离没有超出测量范围时,所测数据可以通过经C语言显示程序控制显示在LCD屏幕上,并通过判定程序程序(

    43、用if、else来实现)决定是否LED亮,蜂鸣器响,从而成功的实现防撞报警的功能。由系统软件控制把距离数据送到显示器进行显示。测试系统功能流程如下三个步骤:1)当距离在一个可测距离4cm到50cm时,LCD1602显示距离,显示橙色灯。如图13-14所示。图图13-14 可测距离可测距离4cm到到50cm 2)我们模拟若距离小于预先设置的4cm时,进行声光报警。如图13-15所示。图图13-15 距离小于预先设置的距离小于预先设置的4cm 3)当距离大于50cm时,LCD显示Satay,并且闪绿灯。如图13-16所示。图图13-16 距离大于距离大于50cm 5.超声波发射部分的设计 本系统主

    44、要由单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分组成。采用STC89C52来实现对CX20106A红外接收芯片的控制,单片机通过P2.3.引脚经反相器来控制超声波的发送。测距系统中的超声波传感器采用的是陶瓷传感器,它的工作电压是40kHz的脉冲信号。超声波发射器包括超声波反射电路与超声波发射控制电路两个部分,超声波探头的型号为CSB40T。超声波接收端口设置为P2.4,当接收到超声波返回信号时,RX置1从而中断计数器。通过输出引脚输入到驱动器,经过驱动器驱动探头后可以产生超声波,这种方法方便快捷能够极大的节省时间。输出端采用两个反向器并联,用以提高驱动能力。上拉电阻 R10、

    45、R20一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声波换能器的阻尼效果,缩短其自由振荡的时间。6.超声波接收电路的设计 超声波接收器的设计,大致分为三个部分,分别是超声波接受探头、信号放大电路和波形变换电路三个部分,按照测距的原理,单片机需要的只是第一个回波的时刻,接收电路的设计可以采用通用电路才实现。因为超声波模块电路设计的成熟,超声波的接收电路可以采用现成的电路模块来节约时间和提高效率。目前较为通用的是采用CX20106A的集成电路,集成电路可以有效的节省空间,并且实践证明这种集成电路是目前较为成熟和可靠地设计。13.2.2 系统硬件的设计系统硬件的设计 系统的

    46、硬件部分的设计主要包括单片机系统,以及1602液晶显示器分和超声波接收器、超声波发射器三个部分组成。单片机采用STC89C52系列。采用12MHZ高精度的晶振,从而获得精确的时钟频率,有效的减少测量误差。C语言程序控制启动模块,产生超声波,由P2.3端口输出,超声波接收电路的输入返回信号对外中断进行控制。P2.4端口用来接收超声波,P0端口用来向LCM传输数据,可以用C语言定义为 LCD_Data,P3.0和P1口分别连接蜂鸣器和LCD报警电路。显示电路采用较为简便的1602液晶显示器,1602是指显示的内容为16*2,即可以显示两行,每行16个字符。1062的RS、RW、E口分别与单片机的P

    47、2.5、P2.6、P2.7连接。系统电路图如图13-17所示。图图13-17 系统电路图系统电路图 1.单片机选择与说明 单片机种类很多,本系统采用的是STC89C52单片,及其相同系列的芯片皆可。根据本系统需要实现的功能,按照节约成本和节约开发时间的原则,选择功耗低、性能高的STC89C52单片机。2.各模块电路的设计 该系统的硬件部分由STC89C52单片机主控,包含USB电源模块,复位电路模块,LCD显示电路模块,声光报警模块。单片机采用STC89C52或其兼容系列,采用12MHz高精度的晶振,以获得较稳定的时钟频率,减小测量误差。单片机使用P2.3端口输出超声波,使用P2.4接收超声波

    48、,系统由USB提供全部电源,再由晶振发出信号整个系统开始工作,此时单片机由程序控制对超声波发射器发出信号,然后由超声波接收器接收到的信号传入单片机进行处理。USB电源供电电路如图13-18所示。图图13-18 USB电源供电电路电源供电电路此电源模块为整个系统提供一个比较稳定的供电来源,是系统能够顺利的运行实现其功能,此USB提供的是510%的直流电源。图图13-19 蜂鸣器报警电路蜂鸣器报警电路蜂鸣器报警电路图如图13-19所示。LCD显示电路图如图13-20所示。图图13-20 LCD显示电路显示电路 图13-20采用的是1602LCD显示器,此显示模块比LED显示模块更加丰富,显示内容更

    49、加完善,使显示的数据让人一目了然,增加倒车防撞系统的直观的数据显示效果。所谓1602是指显示的内容为16*2,即可以显示两行,每行16个字符。超声波测距报警器仿真电路图如图13-21所示。RSRWED0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D7ERWRSTXQUK2K1QUK1K2RXL1L2L4L5L6L7L8L3L1L2L3L4L5L6L7L8XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.

    50、0/T21P1.1/T2EX2P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C52X112MC130pFC230pFC310uFR110kD714D613D512D411D310D29D18D07E6RW5RS4VSS1VDD2VEE3LCD1LM016L50%

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:[工学]单片机的课程设计综合应用实例课件.ppt
    链接地址:https://www.163wenku.com/p-5102246.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库