文档介绍:物理与电子信息学院
课程设计报告书
姓名:
班级: 08电信(本)
学号:
时间: 2010年12月
目录
1设计任务和要求 2
2方案论证 2
方案比较 2
方案一 3
方案二 3
方案选择 4
3系统硬件设计 4
主控电路的设计 5
关于AT89C51单片机 5
振荡器电路的设计 7
复位电路的设计 9
DS1302时钟电路 12
3. 3 DS18B20数字温度传感器 13
语音输出电路的设计 15
关于语音芯片 15
录音、放音电路的设计 20
LCD12864液晶显示的设计 22
4 软件设计 23
主控程序的设计 23
24
5 系统测试结果及分析 26
26
测试结果及分析 27
6 结束语与心得体会 27
参考文献 27
附录1 28
附录2 44
设计题目
公交车自动报站器的设计
设计要求
设计一种基于以AT89S52单片机和语音芯片ISD4004为核心公交车自动报站系统。LCD12864液晶显示时间以及车内的温度,实时显示年、月、日、星期、时、分、秒,采用按键式实现时钟对表和快慢调整。同时,每到一站会有语音提示和标语提示。
设计过程
摘要: 本次课程设计以实现公交车的语音自动报站,即在进站、出站时候自动播报语音提示信息及服务用语,同时利用LCD电路进行汉字显示。本设计要求利用AT89C52作为主控芯片完成主控电路的设计,辅助电路要求包括语音电路、汉字点阵显示电路、时钟电路、电源电路等。
本系统使用了专门的时钟芯片DS1302,读出其时间在LCD12864上显示,并能通过按键对其进行调时和校准。温度使用DS18B20数字温度传感器,以显示车内的温度。语音芯片使用ISD4004-8MP,ISD4004-8MP是使用很广泛的语音芯片。该芯片具有很强大的功能,可容纳300个站点信息和8分钟语音广告信息。
关键字:AT89S52单片机、DS1302,LCD12864,DS18B20,公交报站
(1) 应用AT89S52单片机设计单片机实现对DS1302和DS18B20以及语音芯片ISD4004的控制
(2) . 选用LCD12864显示,实时显示年、月、日、星期、时、分、秒,采用按键式实现时钟对表和快慢调整;
(3) 硬件设计部分,根据设计的任务选定合适的单片机,根据控制对象设计接口电路。设计的单元电路必须有工作原理,器件的作用,分析和计算过程;
(4) 软件设计部分,根据电路工作过程,画出软件流程图,根据流程图编写相应的程序,进行调试并打印程序清单;
(5) 原理图设计部分,根据所确定的设计电路,利用Protel99se和Protues工具软件绘制电路原理图。
方案比较
方案一
语音芯片
控制信号
脉冲计数
CPU控制
输出显示
放音电路
脉冲检测
公交车自动报站器的设计,对车轮轴的转角的脉冲进行计数,将计数值与预置值对比,即可确定报站时刻,达到准确自动的目的。以AT89C52为主控芯片,对外来脉冲计数,结合语音芯片ISD4004输出语音。系统由脉冲检测、脉冲计数、CPU控制、控制信号、语音芯片、输出显示等组成。。
方案1原理框图
(1) 脉冲检测:该系统关键是对转轴所转过的圈数进行计数,考虑到车辆将在复杂的环境中运行,故采用可靠的霍尔元件DN6848作为信号的采集装置,再经光电耦合器4N25输入给单片机。
(2) 脉冲计数:光电耦合器的信号进入C51后,采用中断方式对脉冲计数。外部晶振12MHz。
(3)CPU控制:程序中将计数值于预置值进行比较,判断是否到站,当到站时就输出信号控制语言芯片进行报站。
(4)控制按键:用于手动控制、手动调整、预置值的输入等
(5) 语言芯片:由专用语音芯片ISD4004组成,可擦写,便于在不同公交线上使用。
(6)输出显示:LCD液晶汉字显示。
(7)预置存储:采用两种方式存储,一种是在烧写器上将数据写入,另一种是在车上,单片机处于输入状态,车辆行驶一遍,将站与站之间的脉冲数写入片内。
方案二
利用8051单片机作为CPU来进行总体控制,当汽车到达某站时,汽车司机通过键盘来控制本系统进行工作,并且,系统将使用状态指示电路,向司机指示出当前的行驶方向及站号(如与实际方向不符,司机可通过键盘来调整)。。
语音合成
电路
8