基于EPG3231和閃存的聲音播放器設(shè)計(jì)
摘要:提出一種在單片機(jī)系統(tǒng)中比較簡單地使用大容量NAND Flash存儲(chǔ)器的方法。與一般方法相比,編寫應(yīng)用程序的程序員不需要掌握計(jì)算機(jī)文件系統(tǒng)的規(guī)范,只要按照NAND Flash的讀、寫、擦除等時(shí)序?qū)ζ溥M(jìn)行操作,把NANDFlash當(dāng)成NOR Flash或SRAM來對(duì)待,這樣存儲(chǔ)器的物理地址對(duì)程序員而言是透明的,只需要在遇到壞塊(BAD BLOCK)時(shí)跳過該塊就可以了。該方法降低了使用NAND Flash存儲(chǔ)器的難度和成本,且不僅適用于EPG3231,也可以推廣到一般的8位單片機(jī)系統(tǒng)中使用。
關(guān)鍵詞:電子技術(shù);閃存;單片機(jī);聲音播放器
在從事單片機(jī)的教學(xué)中,由于學(xué)生對(duì)有聲音和顯示的制作項(xiàng)目更感興趣一些。因此,在學(xué)習(xí)過程中這種興趣往往能讓他們完成項(xiàng)目,獲得成就感,從而學(xué)到更多的東西。
目前在技術(shù)上,聲音的存儲(chǔ)大都使用大容量的NAND Flash,但一般按照文件系統(tǒng)的方式存儲(chǔ),這對(duì)學(xué)生有一定的難度。本聲音播放器的聲音文件采用非文件方式存儲(chǔ)在NAND Flash中,這樣在不需要太多背景知識(shí)的情況下,可以比較簡單地使用大容量的NAND Flash存儲(chǔ)器,降低了使用NAND Flash存儲(chǔ)器的難度和成本。
1 聲音播放器總體設(shè)計(jì)方案
聲音播放器總體設(shè)計(jì)框圖如圖l所示。其中存儲(chǔ)器用于存放聲音文件,單片機(jī)將存儲(chǔ)器中的聲音文件名顯示在顯示器上,并根據(jù)按鍵選擇要播放的聲音文件,從存儲(chǔ)器中將聲音文件的數(shù)據(jù)送到內(nèi)部的D/A轉(zhuǎn)換器,D/A的輸出通過功放放大后送到喇叭放出聲音。
其中,在選擇存儲(chǔ)器時(shí),應(yīng)滿足大容量、非易失、價(jià)格便宜等條件,根據(jù)上述條件,NAND Flash為最佳選擇,這里選用K9G8G08型NAND Flash,其容量是1 G字節(jié)。對(duì)于WAV格式的語音信息,8 bit、22.05 kHz、單聲道足以滿足一般需求,而對(duì)于音樂(歌曲)來講,44.1 kHz的采樣頻率也能達(dá)到較好效果,因此,該器件中能存儲(chǔ)約800 min語音或400 min音樂;顯示器采用122x32的LCM,內(nèi)置控制器為SEDl520,可以顯示14個(gè)漢字或28個(gè)英文字符;按鍵主要有放音/暫停、停止、上翻、下翻等,采用獨(dú)立式按鍵;單片機(jī)選用ELAN的EPG3231,該器件與5l系列單片機(jī)使用相似。
設(shè)計(jì)聲音播放器關(guān)鍵需要考慮:聲音數(shù)據(jù)以何種格式、何種方式載入K9G8G08。一種可直接用一個(gè)U盤,通過計(jì)算機(jī)將數(shù)據(jù)下載到K9G8G08中,聲音數(shù)據(jù)以文件方式存放。但這樣必須在單片機(jī)中完成與U盤的接口連接,并且要熟悉計(jì)算機(jī)的文件格式,這對(duì)單片機(jī)的初學(xué)者來講難度比較大。另一種是將聲音數(shù)據(jù)按順序存放在K9G8G08中(遇到壞塊時(shí)跳過即可),這樣數(shù)據(jù)存放的物理地址對(duì)開發(fā)者來講是透明的,再使用下載器就可以將聲音數(shù)據(jù)載入K9G8G08中。如果將下載器和聲音播放器做在一起,同樣可以在線下載數(shù)據(jù)。
2 聲音播放器硬件電路設(shè)計(jì)
2.1 K9G8G08簡介
K9G8G08是三星公司生產(chǎn)的1 Gx8 bit的NAND Flash存儲(chǔ)器,工作電壓為2.7~3.6 V,內(nèi)部存儲(chǔ)結(jié)構(gòu)為(2 K+64)字節(jié)/頁×128頁/塊×4096塊。外部電路通過共用的8位I/0端口分時(shí)訪問其命令寄存器、地址寄存器和數(shù)據(jù)寄存器,實(shí)現(xiàn)對(duì)器件讀、寫和擦除等操作。其存儲(chǔ)器的命名方式參見文獻(xiàn)。K9G8G08采用48引腳的TSOP封裝,其引腳配置如圖2所示。
評(píng)論