信州区某公交车语音报站系统设计
2016-03-12上饶职业技术学院李志宜
上饶职业技术学院 李志宜
信州区某公交车语音报站系统设计
上饶职业技术学院 李志宜
本系统采用大家常用的AT89C51单片机和ISD4004录放音电路设计完成主任务,再利用键盘矩阵实现公交车语音报站系统设计。
AT89C51;ISD4004;键盘矩阵
1 ISD4004分段录音与放音电路设计
ISD4004正常工作在3伏特,最短录音和放音大概有8分钟,最长时间16分钟,音质听起来也是不错的,常常被用于手持电话和其他电子产品中,特别是便携式的。
站台信息如下:市委党校→市人民医院→市卫生局→信江东路口→溢洲宾馆→市人大→军分区→东门路口→干休所→工商宾馆→啤酒厂→区经委→外贸矿产公司→五三小区→四建公司→市立医院→区民政局→劳动大厦→雷锋像→市林业局→胜利桥头→区乡企局→区法院→十六道→林海大厦→支队驾训中心→杨家仓库→师范→罗桥路口。
特殊语音信息如下:“请给老幼病残弱让座,谢谢!”“上车请往后走,不要拥挤!”“没有投币的乘客请投币!”“请注意自己的随身物品!”
1.1 电路原理图(图1)
电路原理图参考“公交车语音报站系统总电路图” 。元件参数已标注。
图1 电路原理图
为了便于录音管理,我们将ISD4004进行均匀分段录音与放音。根据公交车车站站台语音信息的特点,一般一个站台或特殊语音信息播放的时间不大于8秒,而8秒共需要ISD4004 20行的存储空间,以8秒为一个录放单元,那么各个单元的地址分别为,第一单元,0000H~0013H;第二单元,0014H~0027H;第三单元,0028H~003BH;……依次类推。第一段录音编为1号,相应数码管显示1号,第二段录音编为2号,相应数码管显示2号。录完一段后继续,依次类推。
1.2 操作说明
1)先根据每个单元设定的录音时间,修改程序中HANGS的值,HANGS的值可以为1~255,因每一行为0.4s,所以每个单元录音的时间为:0.4s~102s
2)修改好值号,编译程序,产生??.HEX文件。作为单片机程序来源。使用常规方法下载。
3)按录音键,红色指示灯亮、绿色指示灯灭,开始在数码管显示的当前单元号录音,此时按暂停键,停止录音,表示本单元录音完成。单元号NUMBER1自动加一
4)放音的时候,将放音键按下,此时绿色指示灯工作,红色指示灯不工作,放音开始,数码管上显示当前单元号;放完本单元片段后停止,单元号NUMBER1自动加一。
5)按暂停键,红色、绿色指示灯均灭,录音或放音终止,单元号NUMBER1自动加1。
6)按上一段按键,单元号减1,数码管显示的单元号相应的减1。如单元号此时为1,则单元号变为末尾单元号,构成循环。例如单元号NUMBER1=1~25,当目前单元号NUMBER1=1,则令NUMBER1=25。
7)按下一段按键,单元号加1,如目前单元号为末尾单元号,则令NUMBER1=1,构成循环。
2 公交车语音报站系统人机界面的设计
如果设计的按键比较多,我们一般采用矩阵式键盘,这样的键盘可以灵活使用,有5*5,还有9*9,看需要而定。键盘由十字交叉的行线和列线排列,每一个交叉点就定义为一个按键。节省I/O口。行线通过上拉电阻接到+5V上。行线通过5.6K电阻连接+5v电源,行线电平的高低是和按键是否按下由关系的,如果没有按键被按下,行线通过电阻和电源相连,所以为高电平。如果此时按键被按下,行线电平状态就不是由自己决定的,而是要看列线电平的高低,由列线的高低决定。等效电路图如图2所示。
图2 矩阵式按键的等效电路图
按键序号 按键功能1 放音功能键。到达一个站台按下此键播放此站台的声音。如此时为正向行驶,站台自动加1;为反向行驶,站台号自动减1。2行车方向更改键。为了方便观察,正向行驶红灯亮,按下此键红灯灭,表示此时为反向行驶。灯灭时按下此键灯亮,表示此时为正向行驶。3 上一站台选择键。按下此键站台号加1,数码管显示相应加1。4 下一站台选择键。按下此键展台号减1,数码管显示相应减1。5 特殊语音(1)功能键。如:“请给老幼病残弱让座,谢谢!”6 特殊语音(2)功能键。如:“上车请往后走,不要拥挤!”7 特殊语音(3)功能键。如:“没有投币的乘客请投币!”8 特殊语音(4)功能键。如:“请注意自己的随身物品!”9~16 暂时预留备用。
3 公交车语音报站系统总机调试
3.1 电路原理图(图3)
正向行驶时行车指示灯亮,反向行驶行车指示灯不亮;放音指示灯为放音时灯亮,其它时间灯灭。
图3 公交车语音报站系统总电路图
3.2 程序流程图(见图2)