当前位置:首页 > 邱磊3100403108-电信101-汽车防撞报警系统设计 - 图文
第2章 系统体系结构
2.1 系统构成
汽车防撞报警系统是以AT89C51单片机为控制核心,实现汽车倒车时自动检测车与障碍物的距离,在液晶显示距离的同时,并能通过喇叭进行语音距离播报。当汽车与障碍物之间的距离小于警戒距离时,进行语音报警。警戒距离可以根据自己的偏好进行设置。根据系统设计要求,将汽车防撞报警系统分为五个模块,由控制模块、超声波测距模块、液晶显示模块、语音播报模块、按键设置模块组成。如图2.1所示。
12864液晶显示模块障碍物HC-SR04超声波测距模块单片机(AT89C51)按键设置模块语音播报模块
图2.1 系统框图
2.2设计方案选择
2.2.1 控制模块
控制模块主要用于对距离测量信号的接受和处理、控制显示电路对距离值实时显示、控制语音模块实时播报距离以及控制键盘实现对警戒值的设定等。
本设计控制器选用AT89C51单片机,它具有编程灵活、算术运算功能强、自由度大,可用软件编程实现各种算法和逻辑控制,它还有功耗低、成本低、体积小等优点。AT89C51单片机将多功能8 位CPU 和闪烁存储器组合在单个芯片中,是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。AT89C51 封装图如图2.2 所示。
4
图2.2 AT89C51 封装图
1.主要特性:
89C51CPU 与MCS-51 兼容
4K 字节可编程FLASH 存储器(寿命:1000 写/擦循环) 全静态工作:0Hz-24KHz 三级程序存储器保密锁定 128×8 位内部RAM 32 条可编程I/O 线 两个16 位定时器/计数器 5 个中断源[3] 2.管脚说明: VCC:供电电压。 GND:接地。
P0 口:它是一个8 位漏级开路双向I/O 口,每脚可以吸收8TTL 门电流。当P1 口的管脚第一次被写1 时,它被定义成高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH 编程时,P0 口作为原码输入口,当FIASH 进行校验时,P0 输出原码,此时P0 外部必须被拉高。 P1 口:P1 口是一个内部提供上拉电阻的8 位双向I/O 口,P1 口缓冲器能接收输出4TTL 门电流。P1 口管脚写入1 后,被内部上拉为高,可用作输入,P1 口
5
被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH 编程和校验时,P1 口作为第八位地址接收。
P2 口:P2 口为一个内部上拉电阻的8 位双向I/O 口,P2 口缓冲器可接收,输出4 个TTL 门电流,当P2 口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在FLASH 编程和校验时接收高八位地址信号和控制信号。
P3 口:P3 口管脚是8 个带内部上拉电阻的双向I/O 口,可接收输出4 个TTL 门电流。当P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。P3 口也可作为AT89C51 的一些特殊功能口,如下所示: 口管脚备选功能
P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(记时器0 外部输入) P3.5 T1(记时器1 外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通)
P3 口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。当振荡器复位器件时,要保持RST 脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,
6
将跳过一个ALE 脉冲。如想禁止ALE的输出可在SFR8EH 地址上置0。此时,ALE 只有在执行MOVX,MOVC指令是ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE 禁止,置位无效。
/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN 信号将不出现。
/EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),无论是否具有内部程序存储器。注意加密方式1 时,/EA会把内部锁定成RESET;当/EA 端为高电平时,则在此期间内部程序存储器。当在FLASH 编程的时候,该引脚也常用于施加12V 编程电源(VPP)。
XTAL1:反向振荡放大器的输入和内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出[4]。
2.2.2 测距模块
测量距离的关键在于距离信号的采集,因此选择一个合适的测距传感器是本次设计的重点所在。
方案一 超声波传感器测距
HC-SR04超声波传感器可用于非接触型测量,测量距离范围为2-450厘米,精度可达0.3厘米,盲区只有2厘米,受温度影响小。此超声波测距传感器模块性能稳定,能和国外的SRF05,SRF02等超声波测距模块相媲美。此模块使用方法简单,只要给控制口发一个10US以上的高电平,就可以在接收口等待高电平输出,一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此值就为此次测距的时间,很容易算出距离。
方案二 红外传感器测距
红外传感器用于非接触型测量,测量距离较短,最远只能测1.5米,精度不高。另外受光线的影响比较大。价格略贵于超声波传感器模块。
方案三 激光传感器测距
激光测距传感器功能十分强大、并且耐用,是为工业测量市场量身设计的。它拥有很多卓越的性能,是目前为止最先进的检测系统,它拥有具有十分不错的
7
共分享92篇相关文档