《单片机原理及应用》期末课程设计:基于单片机的公交车报站器设计.doc

上传人:仙人指路1688 文档编号:3426717 上传时间:2023-03-13 格式:DOC 页数:18 大小:121KB
返回 下载 相关 举报
《单片机原理及应用》期末课程设计:基于单片机的公交车报站器设计.doc_第1页
第1页 / 共18页
《单片机原理及应用》期末课程设计:基于单片机的公交车报站器设计.doc_第2页
第2页 / 共18页
《单片机原理及应用》期末课程设计:基于单片机的公交车报站器设计.doc_第3页
第3页 / 共18页
《单片机原理及应用》期末课程设计:基于单片机的公交车报站器设计.doc_第4页
第4页 / 共18页
《单片机原理及应用》期末课程设计:基于单片机的公交车报站器设计.doc_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《《单片机原理及应用》期末课程设计:基于单片机的公交车报站器设计.doc》由会员分享,可在线阅读,更多相关《《单片机原理及应用》期末课程设计:基于单片机的公交车报站器设计.doc(18页珍藏版)》请在三一办公上搜索。

1、目 录第1节 引 言11.1 公交车报站器设计概述11.2 SPCE061A单片机简介11.3 外扩存储器芯片简介11.4 系统实现的主要功能21.5 自动报站功能实现方案2第2节 系统主要硬件电路设计32.1 硬件框图32.2 主控板电路模块32.2.1 单片机工作电路及语音输出电路32.2.2 电源电路模块52.2.3 存储器工作电路及下载线接口电路52.2.4 键盘显示电路模块62.2.5 无线收发电路模块6第3节 系统软件设计73.1 系统主程序设计73.2 录音子程序设计133.3 动态扫描显示子程序设计15第4节 结束语16参考文献17基于单片机的公交车报站器设计数理与信息工程学院

2、 08计算机专升本 方莎娜指导教师:余水宝 第1节 引 言随着城市交通的快速发展,公交汽车为外出的人们提供了方便快捷的服务。而公交汽车的报站共识直接影响其服务的质量。传统报站方式是由乘务人员进行人工报站,该方式因其效果太差和工作程度太大,在很多大城市已经被淘汰。近年来,微机技术与各种语音芯片相结合,即可完成语音的合成技术,使得公交车报站器的实现成为可能,从而为市民提供了更加人性化得服务。该公交车报站器的系统设计原理,提出了以61单片机为核心,控制SPR4096语音芯片电路以及LED数码管显示的硬件设计和软件设计方案。该系统语音音质好,功能强,是提供公交服务的一种较好的手段。1.1 公交车报站器

3、设计概述集成有录音和语音提示功能的智能电子设备已经得到越来越多广泛的应用,比如电话的自动语音留言和提示功能、汽车的倒车提示、公交车和城市地铁的语音报站器、儿童玩具、智能门铃、节日礼品等等都集成有语音录放功能,目前实现语音录放功能一般都是通过集成语音芯片来实现的。该设计就选用SPCE061A单片机,SPCE061A单片机是凌阳科技公司研发生产的一款性价比很高的十六位单片机,使用它可以非常方便灵活的实现语音的录放。由于凌阳单片机强大的语音处理能力使得系统设计有所简化,外围电路较少;另外具有易学易用的效率较高的一套指令系统和集成开发环境。在此环境中,支持环境C语言,可以实现C语言与凌阳汇编语言的互相

4、调用,并且提供了语音录放的库函数,只要了解库函数的使用,就会很容易完成语音录放,这些都为软件开发提供了方便的条件。1.2 SPCE061A单片机简介SPCE061A是凌阳科技公司研发的性价比很高的一款十六位单片机,使用它可以非常方便灵活的实现语音的录放。该芯片拥有8路10位精度的ADC,其中一路为音频转换通道,并且内置有自动增益电路。这为实现语音录入提供了方便的硬件条件。两路10位精度的DAC,只需要外接功放SPY0030A即可完成语音的播放1.3 外扩存储器芯片简介SPR4096芯片是一款性价比较高的512K*8位的高性能FLASH存储器,同时内嵌4K*8位的SRAM。具有BMI(Bus M

5、emory Interface)接口与SI(Serial Interface)接口。SPR4096提供两种电源供电VDDI与VDDQ。VDDI供电范围在2.25V到2.75V,是对内部的FLASH与逻辑控制器供电。VDDQ供电范围在2.25V到3.6V,只对I/O口供电。SPR4096的最大工作频率为5.0MHZ,最大读取电流为2mA,最大擦除、烧录电流为6mA。语音存储器SPCE061A键盘电路语音输出电路显示电路图1-1 设计方案图1.4 系统实现的主要功能本设计完成的公交车报站器主要具有以下功能。 可以设置上、下行路线。 可以显示当前站数、时间和日期,并能进行对时间/日期设置。 具有手动

6、报站、自动报站两种哦那个功能。 备有下载口,用户可直接下载更新站名和站数,更新快捷方便1.5 自动报站功能实现方案自动报站是目前公交车报站器重要的发展方向之一,在此也考虑加入自动报站功能。目前实现自动报站功能有多种方式,在此选择无线收发电路来实现。该方式应用简单,报站准确。第2节 系统主要硬件电路设计2.1 硬件框图本报站器以SPCE061A单片机为核心,划分为键盘输入、数码管显示、SPR4096存储、语音播放和无线收发电路几大部分,硬件框图如下图所示。SPCE061A是整个设计的核心,主要负责控制数码管界面输出,键盘信息和无线信号的处理。LED显示键盘模块主要起人机界面的作用,显示报站器的信

7、息,同时向操作者提供操作界面。无线收发电路的接入实现自动报站功能,从而无需人工操作。日期/时间显示键盘输入站牌无线发射模块存储语音资源tianxian SPCE061A语音播报无线发射模块图2-1 单片机原理框图2.2 主控板电路模块主控板电路包括:单片机工作电路、电源电路、语音输出电路、存储器电路、下载线接口电路和近距离无线收发电路。2.2.1 单片机工作电路及语音输出电路SPCE061A单片机的最小应用系统构成非常简单,只需在OSCO、OSCI端接石英晶体振荡器及谐振电容,在复位端接复位电路,在锁相环压控振荡器的阻容输入VCP端接上相应的电容、电阻后即可工作。其它不用的电源端和接地端可接上

8、104pF小电容和100F的去耦电容,以提高抗干扰能力。另外SPCE061A内置2路10位精度的DAC,只需要外接功放电路即可完成语音的播放,可以直接听到喇叭输出的声音。图中的音频功放SPY0030也是凌阳公司的产品。SPY0030仅需2.4V即可工作,其输出功率约700mW。IOA0-IOA1IOB0-IOB1VDD VCPRESB SPCE061ADAC1 VSSDAC2 OSCI OSCO图2-2 单片机工作及语音输出电路图该部分程序主要完成放音操作,把获得的放音内容的地址送到SPCE061A中,完成放音。下面给出的就是放音部分程序。放音子程序:PLAY:ACALL POWERUP ;上

9、电子程序ACALL DELAY25 ;延迟子程序,至少延迟25msCLR P1.6 ;选中ISD4004MOV PLAY2,#11100000B ;存放SETPLAY命令MOV A,PLAY0 ;送放音地址低8位ACALL SEND ;调用送地址子程序 MOV A,PLAY1 ;送放音地址高8位ACALL SEND MOV A,PLAY2 ;送SETPLAY命令ACALL SENDSETB P1.6CLR P1.6MOV PLAYING,#11110000B ;送入放音指令MOV A PLAYINGACALL SENDSETB P1.6RETPOWERUP: ;送上电指令子程序MOV POWI

10、NG,#00100000B ;送入语音芯片上电信号MOV A,POWUPINGCLR P1.6ACALL SENDSETB P1.6RETSEND: ;向ISD4004送指令,地址等的子程序CLR MOSICLR P3.2MOV R1,#8OUTBIT1:CLR P3.2 ;时钟下降RRC AMOV MOSI,C ;输出1位NOPNOPNOPSETB P3.2 ;时钟上升沿到NOPNOPNOPDJNZ R1,OUTBIT1RET2.2.2 电源电路模块61单片机的内核工作电压是3.3V,而I/O口电压可以是3.3V也可以是5V。车载12V直流电压经过7805产生5V电压再经过SPY0029后产

11、生3.3V电压分别给系统供电。2.2.3 存储器工作电路及下载线接口电路下载口电路可单独对语音资源进行烧写,整机工作时通过SCK与SDA与单片机的IOB0和IOB1口相连,其中SPR4096的CF0CF2接高电平,选择串行接口模式;CF7接低电平,选中FLASH。下载线接口电路主要起到控制SCK、SDA的作用,完成对芯片的烧写。2.2.4 键盘显示电路模块 a-g 、DP_PSEG接口DIG接口1*7KEY接口6位数码管ULN2003A按键该模块提供人机界面作用,通过段码SGE、位选DIG和1*7KEY接口与主控板连接。主要用于显示时间/日期、站数和提供设置操作界面。其结构框图如下所示。图2-

12、3 键盘模块结构框图2.2.5 无线收发电路模块公交车报站器自动报站功能可以有效的减轻乘务人员的负担并能防止误操作,具有很强的应用价值。目前采用的方法有很多,如GPS、门控自动报站等方式,这里我们采用无线收发电路实现。收发电路由无线发射芯片TX-2B和无线接收芯片RX-2B组成。无线发射电路安放在车站站牌里,当公交车行驶到靠近站台时,报站器接收到无线电信号就会自动播报当前车站站名,实现自动报站。一片TX-2B可实现5路独立的无线电发射,若将多片TX-2B与多片RX-2B并联应用,仅需改变相配套的TX-2B/RX-2B电路外接ROSC的阻值,进而改变其基准频率,即可方便地实现10路、15路、20

13、路甚至更多路的无线发射,这样就可以实现一个站台多路公交车自动报站的需要。第3节 系统的软件设计同硬件设计一样,软件设计也是分模块进行的。主要包括系统主程序、录音子程序模块、键盘扫描程序模块、时间/日期调整程序、动态扫描显示子程序模块等。各部分程序由主程序调用,组成一个整体。这里不一一举例,就说重点说系统主程序、录音子程序和动态扫描显示子程序。3.1 系统主程序设计图3-1是系统总流程图。首先需要进行系统初始化设置,初始化后就进入循环。在这里通过判断相应的键值来进入各子程序。开始系统IO端口初始化系统时钟频率初始化为49MHZ开启2HZ、1KHZ、TimeA、外部中断2中断判断按键是否按下?键值

14、iKey0x1000?转到报站子功能转到时间/日期调整子功能 N YN Y图3-1是系统总流程图系统程序清单:SCL EQU P2.0DATA EQU P2.1RST EQU P2.2ORG 0000HLJMP MAIN ;转主程序ORG 0003H ;外部中断0中断服务程序入口地址LJMP INTA ;转外部中断0中断程序入口地址ORG 000BH ;T0定时中断服务程序入口地址LJMP T0-SEVORG 0013H ;外部中断1中断服务程序入口地址LJMP INTB ;转外部中断1中断服务程序ORG 001BH ;T1定时中断服务程序入口地址LJMP T1_SEV ;转T1中断服务程序O

15、RG 0030H ;设置主程序起始地址=0030HMAIN:MOV SP,#60H ;设置堆栈指针MOV R7,#10H ;系统初始化MOV R0,#30HMOV A,#0MOV R0,AINC R0DJNZ R7,LOPMOV 35H,#01H ;设置上电后的初始和日期MOV 36H,#01H MOV 37H,#06HMOV 38H,#00HMOV 3CH,33HMOV 3DH,34HMOV 3EH,#01HMOV 44H,#10H ;LED位选择码MOV 45H,#20HMOV 46H,#40HMOV 47H,#80HCLR RS1CLR RS0MOV R5,#00HMOV R6,#00H

16、MOV R7,#06HLCALL SET1302SETB RS1CLR RS0MOV R0,#4AHMOV TMOD,#10H ;设置T0 T1工作方式;定时器,工作方式1MOV TH1,#3CHMOV TL1,#0B0H ;T1计数初值=3CB0HMOV TH0,#40HMOV TL0,#098HMOV IP,#08H ;设置中断优先级MOV TCON,#40H ;启动定时器T1MOV IE,#8DH ;开中断LOP:LCALL CHANGE ;当前时间送显示缓冲区LCALL DISPLAY ;显示当前时间SETB RS1CLR RS0MOV 3AH,R0INC R0MOV 3BH,RO ;

17、判断设置定时时间到否?MOV A,3AHCJNE A,#0,NTMOV A,3BH ;取当前时间与定时时间比较CJNE A,#0,NT ;判断定时时间到否?NTM:INC R0INT R0CJNE R0,#59H,LOPMOV R0,#4AHSJMP BBXNT:MOV A,3BHCJNE A,34H,NTMMOV A,3AHCJNE A,33H,NTMDEC R0DEC R0MOV 39H,R0INC R0INC R0INC R0INC R0CJNE R0,#59H,NT1MOV R0,#4AHNTI:MOV A,39H ;若定时时间到CJNE A,#05H,BBXXLCALL YUYIN

18、;发出语音提示CLR P2.7 ;启动蜂鸣器发出“嘟嘟嘟”报警信号SJMP LP-0BBX:SETB P2.7SJMP LP-0BBXX:LCALL YUYINSJMP LP-0LP-0:JB P3.0,LP-6 ;扫描键盘,判断切换显示日期按键按下否?LCALL DISPLAYJB P3.0,LP-0LP-1:JNB P3.0,LP-1SETB P2.7MOV 5EH,#06HLP-1A:MOV 3CH,35HMOV 3DH,36HLCALL CHANGELCALL DISPLAY ;切换显示日、月LP-1B:JB P3.0,LP-1CLCALL DISPLAYJB P3.0,LP-1BLP

19、-1D:JNB P3.0,LP-1BSJMP LP-2LP-1C:MOV A,5EHCJNE A,#00H,LP-1ALJMP FUZHILP-2:MOV 5EH,#06HLP-3A:MOV 3CH,38HMOV 3DH,#20HLCALL CHANGELCALL DISPLAY ;切换显示年份LP-3B:JB P3.0,LP-3CLCALL DISPLAYJB P3.0,LP-3BLP-3D:JNB P3.0,LP-3DSJMP LP-4LP-3C:MOV A,5EHCJNE A,#00H,LP-3ALJMP FUZHILP-4: MOV 5EH,#06HLP-5A:MOV 3CH,37HM

20、OV 3DH,#0BBHLCALL CHANGELCALL DISPLAY ;切换显示星期LP-5B:JB P3.0,LP-5CLCALL DISPLAYJB P3.0,LP-5BLP-5D:JNB P3.0,LP-5DLIMP FUZHILP-5C:MOV A,5EHCJNE A,#00H,LP-5ALJMP FUZHILP-6:JB P3.1,LP-6ASJMP LP-6BLP-6A:LJMP LOPLP-6B:LCALL DISPLAY ;切换显示当前时间JB P3.1,LP-6LP-7:LCALL DISPLAYJNB P3.1,LP-7SETB P2.7MOV 3CH,32HMOV

21、3DH,#0FFHLCALL CHANGELCALL DISPALYJB P3.1,LP-7LCALL DISPLAYJB P3.1,LP-7LP-8:LCALL DISPLAYJNB P3.1,LP-8FUZHI:MOV 3CH,33HMOV 3DH,34HLJMP LOPCHANGE:MOV A,3DH ;将当前时间小时、分送显示缓冲区PUSH AANL A,#0FHMOV 42H,APOP ASWAP AANL A,#0FHMOV 43H,AMOV A,3CHPUSH AANL A,#0FHMOV 40H,APOP ASWAP AANL A,#0FHMOV 40H,APOP ASWAP

22、AANL A,#0FHMOV 41H,ARETYUYIN:MOV A,3FHCJNE A,#0,CC1CLR P3.4MOV 3FH,#01HCC1:RET3.2 录音子程序设计RECORD:MOV 3EH,#01HRECORD1:MOV 3CH,3EHMOV 3DH,#0AFHLCALL CHANGENEXTA:LCALL DISPALYJB P3.1,NEXTALCALL DISPLAYJB P3.1,NEXTAMOV A,3EHCJNE A,#01H,TRY1LJMP REC1TRY1:CJNE A,#02H,TRY2LJMP REC2TRY2:CJNE A,#03H,TRY3LJMP

23、REC3T RY3:CJNE A,#04H,TRY4LJMP REC4TRY4:CJNE A,#05H,TRY5LJMP REC5TRY5:LJMP ETBREC1:MOV 58H,#40HLCALL CLRP0REC11:LCALL RECMCJNE A,#48H,REC11LCALL CLRP0INC 3EHSJMP NE1REC2:MOV 58H,#48HLCALL CLRP0REC22:LCALL RECMCJNE A,#50H,REC22LCALL CLRP0INC 3EHSJMP NE1REC3:MOV 58H,#50HLCALL CLRP0REC33:LCALL RECMCJNE

24、 A,#58H,REC33LCALL CLRP0INC 3EHSJMP NE1REC4:MOV 58H,#58HLCALL CLRP0REC44:LCALL RECMCJNE A,#60H,REC44LCALL CLRP0INC 3EHSJMP NE1REC5:MOV 58H,#60HLCALL CLRP0REC55:LCALL RECMCJNE A,#68H,REC55LCALL CLRP0INC 3EHSJMP NE2NE1:JNB P3.1,RECORD2LCALL DISPLAYJNB P3.1,NE1SJMP NE1NE2:JB P3.1,ETB1LJMP ETBETB1:LCALL

25、 DISPALYJNB P3.1,NE2SJMP NE2RECORD2:JNB P3.1,RECORDXLJMP RECORD1RECORDX:LCALL DISPLAYSJMP RECORD23.3 动态扫描显示子程序设计DISPLAY:SETB RS1SETB RS0MOV R2,#04HMOV R0,#40HMOV R1,#44HGO-ON:MOV A,R1ADD A,R0MOV P1,ALCALL DELAY1INC R0INC R1DJNZ R2,GO-ONRETDELAY1:MOV R3,#14HAGAIN:MOV R4,#19HDELAY:DJNZ R4,DELAYDJNZ R3

26、,AGAINRET结 束 语随着国民经济的高速发展,城市公交事业发展的很快,很多城市都在实行无人售票,原来靠售票员报站的方式以不能满足实际需要。如何实现报站的自动化是一个需要解决的问题。本设计应用单片机技术和语音合成技术,鉴于传统公交车报站系统的不足之处,结合公交车辆的使用特点及实际营运环境,考虑到性价比和实用性设计的一种由单片机控制的公交车报站系统。通过进站、出站播报站名及服务用语,为市民提供更人性化,更完善的服务。通过这次期末课程设计,我感慨颇多,学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是

27、很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。的确,从选题到定稿,虽然只有两天时间,但是这短短的时间里,在很大程度上提高了自己的独立思考能力和对单片机的专业知识的了解,也深刻了解写一篇课程设计的步骤和格式,有过这样的一次训练,相信在以后我就不怕自己排版、设计,特别是格式方面。因此感谢余老师给我们这次课程设计的机会,让我从中学到很多。在课程设计过,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,对单片机汇编语言掌握得不

28、好等等。通过这次课程设计之后,一定把以前所学过的知识重新温故。同时,也感谢在这过程中帮助我的同学和老师。参考文献1 张培仁,张志坚,高修峰等编.十六位单片微处理器原理及应用(凌阳SPCE061A).清华大学出版社,20052 薛钧义等编.凌阳十六位单片机原理及应用.北京航天航空大学出版社,20033 王庆利,刘奎,袁建敏.单片机设计标准教程.北京邮电大学出版社,20084 张鑫主编.单片机原理及应用.电子工业出版社,2008,11 5 求是科技.单片机典型模块设计实例导航.人民邮电出版社,2004 6 王为青,程国钢.单片机Keil Cx51应用开发技术.人民邮电出版社,2007 7 黄俊.电力电子变流技术.机械工业出版社,20058 王化祥.传感器原理及应用.天津大学出版社,2004 9 温钢云,黄道平.计算机控制技术.华南理工大学出版社,2002 总 体 评 价 得分总体还不错,格式规范,态度端正,但拼凑痕迹很明显,给出的程序与单片机不配 15

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号