基于SPCE061A的SIO實現(xiàn)數(shù)碼錄音及播放
SPCE061A是臺灣凌陽公司生產(chǎn)的一種新型的十六位單片機,該款單片機資源豐富,具有極高的性價比。SPCE061A具有可編程的音頻處理功能,同時又具有串口輸入輸出端口SIO(它提供了一個1位的串行接口,用于與其它設(shè)備進行數(shù)據(jù)通訊),本文就是介紹利用SPCE061A的這兩個資源和串行接口的FLASH(SPR1024)來開發(fā)數(shù)碼錄音及播放系統(tǒng)。
本系統(tǒng)只使用5個IO口,還有好多資源沒有用到。因此,開發(fā)者可以在此基礎(chǔ)上擴展系統(tǒng)的功能,比如,使用SPCE061A的通用異步串行接口UART來實現(xiàn)與PC機的通訊,或者使用其他的IO口來外掛USB器件實現(xiàn)與PC機的USB通訊,制作復(fù)雜的錄、放音系統(tǒng)。
1系統(tǒng)結(jié)構(gòu)
系統(tǒng)結(jié)構(gòu)框圖如圖7所示,它主要由按鍵輸入、音頻錄入、音頻輸出和SPR1024存儲擴展這四部分組成。
按鍵輸入部分:它由3個按鍵組成。
音頻錄入部分:主要由MIC、自動增益電路、AD轉(zhuǎn)換電路構(gòu)成。
音頻輸出部分:主要由LM386放大器,喇叭播放器組成。
SPR1024FLASH部分:主要用來存儲編碼后的語音數(shù)據(jù)。
2硬件設(shè)計
本系統(tǒng)主要采用SPCE061A單片機和SPR1024FLASH芯片。其中SPR1024也是臺灣凌陽科技公司生產(chǎn)的,它是串行接口的FLASH,是40腳DIP封裝的IC。它的工作電壓范圍為2.7V~6V,存儲容量為128K*8位,F(xiàn)LASH內(nèi)部結(jié)構(gòu)以1k字節(jié)為一頁,共128頁。該芯片與SPCE061A的IOB0和IOB1相連的管腳是21pin的SCLK,4pin的ADPAD。
SPCE061A是性價比極高、資源豐富的一款十六位單片機,使用它可以非常方便的實現(xiàn)語音的錄放系統(tǒng)。SPCE061A的A/D轉(zhuǎn)換器有8個通道,其中有1個通道是MIC-IN輸入,它專門用于對語音信號進行采樣。語音信號經(jīng)Mic轉(zhuǎn)換成電信號,由隔直電容隔掉直流成分,然后輸入至SPCE061A內(nèi)部前置放大器。SPCE061A內(nèi)部自動增益控制電路AGC能隨時跟蹤、監(jiān)視前置放大器輸出的音頻信號電平,當(dāng)輸入信號增大時,AGC電路自動減小放大器的增益;當(dāng)輸入信號減小時,AGC電路自動增大放大器的增益,以便使進入A/D的信號保持在最佳電平,又可使削波減至最小。2路10位精度的DA,只需要外接功放(LM386)電路即可完成語音的播放。
系統(tǒng)的硬件連接圖如圖8所示。圖中三個按鍵控制著系統(tǒng)的錄音、停止、放音三個過程。按下Record鍵,采集語音數(shù)據(jù),編碼后存儲語音數(shù)據(jù)到SPR1024;按下Stop鍵,停止錄音;按下Play鍵,播放所錄語音。
圖8硬件連接圖
3軟件設(shè)計
本系統(tǒng)軟件設(shè)計流程圖如圖9所示:
錄放音的編解碼是靠調(diào)用庫函數(shù)完成,不需要我們設(shè)計硬件電路。凌陽公司提供了豐富的庫函數(shù),我們只要了解庫函數(shù)的使用,就能輕松完成語音錄放。本系統(tǒng)采用的是凌陽公司提供的音頻格式SACM_A2000,它的壓縮編碼率是16Kbit/s,因此可以計算出1Mbit的存儲器可以存放播放1M/16K=64秒的語音數(shù)據(jù)。凌陽的音頻格式有許多種,由于篇幅關(guān)系,不在這里詳細講述,請參考相關(guān)資料。
本系統(tǒng)底層驅(qū)動程序包括IO口初始化、SPR1024的讀寫、擦除使用的是匯編語言編寫的。上層程序包括語音的錄放采用C語言編寫。程序以函數(shù)的形式封裝對SPR1024芯片的操作,上層程序可以輕松調(diào)用這些函數(shù),實現(xiàn)對SPR1024讀寫、擦除操作。這些主要源于凌陽十六位單片機具有易學(xué)易用的效率較高的一套指令系統(tǒng)和集成開發(fā)環(huán)境。在此環(huán)境中,支持標準C語言,可以實現(xiàn)C語言與凌陽匯編語言的互相調(diào)用。
4總結(jié)
凌陽公司的十六位單片機SPCE061A是一種款式新穎,性價比極高的單片機。它具有較高運算速度的16位×16位的乘法運算指令;具有DSP功能的內(nèi)積運算指令;具有音頻處理功能;具有8位機價格、16位單片機性能••••••
本系統(tǒng)只是實現(xiàn)SPCE061A的一個基本應(yīng)用,設(shè)計者只要對該系統(tǒng)的電路、程序稍加改動,就可以實現(xiàn)語音復(fù)讀機、跟讀機、留言機、以及電話錄音儀等功能。