收藏 分销(赏)

毕业设计基于单片机的公交车自动报站系统.pdf

上传人:曲**** 文档编号:229603 上传时间:2023-03-20 格式:PDF 页数:45 大小:2.52MB
下载 相关 举报
毕业设计基于单片机的公交车自动报站系统.pdf_第1页
第1页 / 共45页
毕业设计基于单片机的公交车自动报站系统.pdf_第2页
第2页 / 共45页
毕业设计基于单片机的公交车自动报站系统.pdf_第3页
第3页 / 共45页
毕业设计基于单片机的公交车自动报站系统.pdf_第4页
第4页 / 共45页
毕业设计基于单片机的公交车自动报站系统.pdf_第5页
第5页 / 共45页
点击查看更多>>
资源描述

1、目 录第一章绪论.11.1 本课题的研究意义.11.2 目前几种公交车报站器详细比较.11.2.1 GPS公交车自动报站器.11.2.2 手动式公交车自动报站器.11.2.3 基于单片机的公交车自动报站系统.2第二章系统方案的确定.32.1 系统主要要实现的功能.32.2 无线传输模块的选择.32.3 控制模块的选择.32.4 液晶显示模块及语音模块的选择.32.5 系统整体硬件电路的确定.3第三章系统功能模块详细介绍.53.1 单片机 AT89c51.53.1.1 管脚说明.63.1.2 外部晶振的选择.73.1.3 复位电路.73.1.4 按键电路设计.83.2 无线收发模块PT2 2 6

2、2/PT2 2 72.93.2.1 PT2 2 62/PT2 2 72 引脚图.93.2.2 PT2 2 62/2 2 72接线图以及工作原理.113.2.3 无线数传模块F05V/J05V.133.3 显示模块 LCD1602.143.3.1 排阻 Respack-8.143.3.2 LCD 1602 的弓I脚定义.143.3.3 液晶LCD1602常用的11条指令.163.4 语音模块 ISD4004.183.5 蜂鸣器和LED指示灯.20第四章系统程序设计.214.1 系统仿真主程序流程图.214.2 程序子函数模块.224.2.1 延时函数.224.2.2 检查忙函数.224.2.3

3、写指令函数.224.2.4 写数据函数.234.2.5 光标位置函数.234.2.6 初始化函数.234.2.7 其他数组定义以及端口定义.244.3 主程序流程图.24第五章系统仿真实现.285.1 开发环境KeilC51介绍.285.2 仿真环境PROTEUS介绍.285.3 仿真运行结果截图.295.4 仿真结果.29结束语.31致谢.33参考文献.34附录A系统仿真全部代码.35烟台大学毕业论文(设计)第一章绪论1.1 本课题的研究意义近些年来,随着城市人口的不断增加,人们生活节奏的不断加快,公交车在大城市以 及中小城市已经普及,并且有了日新月异的发展,在人民生活中起着重要作用,因此,

4、公 交车的正常运行与人们的正常生活息息相关。传统公交车报站大多是由乘务人员来人工报 站,但是因为方言的差异或者人多时语音嘈杂,这种方式不利于人民生活的和谐。所以根 据这种需要市面上产生流行了多种公交车报站器也方便人们的生活工目前虽然现在在一些大城市的公交车上已经采用GPS定位系统自动报站,但其造价昂 贵,难以在一些中小城市实现普及。另外,现在也有一些城市正在使用的一种半自动语音 报站系统,这种系统需要由司机在车子进出站的时候人工操作,由于这两个时间点往往是 路面情况最复杂的时刻,因此也给行驶中的车辆带来了安全隐患。所以本设计针对目前常 见公交车报站系统的主要缺陷,研究介绍了一种基于单片机控制的

5、公交车自动报站系统,实现在到站时的自动语音报站和LCD液晶显示,而且该系统造价廉价,可以在中小城市 中普及。1.2 目前几种公交车报站器详细比较公交车对社会影响巨大,对城市发展起着最基本的推动作用。随着公交车的不断普及 市面上也出现各种各样的公交车报站器,现在市面上流行的几种报站器主要有下列几种类 型:1.2.1 GPS公交车自动报站器利用GPS全球卫星定位系统的公交车报站系统,在司机座位后面隔板上,安装了一台 15英寸的液晶电视和GPS信号接收器,安装了这套设备后,公交车在语音报站的同时,通过液晶电视还可以显示到站站名的字幕,这样如果没听清报站的话,通过显示屏,乘客 也可以一目了然。当出现紧

6、急情况时,调度中心将会给公交车发出相应的信息,以短信的 形式传送到显示屏上,同时车载台会发出相应的提示音;驾驶员也可以通过相应的工具进 行回复。目前在美国部分城市GPS卫星定位系统已经投入使用,国内也有此类产品的研制 开发,其功能强大,系统稳定,但其投资昂贵,尤其是一些中小城市无法承受。1.2.2 手动式公交车自动报站器手动式公交车自动报站器通过主机上的汉字显示器,显示当前车站名称,即将达到站 名指示功能;通过主机屏幕的显示,可直观的观察到进站和下一站信息;通过按键,可播 烟台大学毕业论文(设计)放进站,出站,服务用语等语音。但是该种报站器需要由司机在车子进出站的时候人工操 作,由于这两个时间

7、点往往是路面情况最复杂的时刻,因此也给行驶中的车辆带来了安全 隐患,不利于公交车的安全行驶。1.2.3 基于单片机的公交车自动报站系统基于单片机的公交车自动报站系统,而这种系统又大致分为两种技术支持。其中一种的技术关键是对车轮转轴的转角的脉冲进行计数,将计数值与预置值对比,即可确定报站时刻,达到准确自动的目的。该方式应用单片机的高速计数器端口进行脉冲 计数,以距离来控制报站时刻,首次实现了模糊控制,改变现有设备的不足。做到简单实 用自动化程度高。传感器在公交车上的应用极大的提高了设备功能。另外一种基于单片机的公交车自动报站系统就是利用编码解码芯片PT2 2 62/PT2 2 72进 行解码编码

8、,利用无线数传模块F05V/J05V和天线进行发射和接收来实现的。在每个站牌 上设置一个编码发送装置PT2 2 62和无线数传模块F05V,通过公交车上设置的接收装置 J05V和译码装置PT2 2 72进行译码并传输到单片机。发送装置按照延时3到5秒不断发送 信号,公交车在距离站牌10到20米的时候就能接收到信号,然后根据程序来实现语音报 站,LCD液晶显示。这种报站系统软件编写比较简单,也容易修改,并且芯片价格低廉,大批生产能够获得比GPS系统达到更高的性价比,是公交车自动报站系统的较佳选择。综合上述各种公交车自动报站系统,本设计选择了基于单片机的公交车自动报站系 统,并利用无线数传模块来实

9、现公交车的自动报站。2烟台大学毕业论文(设计)第二章系统方案的确定2.1 系统主要要实现的功能该系统应实现无线信号收发确认,到站时的公交车站名的液晶显示以及自动语音提 示。系统的硬件设计中应充分考虑了性价比,用最少的器件设计出满足要求的硬件电路。本次设计主要是完成实现基本的仿真,该系统仿真电路的总体结构以52单片机为核心,由模拟接收电路、LCD(Liquid Crystal Display,液晶显示屏)显示电路等组成。2.2 无线传输模块的选择PT2 2 62/PT2 2 72集成芯片。方案采用低功耗、低价位、通用编解码电路,发送用高B 的达林顿管,所以在灵敏度和抗干扰性方面有保障。无线数传模

10、块F05V/J05V(典型遥控应用电路):FO5V采用的SMT工艺,优点是低 电压微功率、体积小、低功耗发射模块,适合单片机数据传输以及短距离无线遥控报警。JO5V作为接收模块优点是低电压、体积小,两者连接在PT2 2 62/2 2 72配合使用2.3 控制模块的选择所学专业课中学习过51单片机,并且单片机体积小,重量轻,具有很强的灵活性而 且价格便宜,所以控制模块选用单片机。2.4 液晶显示模块及语音模块的选择随着科学技术的日益发展和进步,微型计算机已经在很多领域得到广泛应用。LCD与 微机技术结合,比传统的LED显示效果更佳。所以结合公交车报站的使用特点和运营环境,设计一种由单片机控制、L

11、CD显示的公交车报站显示系统。公交车报站显示系统的设计应 用单片机,LCD显示,使到站信息及提示信息以显示的方式告知市民,为市民提供人形化、完美的服务。所以本次设计中重点使用了 LCD1602液晶显示模块鉴于使用Proteus仿真,在仿真中使用蜂鸣器代替语音模块,使用蜂鸣器的连续间断 发声作为提示。为了以后实际需要,在文章中介绍了常用的语音模块ISD4004。2.5 系统整体硬件电路的确定根据系统要实现的功能,以及各个模块的选择,确定了整个报站系统主要组成部分分 为两个模块。发射模块即电子站牌部分主要由AT89c51单片机,PT2 2 62编码装置,无线 传输模块FO5V和天线组成。接收控制模

12、块即车载部分是主要部分,选择AT89c51为核心 3烟台大学毕业论文(设计)的控制器,PT2 2 72译码装置和无线数传模块JO5V以及天线作为接收信号装置,语音录放 芯片ISD4004组成的语音播放电路以及LCD1602液晶显示屏构成液晶显示模块。系统各部分框图如下图所示。图2-1公交车站牌发射部分方框图图2-2公交车车载接收部分方框图公交车自动报站系统就是利用编码解码芯片PT2 2 62/PT2 2 72进行解码编码,利用无线 数传模块F05V/J05V和天线进行发射和接收来实现的。在每个站牌上设置一个编码发送装 置PT2 2 62和无线数传模块F05V,通过公交车上设置的接收装置J05V

13、和译码装置PT2 2 72 进行译码并传输到单片机。发送装置按照延时3到5秒不断发送信号,公交车在距离站牌 10到20米的时候就能接收到信号,然后根据程序来实现语音报站,LCD液晶显示。发射部分通过编码芯片PT2 2 62,无线数传模块F05V和天线不停发射周期信号,发射 的一个周期的内容包括本站点的地址、站名等信息的编码信息。当公交车行驶进人该信号 范围内,车载部分的通过天线,经无线数传模块JO5V和PT2 2 72译码就会接收到这个编码 信息,单片机将编码信息处理后,向显示模块和语音模块发送对应的信息,就能实现液晶 显示屏显示对应的站名和语音报站,完成自动报站。4烟台大学毕业论文(设计)第

14、三章系统功能模块详细介绍3.1 单片机 AT89C51随着计算机技术的发展,单片机技术已成为计算机技术中的一个独特的分支,单片机 的应用领域也越来越广泛,特别是在工业控制和仪器仪表智能化中扮演着极其重要的角 色。纵观单片机发展的30多年来,单片机正往多功能、高性能、高速度、低电压、低价 格、低噪声、低功耗、小体积、大容量、专用化和外围电路内装化的方向发展。单片机的 出现使的过去经常采用模拟电路、数字电路实现的电路系统,转变成现在用单片机予以实 现,并且传统的电路设计方法演变成硬件和软件相结合的设计方法,并且许多电路设计问 题将转化为纯粹的程序设计问题。诚然,单片机的应用意义远不限于它的应用范畴

15、或由此 带来的经济效益,更重要的是它已从根本上改变了传统的控制方法和设计思想,是控制技 术的一次革命,是一座重要的里程碑微控制器通常将主要的组成部分集成在一个芯片上,就是把中央处理器(CPU)、随机 存储器(RAM)、只读存储器(ROM)、中断系统、定时器/计数器以及I/O接口电路等主要 部件集成在一个芯片上。AT89c51俗称单片机,可擦除只读存储器可以反复擦除1000次。主要特性:1、一个CPU,一个片内振荡器以及时钟电路,2、4K(RAM)程序存储器,3、12 8B(ROM)数据存储器4、21个特殊功能寄存器5、数据能够保存的时间:10年6、与MCS-51指令相兼容7、32个可编程I/O

16、线(4个8位并行I/O端口)8、16位定时器/计数器有两个9、5个中断源,两个优先级嵌套结构10、一个可编程全双工串行接口11、低功耗的闲置和掉电模式12、片内振荡器和时钟电路尽管目前单片机种类多,各类单片机的指令系统各不相同,功能各有所长,但市场占 有率最高的是51系列单片机。单片机体积小,重量轻,具有很强的灵活性而且价格便宜,得到越来越广泛的运用。例如工业控制领域、家电产品,智能化仪器仪表,计算机外部设备,特别是机电一体化产 品中都有重要的用途,其中的51单片机系列发展规模最大。5烟台大学毕业论文(设计)51单片的运用广泛,并且具有优异的性能价格比,集成度高,体积小,有很高的可靠 性,并且

17、控制功能强。所以是核心控制期间的最佳选择。U1XTAL1XTAL2RST品3337PSEN ALE EAP1.0P1.1PI.2PI.3P1.4P1.5PI.6P1.7PO.QADO PO.1/AD1 PO2AD2 PO.3/AD3 P0.4/AD4 PO.5/AD5 P0.0AD6 P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.aA14 P2.7/A15P3.0/RXD P3.1/TXD P3.2/1 NTD P3.3NT1P3.4/TDP3.5/T1P3.aWRP3.7/RD1 2 3.rfe一 12一AT89C51图3-

18、1 AT89c51单片机引脚图3.1.1 管脚说明下面对设计中用到的一些管脚进行简要的介绍:VCC:供电电压,一般接+5V电源正端。GND:接地,一般接+5V电源地端。P0 a(3932脚):输入输出线P0.0P0.7统称为P0 口。可以用作准双向输入/输出口 使用,但由于内部无上拉电阻,一般外加上拉电阻:在进行片外存储器扩展或I/O扩展时,P0 口作为分时服用的低8位地址总线和双向数据总线。P1 口(18脚):P1 口作为准双向DO 口使用。P1 口管脚写入1后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。P2 口(2128脚):P2 口也可

19、作为准双向I/O 口,当进行片外村春气扩展或I/O 口扩 展时,P2 口用作高8位地址总线。P3 a(1017脚):P3 口作为准双向I/O 口使用外,每一个端口还具有第二功能。P3 口也可作为AT89c51的一些特殊功能口,如下表所示:口管脚备选功能6烟台大学毕业论文(设计)P3.0 RXD(串行口输入端)P3.1 TXD(串行口输出端)P3.2/INTO(外部中断0)P3.3/INT1(外部中断1)P3.4 TO(定时器/计时器0计数脉冲输入)P3.5 T1(定时器/计时器1计数脉冲输入)P3.6/WR(外部数据存储器写选通信号输出)P3.7/RD(外部数据存储器读选通信号输出)RST(9

20、脚):复位输入。当振荡器复位器件时,要保持10ms高电平时间才能保证有 效的复位。ALE/PROG(30脚):地址锁存允许/编程线。采用了地址/数据总线复用技术。/PSEN(29脚):片外程序存储器读选通信号输出端,低电平有效。/EA/VPP(31脚):片外程序存储器选用端,低电平有效。注意加密方式1时,/EA将 内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12 V编程电源(VPP)oXTAL1:外接晶体振荡器一端。XTAL2:外接晶体振荡器另一端。3.1.2 外部晶振的选择AT89C51的内部有一个用于构成振荡器的高增益反相放大器。

21、通过XTAL1,ATAL2外部 接上一片作为反馈元件的晶体,与C1和C2构成了并联谐振电路,使其构成自激振荡器。电容的值通常30PFo具体的接线电路如图3-2外部晶振电路:AT89C51单片机外接的是12 MHZ的晶振,则机器周期为lus。3.1.3 复位电路复位的作用是使程序自动从0000H开始执行,因此我们只要在AT89C51单片机的RST 7烟台大学毕业论文(设计)端加上一个高电平信号,并持续101ns以上即可,RST端接有一个上电复位电路,它是由一 个小的电容和一个接地的电阻组成的。按键复位电路另外采用一个按钮来给RST端加上高 电平信号。本设计采用放电型的进行人工复位的电路,如图按键

22、复位电路,上电时C3通过R2充 电,维持宽度大于10ms的正脉冲,就可以完成复位操作。当C3结束充电后,RST端出现 低电平,这是CPU将正常的工作。在本次设计中如果需要按键进行复位,就按下按钮BUTT0N3,C3通过BUTTON3和R2 放电,RST端电位将会上升到高电平,从而实现人工复位,BUTT0N3松开后C3重新充电,当结束充电后,CPU将会重新工作。下图中,R2是限流电阻,阻值不可以过大,否则不能 起到复位作用。+5v图3-3按键复位电路3.1.4 按键电路设计对于此设计来说要准确的显示设计所要对应的信息,每按下一次按键要显示所要显示 的信息。这按键是主要用来模拟无线信号的收发而设计

23、的,即PT2 2 62/PT2 2 72的无线信号 收发。功能的实现主要是通过程序来实现,BUTT0N1控制顺向报站,当报站系统启动后,按 下BUTT0N1开始按预先设置好的站名进行顺向报站,本设计设置的是从站名“AAAAAAA”到“EEEEEEE”依次报站,每次按键按下时实现LED提示灯亮,蜂鸣器连续鸣叫7次。BUTTON2按键是实现公交车逆向返回时的报站,即从站名“EEEEEEE”至I8烟台大学毕业论文(设计)“AAAAAAA”的依次报站,也满足每次按键按下时实现LED提示灯亮,蜂鸣器连续鸣叫 7次。P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD13141516

24、BUTT0N2图3-4按键设置如果使用过程中出现错误时,可以使用按键复位,重现选择正向或者逆向报站。同时,为了防止一次按键产生站名的漏报,在软件设计中使用了延时函数,防止站名的漏报。3.2 无线收发模块PT2262/PT2272PT2 2 62/PT2 2 72是一种CMOS工艺制造的低功耗低价位通用编解码电路,PT2 2 62/PT2 2 72最多可有12位(AOAll)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441(212)地址码,PT2 2 62可有6位(DOD5)的数据端的管脚,设计可 以设定地址码以及数据码在第17脚进行串行输出,以便于应用于无线的遥控发射的电

25、路。3.2.1 PT2262/PT2272 引脚图在PT2 2 62/2 2 72这种器件的使用,根据资料一般将会使用8位的地址码和4位的数据 码。PT2 2 62编码电路引脚的选择是:第18脚作为地址的设定脚,他可以选择三种状态:悬空、接正电源、接地。3的8次方为6561,即地址编码的不重复度是6561组。PT2 2 62/2 2 72的配对使用是要求发射端PT2 2 62和接收端PT2 2 72的地址编码需要完全 相同,用户如果想改变地址编码,只要将PT2 2 62和PT2 2 72设置相同即可,两者的地址的 编码相同时,PT2 2 72输出端将会输出大约4V左右的互锁的高电平的控制信号。

26、9烟台大学毕业论文(设计)A。-A|A2一A3-A4-A5-6/D()-X/Di 一Vss-1、-/182 173 164 15PT2262-IR5 146 137 128 119 10-Vdd Ao-Dout A-OSCj A?一-OSC2 A3-TE Aj-A/D5 A5-Ak)/Dj D(-A9/D3 Di-A8/D2 Vss11 V/182 173 164 PT2272 155 146 137 128 119 10-Vdd-VT-OSC-OSC2-DI-D5-d4-D2图 3-5 PT2 2 62/PT2 2 72 弓 I脚图PT2 2 62/PT2 2 72引脚基本类似,作为无线收发

27、译码解码器,两者配对使用引脚连接必 须一致。下面接收PT2 2 62/PT2 2 72的引脚说明图表3-1 PT2 2 62引脚说明名称管脚说明AO-All1-810-13地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬 空)DO D57-810-13数据输入端,有一个为“1”即有编码发出,内部下拉VCC18电源正端(+)VSS9电源负端(-)TE14编码启动端,用于多数据的编码发射,低电平有效OSC116振荡电阻输入端,与OSC2所接电阻决定振荡频率OSC215振荡电阻振荡器输出端Dout17编码输出端(正常时为低电平)10烟台大学毕业论文(设计)表3-2 PT2 2 72引脚说

28、明图名称管脚说明A0-A111-810-13地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬 空),必须与2262一致,不然不解码D0-D57-810-13地址或数据管脚,当做为数据管脚时,只有在地址码与2262 一致,数据管脚才能输出与2262数据端对应的高电平,否 则输出为低电平VCC18电源正端(+)VSS9电源负端(-)DIN14数据信号输入端,来自接收模块输出端OSC116振荡电阻输入端,与OSC2所接电阻决定振荡频率OSC215振荡电阻振荡器输出端VT17解码有效确认输出端(常低)解码有效变成高电平(瞬态)表 3-3 PT2 2 62/PT2 2 72 工作参数3.2.

29、2 PT2262/2272接线图以及工作原理参数名称符号工作条件最小值典型值最大值单位工作电压Vdo3V工作电流IdoVDo=12V 停振0.020.03uAA0-A11开路输出驱动电流IohVdo=5V,V0h=3V3mAVdo=8V,Voh=4V6Vdo=12V,Voh=6V10输入驱动电流IoLVdo=5V,VOh=3V2mAVdo=8V,Voh=4V5Vdo=12V,Voh=6V9发射电路主要由AT89c51、编码模块PT2 2 62、无线数传模块FO5V和一片74LS04(六 输入非门,实际上就是六个非门集成在一块74LS04里面了)构成,发射部分电路如图3-6 所示。接收电路主要由

30、AT89c51、译码模块PT2 2 72、无线数传模块JO5V和一片74LS04 构成,接收部分模拟电路如图3-7所示11烟台大学毕业论文(设计)VCC PT2272VT 657图3-7 PT2 2 72接收部分模拟接线图发射部分主要产生一个周期的编码信号。编码信号的内容包括起始标志、数据编码和 结束标志,由于无线收发模块是四路的,即每次收发半个字节的数据所以一帧数据至少是 16位的,其信息格式如表3-4所示。12烟台大学毕业论文(设计)表3-4 16位编码数据格式0 12 3 4DO DI D2 D3 DO5 6 7 8 9 10 11DI D2 D3 DO DI D2 D312 13 14

31、 15DO DI D2 D34位起始标志8位编码数据4位起始标志由上图可以看出每一帧数据需要四次才能发送完毕。在实际应用中不需要编码信号不 间断的发送,三秒钟或者五秒钟发送一次即可,因此程序里还需要有一段三秒或五秒的延 时。在公交车上设置的接收装置JO5V和译码装置PT2 2 72进行译码并传输到单片机,通过 单片机判断车辆到达的站点信息,根据这个站点的信息进行语音播报以及液晶显示提示。射频触发信号是以中断的的方式送入单片机的,硬件电路将这个控制信号与单片机的 INTO 口相连接,所以本段程序是一个外部中断。的子程序。当射频信号到来时PT2 2 72 D 的VT引脚端由低变高,经非门送到单片机

32、INTO,使单片机跳到外部中断O子程序。3.2.3无线数传模块F05V/J05V无线数传模块FO5V/JO5V(典型遥控应用电路):FO5V采用的SMT工艺,优点是低 电压微功率、体积小、低功耗发射模块,适合单片机数据传输以及短距离无线遥控报警。JO5V作为接收模块优点是低电压、体积小,两者连接在PT2 2 62/2 2 72配合使用 FO5V引脚定义:1=正电源3V;2二接地;3二数据信号输入;Y二外接天线。JO5V引脚定义:1二正电源3V;2二接地;3二数据信号输出;Y=外接天线。E?GNDGND图3-8 f05V/J05V引脚接线图13烟台大学毕业论文(设计)3.3 显示模块LCD160

33、2我们知道的用来显示的器件很多。比如数码管、LCD、点阵式LED。数码管只能显示数 字,LCD可以显示汉字、符号、数字和图形,为了报站器的人性化LCD1602能够同时显示16列2行的字符,可以显示数字、字母、以及各种符号。这种 液晶模块由若干个5X7或者5X11等点阵字符位组成,这种点阵字符显示字符并且自带间 隔,也就是有自然的间距和行间距,也是因为这个特性不能很好地显示图形(用自定义 CGRAM,显示效果也不好)。市面上字符液晶大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基 于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型的液晶。3.3.1 排阻 Res

34、pack-8Respack-8接在51单片机的P0 口,因为P0 口内部没有上拉电阻,不能输出高电平,所以要接上拉电阻,1端为公共端接VCC。3.3.2 LCD1602的引脚定义字符型LCD 一般是16条引脚线14条引脚线,多出来的两条线是背光电源线VCCC15 脚)和地线GND(16脚),与14脚LCD的控制原理基本完全一样,定义如下表所示:表3-5 LCD1602引脚定义引脚号引脚名电平输入检出作用1VSS电源地2VCC电源(+5V)3VEE进行对比的调整电压4RS0/1输入0进行输入I指令1进行输入O数据5RAV0/1输入0=向LCD写入指令以及数据1=从LCD中来读取信息6E1,10输

35、入使能信号,1是进行读取信息10下降沿执行指令7DB00/1I/O数据总线line。(最低位)8DB10/1I/O数据总线lineO9DB20/1I/O数据总线lineO10DB30/1I/O数据总线lineO11DB40/1I/O数据总线lineO14烟台大学毕业论文(设计)LCD1LM016L12DB50/1I/O数据总线lineo13DB60/1I/O数据总线lineO14DB70/1I/O数据总线lineO15A+VCCLCD背光灯电源正极16K接地LCD背光灯电源负极RP1RESPACK-8Q V-CM gtp 卜OQQDQDQD,4OOOOOOOOPO.QADOPO.1/AD1PO

36、.2/AD2PO.3/AD3P0.4/AO4PO.5/AD5PO.6/AD6P0.7/AD78D1D2D3D4D5D6D7图3-9 LCD 1602引脚接线图在LCD模块上固化了字模存储器,这就是CGROM和CGRAM,HD44780内置了 192 个常用字符的字模,存于字符产生器CGROM中,另外还有8个允许用户自定义的字符产 生RAM,成为CGRAM。下图3-10说明了 CGROM和CGRAM与字符的对应关系。读的 时候,先读左边那列,再读上面那行,如:感叹号!的ASCII为0 x2 1,字母B的ASCII 为0 x42(前面加Ox表示十六进制)15烟台大学毕业论文(设计)位 低公、000

37、000100()11()1(X)0101()110Olli10101011110011011110mixxxxOOOOCGRAM(1)03pp-夕apxxxxOOOI(2)11AQaq7手ZxgqxxxxOOIO(3)K2BRbrr川XBexxxxOOI1(4)#3CScsocxxxxOlOO(5)*4DTdt工卜te出nxxxxOlOI(6)%5EUeu口才JZ.0 xxxxOl10(7)&6FVfVT力3XxxxxOl117Gww7中7nxxxxl(XX)(1)(8HXhX本XxxxxIOOl(2)9IYiy7yxxxxIOIO(3)*JZjzX9U千xxxxIOl1(4)Kk(才t口万x

38、 x x x l100(5)7N一n一3b木/、x x x x!111(8)/0一oD图3-10 CGROM和CGRAM中字符代码与字符图形对应关系3.3.3 液晶LCD1602常用的11条指令表3-6液晶LCD1602常用指令指令功能RS R/WDB7 DB6 DB5 DB4DB3 DB2 DB1 DB0执行时间清屏0 00 0 0 00 0 0 11.64ms功能详解:清除液晶显示器的内容。光标归位0 00 0 0 00 0 1 X1.64ms功能详解:光标撤回到显示器的左上方,地址计数器(AC)值为0,DDRAM值不变进入模式设 置0 00 0 0 00 1 I/D S40us功能详解:

39、I/D当为0时写入数据后光标左移,当为1时写入数据后光标右移S为0时写入新数据后显示屏不移动,为1时写入新数据后显示屏整体右移1字符显示开关控 制0 00 0 0 01 D C B40us功能详解:D为0时显示功能关,为1时显示功能开C为0时无光标。1时有光标B为0时光标闪烁,1时光标不闪烁16烟台大学毕业论文(设计)功能详解:设定显示屏或光标移动00000 1S/CR/LXX40us方向功能设定 00001 DLN F X X 40usS/CR/L设定的情况00光标左移1格,且AC值减101光标右移1格,且AC值加110显示器上字符全部左移一格,但光标不移动11显示器上字符全部右移一格,但光

40、标不移动功能详解:DL为0时数据总线为4位,1时数据总线为8位N为0时显示1行,1时显示两行F为0时5*7点阵/每个字符,1时5*10点阵/每个字符设定CGRAM 地0 00 1 CGRAM的地址(6位)40us址指令功能详解:设定下个要存入的数据的CGRAM的地址设定DDRAM 地0 01 CGRAM的地址(7位)40us址指令功能详解:设定下个要存入的数据的DDRAM的地址读取忙碌信号或AC地0 1BF AC内容(7位)40us址功能详解:BF为1表示液晶显示器忙,为0时,液晶显示器可以接收单片机送来的数据或指令数据写入到DDRAMH1 0要写入的数据D7D040us或 CGRAM功能详解

41、:(1)将字符码与入DDRAM,液晶显示屏并显不对应的字符(2)使用者设计的图形存入CGRAM从 CARAM或 DDRAM读取数据1 1要读出的数据D7D040us17烟台大学毕业论文(设计)功能详解:读取DDRAM或CGRAM的内容3.4 语音模块ISD4004实际公交车报站都是语音报站,因为本设计用Proteus仿真,所以用蜂鸣器替代语音 模块进行仿真试验,下面简要介绍下语音模块的基本知识。ISD4004语音模块工作特点:工作时的电压在3V,能够完成的录放的时间在8到16分 钟左右,同型号的ISD1730等,录音时间般在4分钟以内。并且它的音质也很不错,目 前在移动电话以及其他电子产品中应

42、用比较广泛。ISD4004是经过CMOS技术来制作的,内 部有各种模块:音频放大器、平滑滤波器、振荡器、自动静噪及高密度多电平闪烁存贮、防混淆滤波器。芯片经过微控制器设计,其指令采用的是串行通信,如(SPI)。芯片采用 了多电平接模拟量的存储技术,采样值可以在片内的闪烁存贮器进行直接存储,因此可以 非常真实得还原声音。而一般固录音电路是有很多缺点的,会有很多噪声和金属声。采 样的频率可以选为&0、6.4、5.3、4.0kHz,这儿个频率选择的越低,录放的时间也就会 越长,确实是造成音质的下降,闪烁存贮器中的信息,可保存的时间是100年(典型值),并且可以反复录音10万次。ISD4004芯片优点

43、是无须A/D的转换和A/D的压缩,能过进行直接的储存,并且没有 A/D转换的误差,还具有所需的外围的电路是比较简单的、使用时不用扩充存储器、存储 时间也很长、也可以进行多次重复录放。SS匚MOST rMISO LZVssd 匚NC匚NC匚NC匚NC匚NC匚NC匚Vssa 匚Vssa 匚二amxtt 匚AMCAP 匚2827262524232221201918171615salvccdXCLK-INTRACvssaNCNCNCNC心NC n n n n n n n n n n n n n n图3-10 ISD4004的引脚排列图18烟台大学毕业论文(设计)在本次设计后续设计中,也可以利用AT89

44、c51控制该芯片,实现语音的存储以及语音 报站。1、电源端(VCCA,VCCD):为了使噪声最小,芯片内部的数字和模拟电路要使用不同的 电源的总线,并且分别引出到外封装的不同的管脚上。数字和模拟电源端最好走不同的 线,比如,选择在离供电端相近的地方相连,而去耦电容就应尽量选择离器件近。2、地线(VSSD,VSSA):芯片的内部的模拟和数字电路也使用不同的地线。3、同相的模拟输入(ANA IN+):即录音信号同相输入端。这时输入放大器采用单端或 差分驱动。当采用单端时,在耦合电容中输入信号,最大的幅度是32 mV峰峰值,芯片频 带的低端截止频率决定耦合电容和本端的3KQ电阻的输入阻抗。作为差分的

45、驱动时,信号 最大幅度是16mV峰峰值,这是和ISD33000系列一样的。4、反相的模拟输入(ANA IN-):作为差分驱动是录音信号的反相的输入端。信号是通 过耦合电容来输入,最大幅度是16mV峰峰值5、音频输出(AUD OUT):作用是提供音频的输出,可以驱动5KQ的负载。6、片选(SS):此端为低电平,在向ISD4004芯片发送指令时,并且该两条指令间应 该为高电平。7、串行输入(MOSI):此端是串行的输入端。主控制器应该在串行时钟的上升沿前半 周期把数据放到这个端口,来让ISD输入。8、串行输出(MISO):作为ISD的串行的输出端。当ISD没有选中时本端会呈高阻态。9、串行时钟(S

46、CLK):作为ISD的时钟的输入端。从主控制器中产生,可以用于同步 的MOSI和MISO的数据传输。10、中断(/INT):本端作为漏极的开路输出。ISD在任何操作过程(比如快进)中检测 到了 EOM或OVF时,本端会变低电平并保持。并且中断的状态在下一个SPI周期开始时 清除。中断状态也可以用RINT的指令读取。OVF标志-一指示ISD的录放操作是否已经到存储器未尾状态。EOM标志-只在放音过程中检测到内部的EOM标志时,状态才会置1。11、行地址时钟(RAC):漏极的开路输出。每经过一个RAC周期,表示ISD存储器操 作进行了一行。该端口并且可以用于存储的管理技术。12、外部时钟(XCLK

47、):本端内部带有下拉元件。工业级的芯片在整个温度和电压范围 内,频率变化范围在-6/+4%内,此时建议使用稳压电源。如果要求更高精度,可从本端来 输入外部时钟(如前边所描述)。并且由于内部的防混淆及平滑滤波器已经设定好,所以上 述推荐时钟频率不应该再改变。输入时钟占空比是无关紧要的,因为内部首先进行了分频。并且在不外接地时钟时,此端是必须接地的。13、自动静噪(AMCAP):一般本端对地会接lmF的电容,来构成内部信号的电平峰值 检测电路一部分。并且与内部设定阈值和峰值电平来作比较,从而决定自动静噪的功能的 19烟台大学毕业论文(设计)翻转点。大信号时,自动静噪的电路不衰减,静音时衰减6dB。

48、ImF的电容也影响自动静 噪的电路对信号幅度的响应速度。本端接VCCA则应该禁止自动静噪。3.5 蜂鸣器和LED指示灯蜂鸣器鉴于用Proteus仿真,语音模块用蜂鸣器代替如图3-7,采用三极管NPN,当P11为高 电平时电路导通,通过程序使P11进行短时间内高低电平转换,以达到断续蜂鸣提示的效 果。到站LED提示灯鉴于用Proteus仿真,语音模块用蜂鸣器代替如图3-7,采用三极管PNP,当P1.0为低 电平时电路导通,到站提示灯亮。图3-12 LED提示灯接线图20烟台大学毕业论文(设计)第四章系统程序设计4.1 系统仿真主程序流程图图4-1系统仿真主程序流程图系统仿真,初始化运行程序时,L

49、CD第一行显示欢迎字符,蜂鸣器蜂鸣,选择BUTTON 1 或者BUTTON2(通过控制P35,P34)选择顺序或者逆序报站,按下按键之后,蜂鸣器提示,LED指示灯亮,延迟一段时间后显示站名。随后可以每到一个站依次显示公交车站名,如 果出现错误或者重新选择另一顺序报站,可以使用按键复位,重新选择报站方式。21烟台大学毕业论文(设计)4.2 程序子函数模块4.2.1 延时函数/*延时*/void delay(uint n)(uint i;for(;n0;n)for(i=2 00;i0;i-);4.2.2 检查忙函数/*判 断是否忙*/void check()(rs=O;rw=l;读 e=l;por

50、t=OxOO;e=l;while(busy);e=0;4.2.3 写指令函数/*写指令*/void send(uchar command)(check();rs=O;指令rw=0;写 e=0;port=command;e=l;_nop_();_nop_();e=();写入指令2 2烟台大学毕业论文(设计)4.2.4 写数据函数/*写数据*/void write(uchar dat)(check();rs=l;数据rw=0;port=dat;e=l;_nop_();_nop_();e=0;4.2.5 光标位置函数/*光标位置*/void pos(uint p)(send(pl0 x80);第一行

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服