您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 基于89c51单片机的智能超声波避障小车
桂林电子科技大学接口实验报告接口实验课程结课论文学号、专业:姓名:论文题目:指导教师:所属学院:成绩评定教师签名桂林电子科技大学研究生院2014年7月1日桂林电子科技大学接口实验报告第1页引言现今发达的交通在给人们带来便捷的同时也带来了许多的交通事故。发生交通事故的因素有很多。当然,如果我们的汽车能够更加智能,就是说事先能预测并显示前面障碍物离车的距离,当障碍物距离很近时汽车会自动采取一些措施避开障碍物,这样就能够在很大程度上避免这些事故的发生。第一章总体方案概述本小车使用一片AT89c52单片机作为主控芯片;用HC-SR04超声波模块来探测前方障碍物的距离,用单片机P3.1口送出大于10us的高电平,P3.0用来检测回波,用单片机定时中断计算超声波来回经历的时间,这样可以通过距离计算公式求得前方障碍物的距离;LCD1602液晶屏用来显示距离;L298驱动芯片用来驱动两个直流电机,在单片机P1口控制L298的IN1,IN2,IN3,IN4的高低电平来控制两个直流电机的正反转,并且在P1口输出PWM波,控制车子的行驶速度;选用ISD1760语音芯片实现语音播报功能,主要采用独立按键方式,进行语音的录放,用单片机的P2.4口控制语音的播放。本系统设计的简易智能小车分为几个模块:系统控制模块,测距模块,驱动模块,显示模块,语音播报模块以及电源模块。以上相关模块的具体描述如下:系统控制模块:单片机STC89C52RC;测距模块:HC-SR04超声波测距;驱动模块:芯片L298及其相关逻辑电路;显示模块:LCD1602及其外围电路语音播报模块:芯片ISD1760及其录放音电路;电源模块:4节1.5伏的锂电池它们之间的相互关系如下图1所示。单片机控制模块液晶显示模块直流电机驱动模块超声波测距模块语音播报模块桂林电子科技大学接口实验报告第2页图1智能小车简要原理框架图第二章硬件电路设计2.1单片机控制模块此模块控制着超声波测距模块、液晶显示模块、直流电机驱动模块、语音播报模块的工作。单片机通过计时器记录超声波发射和接受的时间差计算出小车距离障碍物的距离,控制P0口的高低电平来控制液晶显示,通过输出PWM波来控制直流电机的工作,通过按键方式来控制语音芯片的定点放音,实现语音播报功能。2.1.1STC89C52RC单片机特性及管脚说明STC89C52RC单片机是宏晶科技公司生产的一款单片机。其引脚图如下:EA/VPP31XTAL119XTAL218RST/VPD9P3.7/RD17P3.6/WR16P3.2/INT012P3.3/INT113P3.4/T014P3.5/T115P1.0/T1P1.1/T2P1.23P1.34P1.45P1.56P1.67P1.78P0.039P0.138P0.237P0.336P0.435P0.534P0.633P0.732P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29ALE/PROG30P3.1/TXD11P3.0/RXD10Vcc40Gnd20AT89S5XU2AT89S5XVCCVCCP10P11P12P13P14P15P16P17P00TRIGECHOMOSOMOSISCLKSSRSRWEPLAYP32P33P34P35P36P37P01P02P03P04P05P06P07RSTXTAL1XTAL2GNDVCC(40脚):电源端VSS(20脚):接地端P0:P0口是一个漏极电路的双向I/O口。可以将P0口用作可驱动TTL负载的输出口。也可用作高阻抗输入,但是必须先对其写入1。P0口最常用的是作为输出口,可以通过上拉电阻外接负载和电源P1:P1端口与P0口的功能及用法类似,只不过P1端口内部含有上拉电阻。P1口用作输入端口时,必须首先对其写1P2端口:P2口功能及用法与P1口类似P3端口:P3口基本功能及使用同P2口。下面介绍其复用功能:P3.0:RXD—用作串口输入端桂林电子科技大学接口实验报告第3页P3.1:TXD—用作串口输出端P3.2:作为单片机的外部中断0输入P3.3:作为单片机的外部中断1输入P3.4:定时器TO的输入端P3.5:定时器T1的输入端P3.6:单片机写使能端P3.6:单片机读使能端RST(9脚):用作单片机的复位信号输入端。只有该引脚检测到大于两个机器周期的高电平脉冲信号时,单片机才会进行复位操作ALE(30脚):当单片机访问外部程序存储区时,该引脚输出脉冲信号对存储区地址低8位进行锁存。同时该引脚也可用作FLASH编程的脉冲输入端PSEN(29脚):当单片机STC89C52RC从读取外部程序寄存器的程序并执行程序时需要将该引脚设为低电平使能状态EA/VPP(31引脚):该引脚控制单片机访问程序区的选择,当对外部程序区进行访问时需将该引脚拉低。如果只对内部程序存储区进行访问,那么应将该引脚置高为1XTAL1(19引脚):该因引脚是单片机时钟振荡器即晶振的输入端口XTAL2(18引脚):单片机时钟振荡器的反相输入端,与XTAL1—起与晶振连接作为单片机的时钟脉冲输入2.1.2单片机复位电路10KR310uFC1VCCGNDRST上电复位:当系统上电时,VCC电源端将对电容C1充电,电容保存电荷后会呈现电池状态,单片机的第9引脚被输入高电平,单片机实现上电复位;手动复位:在系统上电状态下,按下按键S5时,电源VCC通过电阻R3连接到单片机第9引脚复位端,直接对单片机复位端提供高电平,从而实现手动复位。本系统电路采用的是上电复位电路。2.1.3单片机时钟电路桂林电子科技大学接口实验报告第4页20pFC320pFC212Y1XTALXTAL2XTAL1GND单片机采用12MHZ晶振,Y1的两端直接连接到单片机的XTAL1和XTAL2两个引脚,对单片机提供振荡源。两个电容C2和C3(均为20pf)起到滤波和滤尖峰的作用,保护晶振工作在正常状态。2.2直流电机驱动模块L298驱动芯片用来驱动两个直流电机,让小车动起来。其原理图如下所示。GNDIN15IN27IN310IN412ENA6ENB11GND8VSS9VS4OUT12OUT23OUT313OUT414SENSEA1SENSEB15U1OUT2OUT3OUT4OUT1D2A-+MG1D5D1VCCD6VCCGNDA-+MG2GNDD3D4D7D8VCCOUT3OUT4OUT1OUT2P11P12P13P10P14P15L298N是SGS公司的产品,其内部包含4通道逻辑驱动电路,由L298N构成的PWM功率放大器的工作形式为单极可逆模式,L298可驱动2个电机,OUT1,OUT2和OUT3,OUT4之间分别接2个电动机。5,7,10,12脚接输入控制电平,控制电机的正反转,ENA,ENB接控制使能端,控制电机的停转。由于电源电压的波动,以及电路节点电压的不稳定,直流电机外围电路中接有稳压二极管,用来保护电路,使得电机两端电压稳定,小车行驶过程平稳。下图2为L298芯片输入输出关系。ENAIN1IN2电机运行状况HHL正转HLH反转HIN2IN1快速停止LXX停止图2L298芯片输入输出关系下面介绍L298芯片各引脚功能:桂林电子科技大学接口实验报告第5页SENSEA(1)和SENSEB(15):该引脚通过检测电阻连接到地,对L298的电压值进行检测,如果超出设定值,则该引脚将ENA端拉低,禁止L298OUT1(2)和OUT2(3):该两引脚是L298的电压输出端,用来驱动负载VS(4):直流电动机驱动电源输入端口N1(5)和IN2(7):L298的内部驱动电路的输入端,当IN1=1,IN2=0时,OUT1为输出电压正极,0UT2为负极ENA(6)和ENB(11):L298的驱动使能端。当该引脚为高电平时,L298为使能状态,正常输出工作电压;当该引脚为低电平时,L298为禁止状态,无输出工作电压GND(8):与地连接,散热作用VSS(9):L298逻辑控制电路的电源接入端,一般接+12V直流电压IN3(10)和IN4(12):L298的内部驱动电路的输入端,当IN3=1,IN4=0时,OUT3输出电压正极,0UT4为负极OUT3(13)和OUT4(14):该两引脚是L298的电压输出端,用来驱动负载2.3超声波测距模块HC-SR04超声波模块,VCC供5V电源,GND为地线,TRIG触发控制信号输入,ECHO回响信号输出等四个接口端。单片机提供一个10uS以上脉冲触发信号,该模块内部将发出8个40kHz周期电平并检测回波。一旦检测到有回波信号则输出回响信号。由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。公式:uS/58=厘米;或者,距离=高电平时间*声速(340M/S)/2。该小车电路板引出4个引脚的排针,分别接GND,VCC,Trig,Echo。GNDTRIGECHO1234P4Header4VCC触发信号子函数:voidtrigger()//超声波触发信号,触发电平110us{trig=1;delay(1);trig=0;}距离计算公式:distance=3453*distance/20000//单位:us右边的distance为中断求出来的时间,左边的distance为计算的距离。桂林电子科技大学接口实验报告第6页2.4液晶显示模块采用LCD1602液晶显示屏,单片机的P0口接8位数据总线,P2口的5,6,7分别控制液晶的数据指令rs,读写rw,使能信号e。滑动变阻器R1,阻值10K,用来调整背光。R2的阻值不能选的太大了,几百欧就可以,否则液晶的亮度偏暗。该模块的作用就是实时的将超声波测得的距离给显示出来。GND1VCC2VO3RS4RW5E6DB07DB18DB29DB310DB411DB512DB613DB714BGVCC15BGGND16LCD1602LCD1GNDVCCRSRWEGNDP00P01P02P03P04P05P06P071kR2GNDVCCR1POT1图3液晶显示电路2.5语音播报模块ISD1760各引脚及其功能说明如下:VCCD(1):数字电源LED(2):LED指示信号输出RESET(3):芯片复位MISO(4):SPI接口的串行输出。在SCLK的下降沿半个周期之前把数据送到MIS端,之后在SCLK的下降沿移出。MOSI(5):SPI接口的数据输入端口。主控制芯片在SCLK上升沿之前的半个周期将数据放置在MOSI端。数据在CLK上升沿被锁存在芯片内。此管脚在空闲时,应该被拉高SCLK(6):SPI接口的时钟。由主控制芯片产生,并且被用来同步芯片MOSI和SCLK627MIS端各自的数据输入和输出。此管脚空闲时,必须拉高/SS(7):为低时,选择该芯片成为当前被控制设备并且开启SPI接口。空闲时,需要拉高VSSA(8):模拟地Anain(9):片录音或直通时,辅助的模拟输入。需要一个交流耦合电容(典型0.1uF),并且输入信号的幅值不能超出1.0Vpp。APC寄存器的D3可以决定Analn信号被立刻录制到存桂林电子科技大学接口实验报告第7页储器中,与Mic信号混合被录制到存储器中,或者被缓存到喇叭端并经由直通线路从AUD/AUX输出。MIC+(10):麦克风输入+MIC-(11):麦克风输入-VSSPA(12):负极PWM喇叭驱动器地喇叭输出-SP-(13):PWM喇叭驱动器电源VCCP+(14):喇叭输出+SP-(15):正极PWM喇叭驱动器地VSSP1(16):辅助输出,决定于APC寄存器AUD/AUX(17):D7,用来输出一个AUD或AUX输出。AUD是一个单端电流输出,而AuxOut是一个单端电压输出。他们能够被用来驱动一个外部扬声器。出厂默认设置为AUD。APC寄存器的D9可以使其掉电AGC(18):自动增益调/VOL(19):音量控制ROSC(20):振荡电阻ROSC用一个电阻连接到地,决定芯片的采样频率VCCA(21):模拟电路电源/FT(22):在独立芯片模式下,当FT一直为低,Analn直通线路被
本文标题:基于89c51单片机的智能超声波避障小车
链接地址:https://www.777doc.com/doc-5445740 .html