基于单片机公交车语音报站器设计内容摘要:

的元件,目的是使系统达到一个低成本、高质量、稳定可靠的设计。 系统设计结构图 根据系统设计的要 求和设计思路,确定该系统的系统设计结构图。 如图 所示。 硬件电路主要由 MCU 微处理控制器单元、 LCD 液晶显示模块、语音芯片、功放、按键控制、实时时钟电路、晶振电路、串口部分等电路组成。 图 系统结构设计图 根据设计要求, 结合实际情况和设计成本要求,对 系统主要部分的电路方案 叙述如下。 MCU微处理控制器的方案对比选择 方案一: MCU 微处理控制器的种类很多,有 ATMEL 公司生产的 AT89SXX 系列单片机,其中有 8 位的单片机,也有 16 位的单片机。 AT89S52 为 8 位的单片机,它是一种低损耗、高性能 的 CMOS 微处理器,片内有 8K 字节的存储空间, 128 字节RAM、 4 个 8 位并口、 1 个全双工串行口、 2 个 16 位定时 /计数器,寻址范围 64K。 并且 可以在线进行重复编程、快速擦除、快速写入程序,能重复擦除 / 写入 1000 次左右 ,数据保存时间为十年。 贵州大学本科毕业论文 (设计 ) 第 4 页 方案二:微处理控制器也有凌阳公司生产的 ,同 样有 8 位的 CPU 和 16 位的 CPU。 它 也有很多特点,比如: 体积小 、 集成度高 、 可靠性好 、 易于扩展 ; 具有较强的中断处理能力 ; 功能强、效率高的指令系统 及 低功耗、低电压。 但是其应用领域主要是为控制处 理数据处理以及数字信号处理等领域 ,其中 凌阳的 16 位单片机就是为适应这种发展而设计的。 综上所述,在本设计中,考虑到本人对单片机的运用熟练度和单片机的功能领域,选择 ATMEL 公司生产的 AT89S52 单片机作为本设计的微控制器。 LCD液晶显示模块的方案对比选择 方案一:显示的方法有很多种,其中 LED 数码管是常用的一种显示方法。 在这个设计中,可以用 LED 数码管 来 显示 相应 站台的站号, 提醒 司机 知道 是去向或者 是回向的第几站,让司机心里有数,同时增加显示数字的可读性。 该设计中,显示站号至少要 2 个 LED 数码 管,显示时间信息要 12 个,显示星期信息要 1 个,总共需要15 个 LED 数码管。 单价是 元,那 15 个共需要 15 =18(元)。 另外 在 PCB布线 过程 中很困难,给设计带来很不方便的使用。 方案二: LCD1602 液晶显 示 器是一块价廉物美的器件,其体积小,控制简单,使用方便。 它能显示 2 行 16 列的数字或英文信息,另外连接它 的 线很少,只要 8 根数据线和 3 根控制线,这样给使用带来很大的方便,节约单片机 I/O 口。 市场上一块LCD1602 的价格也只在 15 元左右,比数码管便宜。 方案三:功能强大、可以显示中文文字的 LCD12864 液晶显示器,其价格贵,体积大,控制比 LCD1602 稍微复杂点,但是使用也是很方便的。 在控制使用上,需要8 根数据线和 3 根控制线,其余的 PSB、 RST 和 BLA 直接与 VCC 相连接。 但是在本设计中使用它的性价比不高,体积大,占用覆铜板面积 大 ,而且笨拙。 综上所述,在 LCD 液晶显示模块上,选择方案二中的 LCD1602 液晶显示器 作为本设计的显示模块。 显示时间、星期、去向或者 是 回向的 站号 信息,方便司机读取其上面的信息知道目前的 实时 情况。 语音芯片的方案对比选择 方 案一: 台湾公司 生产的 APR9600 语音录放芯片 ,是 采用模拟存储技术的一款音质好、低噪音、不怕断电、可反复录放的新型语音 芯片 ,单片可录放 3260 秒,串行控制时可分 256 段以上,并行控制时最大可分 8 段。 与 ISD 同类芯片相比它具有:贵州大学本科毕业论文 (设计 ) 第 5 页 价格便宜,有多种手动控制方式,分段管理方便、多段控制时电路简单、采样速度及录放音时间可调、每个单键均有开始停止循环多种功能等特点,同时保留了 ISD2500芯片的一些特点,都是 DIP28 双列直插塑料封装,在管脚排列上也基本相同。 方案二: 美国 ISD 公司 生产 的 ISD2500 系列 芯片,按录 放时间 60 秒、 75 秒、 90秒和 120 秒 可 分成 ISD2560、 257 2590 和 25120 四 种。 ISD2500 系列语音电路具有抗断电、音质好,使用方便 以及使用 语音还原技术和自动静噪功能强 等优点。 它的最大特点在于片内 有 E2PROM 容量为 480K 的存储空间 ,所以录放时间长; 同时由于E2PROM 可以电擦除, 所以 次芯片 可以随录、随放,任意改写或删除,不需专用的语言固化开发系统进行编程和烧录 ; 重复录音次数为 1 万次以上,录放的信息可以保存l0 年以上,断电后信息不会丢失。 它 有 10 个地址输入端,寻址能力可达 1024 位;最多能分 600 段;设有 OVF(溢出)端,便于多个器件级联。 综上所述,结合本设计的需要及控制情况,选择方案二最好。 台湾公司 生产的APR9600 语音录放芯 片和 美国 ISD 公司的 ISD2590 语音录放 芯片 相比,相同点 都是DIP28 双列直插塑料封装,在管脚排列上也基本相同 , +5V 电源供电,可以不加功放直接外接驱动扬声器。 但是不同点是 ISD2590 的录放时间为 90s,在本设计中需要录音时间长点的,利于每个站台的录音和报站;另外,在控制上, ISD2590 可以直接通过地址的方式查询录音信息并通过扬声器报放录音信息;最后也是 最重要的, ISD2590具有录音结束标志 EOM ,当录音结束后,单片机可以通过读取该标志产生中断信号,使 CE 、 PD 置高电平,从而控制 ISD2590 进入不工作节能状态。 实时时钟电路的方案对比选择 方案一: DS1302 是美国 DALLAS 公司推出的一种高性能、低功耗、带 RAM 的实时时钟电路 芯片 ,它可以对年、月、日、 星期 、时、分、秒进行计时,具有闰年补偿功能,工作电压为 ~。 采用三线接口与 CPU 进行同步通信 ,并可采用突发方式一次传送多个字节的时钟信号或 RAM 数据。 DS1302 内部有一个 318 的用于临时性存放数据的 RAM 寄存器。 DS1302 是 有 主电源 /后背电源双电源引脚, 可以 同时对后背电源进行涓细电流充电。 方案二: DS12887 也是 是美国 DALLAS 半导体公司最新推出的串行接口实时时钟芯片 , 采用 CMOS 技术制成 , 内部具有晶振和时钟芯片备份锂电池。 采用 DS12887芯片设计的时钟电路无需任何外围电路和器件 , 并具有良好的微机接口。 DS12887贵州大学本科毕业论文 (设计 ) 第 6 页 芯片具有微功耗 、 外围接口简单 、 精度高 、 工作稳定可靠等优点 , 可广泛用于 各种需要较高精度的实时时钟系统中。 但是由于它是串行接口的,外接单片机需要接很多引脚,才能对它达到一个很好的控制。 综上所述,结合本设计的实际问题及单片机的 I/O 口线,选择方案一中的 DS1302作为本设计的实时时钟电路的芯片。 其控制方便、占单片机 I/O 口线少、体积小、价格便宜,方便本设计的使用。 串口部分的方案选择 AT89S52 单片机有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通讯。 但是 进行串行通讯时 需 要满足一定的条件,比如电脑的串口是RS232 电平的,而单片机的串 口是 TTL 电平的,两者之间必须有一个电平转换电路,在本设计中采用了专用芯片 MAX232 进行电平转换 ,它 是 美信公司专门为电脑的RS232 标准串口 芯片 设计的接口电路 芯片, 使用 +5V 单电源供电。 贵州大学本科毕业论文 (设计 ) 第 7 页 第三章 系统的硬件设计 电 路及元件说明 本章根据系统设计结构图来对每个部分的电路进行分析和说明,重点讲述微控制器 AT89S5语音芯片 ISD2590、液晶显示模块 LCD160实时时钟芯片 DS1302和串口部分的 MAX232 芯片。 该系统中 AT89S52 是核心器件,系统的设计原理图如附录 二 所示。 MCU微 控制器电路 AT89S52 的塑封图 如图 所示,它为 DIP40 双列直插塑料封装。 AT89S52 作为系统的核心控制元件,只有它能正常工作后才能使其它的元件进入正常工作状态。 因此,下面对 AT89S52 进行必要的说明, AT89S52 的管脚如图 所示。 图 AT89S52的塑封图 图 AT89S52的管脚图 1) VCC: 40 脚,供电电压,一般接 +5V 电压。 2) GND: 20 脚, 接 工作 地。 3) P0 口: 1~ 8 脚, P0 口是一个 8 位漏极开路的双向 I/O 口。 作为 输出口,每位能驱动 8 个 TTL 逻辑电平。 对 P0 端口写“ 1”时,引脚用作高阻抗输入。 贵州大学本科毕业论文 (设计 ) 第 8 页 当访问外部程序和数据存储器时, P0 口也被作为低 8 位地址 /数据复用。 在这种模式下, P0 具有内部上电阻。 但是 P0 口在程序校验 作为 输出指令字节 时 ,需要外部加上拉电阻,一般上 拉 电阻选 ~ 10K 为宜。 本设计中用 的排阻对 P0 口进行上拉电平。 4) P1 口: 32~ 39 脚, P1 口是一个内部 具有 上拉电阻的 8 位双向 I/O 口, P1 口缓冲器能接收输出 4 个 TTL 门电流。 P1 端口 写入 “ 1” 后,被内部上拉 电阻把端口拉高 , 此时可以作为 作输入 口使用。 作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。 5) P2 口: 20~ 27 脚, P2 口是一个具有内部上拉电阻的 8 位双向 I/O 口, P2 输出缓冲器能驱动 4 个 TTL 逻辑电平。 对 P2 端口写“ 1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。 6) P3 口: 10~ 17 脚, P3 口是一个具有内部上拉电阻的 8 位双向 I/O 口, P3 输出缓冲器能驱动 4 个 TTL 逻辑电平。 对 P3 端口写“ 1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。 7) RESET: 9 脚, 复位输入 端。 当振荡器复 位器件时,要保持 RST 脚两个机器周期的高电平时间。 8) PALE/ : 30 脚, 当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。 在 FLASH 编程期间,此引脚用于输入编程脉冲。 在平时, ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。 因此它可用作对外部输出的脉冲或用于 系统校验。 9) PSEN: 29 脚, 外部程序存储器的选通信号。 10) VPRST/ : 31 脚,访问外部程序存储器控制信号。 当 EA 为 低电平时, 读取外部程序存储器;当 EA 端 为 高电平时,则 读取 内部程序存储器 ,设计中一般接高电平。 11) XTAL1: 19 脚, 振荡器反相放大器和内部时钟发生电路的输入端。 如采用外部时钟源 时, XTAL1 为输入端。 12) XTAL2: 18 脚, 振荡器反相放大器的输出端。 如采用外部时钟源 时 , XTAL2应悬空不接。 贵州大学本科毕业论文 (设计 ) 第 9 页 LCD液晶显示 电路 液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在 各种小系统中得到了更广泛的应用。 本设 计中使用的液晶显示模块是 LCD1602。 图 所示为本设计 LCD1602 的连接图。 图 LCD1602的连接图 LCD1602 是 一种用 5x7 点阵图形来显示字符的液晶显示器模块 ,它 显示的 容量为 2 行 16 个字。 其实物 如图 和图 所示,它 的 显示内容丰富 、 体积小、美观和易于控制都是本设计选择作为显示模块的原因。 其引脚结构图如图 所示。 贵州大学本科毕业论文 (设计 ) 第 10 页 图 LCD1602正面图 图 LCD1602反面图 图 LCD1602引脚结构图 关于 LCD1602 的引脚说明如下: 1) 第 1 脚: GND 为地电源。 2) 第 2 脚: VCC 接 +5V 电源。 3) 第 3 脚: VEE 为液晶显示器对比度调整端。 接 +5V 电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生 “ 鬼影 ” ,使用时可以通过一个 10K 的 精密 电位器调整对比度 ,一般对比电压为 左右。 4) 第 4 脚: RS 为寄存器选择。 高电平时选择数据寄存器 , 否则 选择指令寄存器。 贵州大学本科毕业论文 (设计 ) 第 11 页 5) 第 5 脚: RW 为读写信号线。 高电平时进行读操作,低电平时进行写操作。 当 RS 和 RW 共同为低电平时可 以写入指令或者显示地址,当 RS 为低电平 RW 为高电平时可以读 出 忙信号,当 RS 为高电平 RW 为低电平时可以写入数据。 6) 第 6 脚: E 端为使能端。 当 E 端由高电平跳变成低电平时,液晶模块执行命令。 7) 第 7~ 14 脚: D0~ D7 为 8 位双向数据线。 8) 第 15 脚: 背光灯 VCC,一般直接和 +5V 电源相连接。 9) 第 16 脚 :背光灯 GND。 LCD1602 液晶模块内部的字符发生存储器已经存储了 160 个不同的点阵字符图形 ,这些字符 图 有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母 “ A” 的代码是 01000001B( 41H),显示时模块把地址 41H 中的点阵字符图形显示出来,我们就能看到字母“ A”。 LCD1602 液晶模块内部的控制器共有 11 条控制指令,如表 所示。 表 控制 指令表 指令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 清显示 0 0 0 0 0 0 0 0 0 1 光标返回 0 0 0 0 0 0 0 0 1 * 置输入模式 0 0 0 0 0 0 0 1 I/D S 显示开 /关控制 0 0 0 0 0 0 1 D C B 光标或字符移位 0 0 0 0 0 1 S/C R/L * * 置功能 0 0 0 0 1 DL N F * * 置字符发生存贮器地址 0 0 0 1 字符发生存贮器地址 置数据存贮器地址 0 0 1 显示数据存贮器地址( ADD) 读忙标志或地址 0 1 BF 计数器地址( AC) 写数到 CGRAMD 或 DRAM 1 0 要写的数 从 CGRAMD 或 DRAM 读数 1 1 读出的数据 它的读写操作 、屏幕和光标的操作都是通过指令编程来实现的(说明: 1 为高电平 , 0 为低电平)。 指令 1:清显示,指令码 01H, 光标复位到地址 00H 位置。 贵州大学本科毕业论文 (设计 ) 第 12 页 指令 2:光标复位,光标返回到地址 00H。 指令 3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移。 S: 屏幕上所有文字是否左移或者右移。 高电平表示有效,低电平则无效。 指令 4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示。 C:控制光标的开与关,高电平表示有光标,低电平表示无光标。 B:控制光标是否闪烁,高电平闪烁,低电 平不闪烁。 指令 5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。 指令 6:功能设置命令 DL:高电平时为 4 位总线,低电平时为 8 位总线。 N:低电平时为单行显示,高电平时双行显示。 F: 低电平时显示 5X7 的点阵字符,高电平时显示 5x10 的点阵字符 (有些模块是 DL:高电平时为 8 位总线,低电平时为 4 位总线)。 指令 7:字符发生器 RAM 地址设置。 指令 8: DDRAM 地址设置。 指令 9:读 出 忙信号和光标地址。 BF 为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如 果为低电平表示不忙 , 模块 就 能接收 相应的 命令或者数据。 指令 10:写数据。 指令 11:读数据。 液晶显示模块是一个慢显示器件,所以在执行每。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。