天津理工大学2015届本科毕业设计说明书
下面要多实物进行调试,首先要先测试电源是否能正常供电,我们把 提前焊接好的5V电源接到焊接的电路板上观察现象,若电路板上的二极管发光,说明电源电路正常,若二极管没发光,则证明电源有问题,应该及时处理。
其次我们要对整体的实物进行测试,先把LCD12864液晶显示程序烧录到单片机中,看看液晶显示器是否能正常显示文字,若能证明液晶显示模块焊接无问题,若不能显示则需要检查电路焊接问题并排除故障。然后用同样的方法来验证语音模块是否能正常工作,若能正常工作,则这个实物已经能完成公共汽车语音播报和显示功能。
最后我们要对无线收发模块进行调试,首先这个芯片工作电压是3.3V,所以我们需要用到AMS1117芯片把5V电压降到3.3V和无线模块相连,并且用之前的程序测试一下无线模块能否正常工作。若接收模块接收到由发射模块发出的信号时,发光二极管会亮,反之不亮。当全部模块都检测正常后,我们就可以用这个实物来实现公共汽车语音提示自动播报。
经过几天的编写程序,反反复复修改,并一次次的调试,最终在我努力地学习中与钻研中,把整个系统的程序编写出来。并且测试了一下效果,在空旷的室外,能在80米左右能接收到信号,在室内30米左右能接收到信号。
5.4 实物图
制作完的实物图可由图5.1所展示:
(1) (2)
32
天津理工大学2015届本科毕业设计说明书
(3) (4)
图5.1 实物展示
注: 图(1)为车载主体,能接收信号。 图(2)位发射台,能发射信号。
图(3)未接收信号前的显示内容。 图(4)接收到第一个站台发射的信号后显示内容。
33
天津理工大学2015届本科毕业设计说明书
第六章 结论
通过对公共汽车语音提示自动报站对国内外研究现状进行分析后,本实验采用单片机来控制公共汽车语音提示自动报站系统。软硬件的合理搭配,原理图的绘制和PCB图的制作,实物焊接和调试,基于MCU的公共汽车语音提示自动报站系统最终制作成功。
本设计是采用stc12作为支配的主体,把语音存在ISD4004语音芯片地址中,通过NRF无线收发装置彼此之间传递信息。当彼此之间收到信号时,单片机就会调用ISD4004语音芯片存储语音的地址,外接一个小喇叭播报出来,再利用LCD12864液晶显示模块,把当前的时间、温度、方向、站台等信息显示出来。
为了完成本设计,做了以下几个工作:
(1)了解国内外公交车自动报站的技术和研究新动向,并总结出资料。也充分感受到公共汽车语音提示自动报站的意义和重要性。
(2)根据设计的要求,我分别选择了STC12c5a60s单片机、ISD4004音芯片、NRF无线收发装置、LCD12864液晶屏,并且分别查阅了这四种模块的中文资料,了解下应该怎么运用这些芯片。最终用有关的程序来调试它们,为公家车自动报站系统的设计做铺垫。
(3)一个电子产品的设计离不开原理图的设计和PCB板的制作,我选用一款名叫Altium designer 10的软件,参考Altium designer 10入门与PCB设计实例这本是学会了如何绘制原理图和PCB图。
(4)根据电路原理图就要进行焊接,我了解了焊接时应该注意的事项,并焊接出来。 (5)焊接出实物之后就应该编程,我选用的是Keil C51编程软件,该编程软件采用C语音,操作简单。
(6)烧录程序并调试,最终完成控制公共汽车语音提示自动报站的设计。
34
天津理工大学2015届本科毕业设计说明书
参考文献
[1]耶晓东.基于单片机的公交车自动报站系统的设计与实现[J].信息技术,2011,(04):
41-46.
[2]李吉志.基于单片机的公交车智能语音报站和液晶显示系统设计[J].科技广
场,2010(03):163-165.
[3]黄艳国,许伦辉,眭相林.基于GPS公交车自动报站系统的设计[J].交通信息与安
全,2009,01(27):141-144.
[4] 李艮. 基于单片机的公交车报站系统[J]. 才智,2009(10).
[5] 曹云川,周遐,金瑞.公交车自动报站器设计[J]. 昆明理工大学学报(理工
版),2009,34(3):44-47.
[6] 周波,冯顽童,胡建龙,罗洪波.公交车自动报站系统的设计[J]. 四川理工学院学报(自然
科学版), 2008,21(03):79-81.
[7] 王俊.基于单片机的公交车报站器的设计[J]. 科技经济市场,2008(06).
[8] 周国雄,许明情.城市公交车自动报站系统设计及其应用[J]. 装备制造技
术,2007(04):109-110.
[9] 杨程泽.基于51单片机的公交车报站系统[J]. 电子制作, 2007(09).
[10]杨伟平.基于nrf905的公交车自动报站系统[J]. 通讯技术.2009,42(10):134-136. [11]李静,项伟,杨海萌. 基于单片机的公交车自动报站系统设计[J].自动化与仪器仪表,
2013(05):71-75.
[12]许连华,李学庆.基于GPS的公交车自动报站系统[J].计算机工程, 2005,31(23)191-218. [13]孙洪伟. 基于GPS和GSM的智能公交报站系统[D].吉林大学,2007(05). [14]黄发乾. 公交车辆自动定位与智能报站系统研究[D].北京交通大学,2008(06). [15]吴讯,张洪波,李素琴. 用单片机设计公交车自动报站系统[J].电子世界,2008(11).
35
天津理工大学2015届本科毕业设计说明书
附录 附录1
#include
typedef unsigned char uchar; typedef unsigned char uint;
//****************************************NRF24L01端口定义*************************************** sbit MISO =P1^4; sbit MOSI =P1^3; sbit SCK =P1^2; sbit CE =P1^0; sbit CSN =P1^1; sbit IRQ =P1^5;
//*********************************************NRF24L01*************************************
#define TX_ADR_WIDTH 5 // 5 字节的地址宽度 #define RX_ADR_WIDTH 5 // 5字节的地址宽度
#define TX_PLOAD_WIDTH 20 // 20 字节的用户数据宽度 #define RX_PLOAD_WIDTH 20 // 20字节的用户数据宽度
uint const TX_ADDRESS[TX_ADR_WIDTH]= {0x34,0x43,0x10,0x10,0x01}; //本地地址 uint const RX_ADDRESS[RX_ADR_WIDTH]= {0x34,0x43,0x10,0x10,0x01}; //接收地址 //***************************************NRF24L01寄存器指令******************************************************* #define READ_REG 0x00 // 读寄存器指令 #define WRITE_REG 0x20 // 写寄存器指令 #define RD_RX_PLOAD 0x61 // 读取接收数据指令 #define WR_TX_PLOAD 0xA0 // 写待发数据指令 #define FLUSH_TX 0xE1 // 冲洗发送 FIFO指令 #define FLUSH_RX 0xE2 // 冲洗接收 FIFO指令 #define REUSE_TX_PL 0xE3 // 定义重复装载数据指令 #define NOP 0xFF // 保留
//*************************************SPI(nRF24L01)寄存器地址****************************************************
#define CONFIG 0x00 // 配置收发状态,CRC校验模式以及收发状态响应方式 #define EN_AA 0x01 // 自动应答功能设置 #define EN_RXADDR 0x02 // 可用信道设置 #define SETUP_AW 0x03 // 收发地址宽度设置 #define SETUP_RETR 0x04 // 自动重发功能设置 #define RF_CH 0x05 // 工作频率设置
#define RF_SETUP 0x06 // 发射速率、功耗功能设置 #define STATUS 0x07 // 状态寄存器
36
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于单片机的车站自动报站系统设计(8)在线全文阅读。
相关推荐: