基于RFID(射频识别技术)和语音合成的导游讲解系统
1 自助语音讲解系统的工作原理
本自助语音讲解系统由2部分构成:RFID电子标签和手持终端。手持终端主要包括AT89S8252单片机、非接触式IC卡读写及射频模块电路、科大讯飞XF-S4240语音合成模块、电源电路等,其原理图主要框图如图l所示。当手持终端检测到RFID电子标签,产生中断,读取电子标签信息。即可识别出展品代号,调用存储在单片机中的本展品的语音讲解文本,通过语音合成模块,由语音放大电路输出,完成讲解任务。
2 系统硬件设计
2.1 非接触式射频读卡器
由于非接触式IC卡与读卡设备无接触,它是通过射频电磁感应从读写设备获取能量和交换数据,读写操作只需要将卡片放在读写器附近一定的距离之内就能实现数据交换和身份识别等,使用方便快捷、不易损坏,广泛应用于存取频繁、可靠性高的场合。
本系统采用北京完美公司的WM-01TA模块来实现。该模块配套有环行天线,工作频率为125 kHz;具有异步串行通讯UART接口;默认串口波特率为9 600 b/s,无校验,8位数据位,1位停止位;可读取EM只读感应体,读卡距离为60~90 mm,读卡速度大于0.5s,并且采用标准IC引脚DIP40外型,特别方便嵌入到目标线路板中。该射频模块共有7个引脚,引脚说明如表l所示。该器件价格低廉,完全满足该项目设计需求。
当卡片进入感应区时,模块向串口发送一次卡号。如果卡片未离开感应区,模块则不再向串口送卡号,如果卡片离开感应区,再进入感应区,则该模块需再送一次卡号。
TTL232数据传输主要是传送卡号,其传送数据格式为:AAH FFH DO D1 D2 D3 D4校验和,共8个字节,其中AAH和FFH为命令码:DO~D4为40位卡号,其中低地址为高字节Motorola结构:检验和为地址0~5位,共7字节“XOR”异或值。例如:某40位卡号为01021DF6FA(HEX),对应发送格式为:AAH FFH 01H 02H 1DH F6H FAH 47H,其卡号为5个字节:01H 02H 1DH F6H FAH。
WM-01TA通过UART接口与单片机连接,如图2所示。
2.2 语音模块XF-S4240
XF-S4240中文语音合成模块是中科大讯飞信息科技有限公司面向高端应用推出的嵌入式中文语音合成模块。可支持任意的中文文本、英文字母的语音合成。该模块通过异步串口(UART)、SPI接口及I2C总线3种方式接收待合成的文本,直接合成为语音输出。该模块支持GB2312、GBK、BIG5、UNICODE等4种内码格式的文本,具有智能的文本分析处理算法,并支持多种控制命令,包括:合成、停止、暂停合成、继续合成等。XF-S4240语音模块封装成16端子,各端子功能如表2所示。
语音模块的命令格式由帧头、数据长度区及数据区3部分组成,各部分的定义如表3所示。语音模块的命令如表4所示。
如要合成“欢迎您参观莫高窟”,只需对模块发送格式为GB2312的文本代码:
其中0xFD为帧头,0x00为数据区长度的高字节,Ox14为数据区长度的低字节(注意:长度字节为合成代码字节长+2),0x01为语音合成命令,0x00为GB2312的命令码。0xBB、0xB6 为“欢”的GB2312码,0xD3、0xAD为“迎”的GB2312码……0xAD、0xA3为“。”的GB2312码。
本设计中,AT89S8252与XF-S4240通过SPI通讯来实现,电路连接见图2。语音信号由LM386放大输出。由于该模块采用3.3 V供电,需用AMSlll7将5 V转换为3.3 V电源。
2.3 AT89S8252单片机
本系统设计中,射频读卡模块具有UART接口,语音合成模块具有UART和SPI接口。由于普通51单片机只有一个串口,因此存在串口的扩展问题。AT89C8252单片机是ATMEL公司的8位微处理器,具有SPI接口是AT89S8252不同于其他单片机的主要特点,它与51单片机完全兼容,但
在P1口(其中的P1.4~P1.7)上扩展了SPI接口。可以很方便地与语音模块通信,因此,在本系统选择AT89S8252,可以大大简化系统的软硬件设计。
AT89S8252共有3个SPI寄存器,分别是控制寄存器SPCR、状态寄存器SPSR和数据寄存器SPDR。
1)控制寄存器SPCR的内容格式为:
SPIE:SPI中断使能位。为0时,禁止SPI中断:为1时,若EA也为1,则使能SPI中断;
SPE:SPI使能位。为0时,禁止SPI通道;为1时,使能SPI中断,此时,P1.4、P1.5、P1.6和P1.7用作*****、MOSI、
模拟电路 模拟芯片 德州仪器 放大器 ADI 模拟电子 相关文章:
- 12位串行A/D转换器MAX187的应用(10-06)
- AGC中频放大器设计(下)(10-07)
- 低功耗、3V工作电压、精度0.05% 的A/D变换器(10-09)
- PIC16C5X单片机睡眠状态的键唤醒方法(11-16)
- 用简化方法对高可用性系统中的电源进行数字化管理(10-02)
- 利用GM6801实现智能快速充电器设计(11-20)