基于單片機控制的新型智能電梯語(yǔ)音系統設計
摘 要:本文設計了一種基于單片機控制的智能電梯語(yǔ)音系統,對整個(gè)系統的電路原理、單片機、CPLD和解碼器的接口等硬件原理作了詳細論述。軟件部分針對電梯語(yǔ)音服務(wù)的要求,通過(guò)對電梯系統中特殊信號的邏輯判斷,來(lái)完成對電梯語(yǔ)音服務(wù)的智能化控制,成功實(shí)現了電梯語(yǔ)音服務(wù)的智能化和自動(dòng)化。
關(guān)鍵詞:MP3;STC89C58RD+C;VS1011E;語(yǔ)音系統;解碼器
引言
語(yǔ)音系統對電梯來(lái)說(shuō)是不可缺少的部分,比如進(jìn)行樓層報數、方向提示、報警告示、消防對講甚至廣告宣傳等。目前絕大多數電梯使用語(yǔ)音芯片來(lái)進(jìn)行語(yǔ)音存儲和播放,而語(yǔ)音芯片系統存在一些缺陷,比如外圍電路復雜、音質(zhì)不佳、成本偏高、容量有限以及語(yǔ)音更改不便等。有鑒于此,本文設計了一款基于單片機控制的智能電梯語(yǔ)音系統。
系統概述
電梯控制系統的基本功能,是根據用戶(hù)的樓層按鍵信息,顯示到往樓層數字,語(yǔ)音播報到達樓層。系統框圖如圖1所示。

圖1 電梯語(yǔ)音系統結構框圖
硬件設計
根據FLASH的讀寫(xiě)規則和MP3的解碼協(xié)議,事先設定CPLD的邏輯規則??刂破靼凑蛰斎氲男畔?,向CPLD發(fā)出控制命令和傳送數據。CPLD根據接收到的命令按照邏輯規則讀寫(xiě)FLASH以及對MP3設定內部控制寄存器和輸送音頻數據。MP3輸出的模擬信號可以直接推動(dòng)耳機發(fā)音,但是如果需要推動(dòng)大功率揚聲器,還需要外接功率放大器。
系統微控制器采用了STC89C58RD+C,它是新一代51增強型高性能單片機,具有加密性強、超強抗干擾、超低功耗、在系統可編程、可供應內部集成 MAX810 專(zhuān)用復位電路等特點(diǎn)。STC89C58RD+C擁有32K的FLASH和16K的EEPROM,而值得關(guān)注的是其內含的1280 Byte內部SRAM存儲空間,在音頻數據處理和顯示數據處理需要進(jìn)行較大數據緩沖的情況下,選擇該款具有大容量?jì)炔看鎯ζ鞯膯纹瑱C,可以勝任系統的控制要求。
本文使用CPLD負責邏輯控制和數據傳遞。CPLD電路使用XC9572-VQ64,它擁有72個(gè)宏單元、1600個(gè)可用門(mén)電路、52個(gè)I/O口,具有低至2.5V供電,可在線(xiàn)編程等特性。
MP3解碼芯片VS1011E工作原理與電路設計
VS1011E音頻解碼芯片為VS10XX系列的第三代產(chǎn)品,它內部包含一個(gè)高性能、低功耗的DSP處理核,一個(gè)5.5KB 片內RAM可供用戶(hù)存儲代碼和數據,一個(gè)串行SPI總線(xiàn)接口,一個(gè)雙聲道采樣頻率可調的16位DAC。工作于12.288MHz~14MHz或24.576MHz~28MHz時(shí)鐘頻率下,可以解碼MPEG1&2 Layer1、2、3以及MPEG2.5 Layer3、WAV和PCM格式文件。
VS1011E的工作流程
VS1011E的工作流程如圖2所示。

圖2 解碼芯片VS1011E工作流程圖
{{分頁(yè)}}
本系統中,MP3或WAV格式音頻文件首先通過(guò)SDI總線(xiàn)進(jìn)入芯片內部,并解碼。
解碼后,如果SCL_AIADDR != 0,將會(huì )執行應用區代碼,代碼地址由相應的地址寄存器提供。然后,按照SCL_BASS寄存器(SB_AMPLITUDE位和ST_AMPLITUDE位)的設置,數據可能會(huì )被送到低音和高音優(yōu)化器進(jìn)行音效處理。此后,數據通過(guò)音量控制單元,同時(shí)備份到音頻FIFO中。音頻FIFO保持數據,并作為采樣率轉換器和DAC的輸入。采樣率轉換器將所有不同采樣率轉換成CLKI/512,輸送給DAC。DAC按位依次產(chǎn)生立體聲模擬信號。
由于本系統為電梯系統,推動(dòng)大功率揚聲器發(fā)聲需要外置功放。這里功放采用的是CD4752CZ,該功放具有較大的電壓范圍和抗干擾能力,適合電壓波動(dòng)大,外界干擾強的電梯工作環(huán)境。
存儲器的組織結構
系統采用NAND閃存K9F5608作為存儲器。NAND閃存以塊(block)和頁(yè)(page)為存儲單元。K9F5608包括2048塊,每1塊又包括32頁(yè),1頁(yè)大小為528字節,依次分為2個(gè)256字節的數據區,最后是16字節的備用空間。
軟件設計
電梯在運行過(guò)程中,如果沒(méi)人去按鍵,那么電梯語(yǔ)音系統就播報一些廣告、天氣預報等,同時(shí)根據要求伴有點(diǎn)陣或液晶顯示。當有鍵按下時(shí),語(yǔ)音系統則會(huì )根據按下的鍵值調用相應的按鍵處理程序,比如到達的樓層數等。主程序流程圖如圖3所示。

圖3 系統主流程圖
{{分頁(yè)}}
VS1011E的軟件設計
本系統音頻解碼芯片采用VS1011E,控制流程如圖4所示。

圖4 解碼芯片VS1011E控制流程圖
VS1011E通過(guò)一個(gè)工作于從模式的SPI串行總線(xiàn)與主機進(jìn)行數據和控制信息的交流,音頻數據通過(guò)串行數據接口(SDI)傳送,控制數據則通過(guò)串行控制接口(SCI)傳送。
VS1011E的SPI接口具有兩種工作模式:VS1002新模式(SM_SDINEW = 1)和VS1001兼容模式(SM_SDINEW = 0)。當SM_SDISHARED = 0時(shí),控制信號和數據信號的傳送分別采用XCS和XDCS作為同步信號;當SM_SDISHARED = 1時(shí),共用XCS作為同步信號。
作為從機工作模式,VS1011E通過(guò)一個(gè)信號線(xiàn)Dreq指示是否允許主機傳送數據,當Dreq為高時(shí),VS1011E至少可以接受32KB的SDI數據或者SCI控制命令。
{{分頁(yè)}}
軟件控制要點(diǎn)
對MP3解碼器進(jìn)行控制時(shí)應注意以下6點(diǎn):
(1)設置內部控制寄存器MODE的參數。包括支持文件格式、軟啟動(dòng)設置、數據流模式設置、DCLK觸發(fā)沿設置和SDI數據首位設置等。SM_SDINEW和SM_SDISHARED設置也在這里進(jìn)行。
(2)如果時(shí)鐘速率不是24.576MHz,需要設置SCI_CLOCKF寄存器。若通過(guò)改變SCI_CLOCKF使用倍頻時(shí)鐘,應該將適當的采樣速率寫(xiě)入SCI_AUDATA寄存器,等待至少11000個(gè)時(shí)鐘后才可以進(jìn)行SPI通信。
(3)設置音量寄存器SCI_VOL;0位為最大音量,0xFEFE位為靜音,0xFFFF將觸發(fā)模擬調電模式。
(4)若希望強化低音和高音,可以設置寄存器SCI_BASS。
(5)若使用用戶(hù)代碼,通過(guò)將SCI_AIADDR置零關(guān)閉它。
(6)若采用RAM級的用戶(hù)代碼,可以通過(guò)激活SCI_WRAM、SCI_WRAMADDR、SCI_AIADDR來(lái)裝載這些數據實(shí)現所需功能。
結語(yǔ)
基于MP3的語(yǔ)音系統如今越來(lái)越受到人們的重視和喜愛(ài),它們被應用到更多的工業(yè)領(lǐng)域,如公共汽車(chē)的站名播報系統等。由于具有良好的性能,基于MP3的語(yǔ)音系統將在非專(zhuān)業(yè)音響領(lǐng)域也得到更廣泛的應用?!?/P>
參考文獻
1.STC89C51RC-RD+_GUIDE-CHINESE. http://www.mcu-memory.com
2.高紅亮,周晟等. 一種智能電梯語(yǔ)音系統的設計. 工業(yè)控制技術(shù),2005年10月
評論