《電子技術(shù)應用》
您所在的位置:首頁 > 微波|射頻 > 設計應用 > 基于EPG3231和閃存的聲音播放器設計方案
基于EPG3231和閃存的聲音播放器設計方案
摘要: 提出一種在單片機系統(tǒng)中比較簡單地使用大容量NAND FLASH存儲器的方法。與一般方法相比,編寫應用程序的程序員不需要掌握計算機文件系統(tǒng)的規(guī)范,只要按照NAND FLASH的讀、寫、擦除等時序?qū)ζ溥M行操作,把NANDFLASH當成NOR FLASH或SRAM來對待,這樣存儲器的物理地址對程序員而言是透明的,只需要在遇到壞塊(BAD BLOCK)時跳過該塊就可以了。該方法降低了使用NAND FLASH存儲器的難度和成本,且不僅適用于EPG3231,也可以推廣到一般的8位單片機系統(tǒng)中使用。
Abstract:
Key words :

  在從事單片機的教學中,由于學生對有聲音和顯示的制作項目更感興趣一些。因此,在學習過程中這種興趣往往能讓他們完成項目,獲得成就感,從而學到更多的東西。

  目前在技術(shù)上,聲音的存儲大都使用大容量的NAND FLASH,但一般按照文件系統(tǒng)的方式存儲,這對學生有一定的難度。本聲音播放器的聲音文件采用非文件方式存儲在NAND FLASH中,這樣在不需要太多背景知識的情況下,可以比較簡單地使用大容量的NAND FLASH存儲器,降低了使用NAND FLASH存儲器的難度和成本。

  1 聲音播放器總體設計方案

  聲音播放器總體設計框圖如圖l所示。其中存儲器用于存放聲音文件,單片機將存儲器中的聲音文件名顯示在顯示器上,并根據(jù)按鍵選擇要播放的聲音文件,從存儲器中將聲音文件的數(shù)據(jù)送到內(nèi)部的D/A轉(zhuǎn)換器,D/A的輸出通過功放放大后送到喇叭放出聲音。



圖1  聲音播放器總體設計框圖

  其中,在選擇存儲器時,應滿足大容量、非易失、價格便宜等條件,根據(jù)上述條件,NAND FLASH為最佳選擇,這里選用K9G8G08型NAND FLASH,其容量是1 G字節(jié)。對于WAV格式的語音信息,8 bit、22.05 kHz、單聲道足以滿足一般需求,而對于音樂(歌曲)來講,44.1 kHz的采樣頻率也能達到較好效果,因此,該器件中能存儲約800 min語音或400 min音樂;顯示器采用122x32的LCM,內(nèi)置控制器為SEDl520,可以顯示14個漢字或28個英文字符;按鍵主要有放音/暫停、停止、上翻、下翻等,采用獨立式按鍵;單片機選用ELAN的EPG3231,該器件與5l系列單片機使用相似。

  設計聲音播放器關鍵需要考慮:聲音數(shù)據(jù)以何種格式、何種方式載入K9G8G08。一種可直接用一個U盤,通過計算機將數(shù)據(jù)下載到K9G8G08中,聲音數(shù)據(jù)以文件方式存放。但這樣必須在單片機中完成與U盤的接口連接,并且要熟悉計算機的文件格式,這對單片機的初學者來講難度比較大。另一種是將聲音數(shù)據(jù)按順序存放在K9G8G08中(遇到壞塊時跳過即可),這樣數(shù)據(jù)存放的物理地址對開發(fā)者來講是透明的,再使用下載器就可以將聲音數(shù)據(jù)載入K9G8G08中。如果將下載器和聲音播放器做在一起,同樣可以在線下載數(shù)據(jù)。

  2 聲音播放器硬件電路設計

  2.1 K9G8G08簡介

  K9G8G08是三星公司生產(chǎn)的1 Gx8 bit的NAND FLASH存儲器,工作電壓為2.7~3.6 V,內(nèi)部存儲結(jié)構(gòu)為(2 K+64)字節(jié)/頁×128頁/塊×4096塊。外部電路通過共用的8位I/0端口分時訪問其命令寄存器、地址寄存器和數(shù)據(jù)寄存器,實現(xiàn)對器件讀、寫和擦除等操作。其存儲器的命名方式參見文獻。K9G8G08采用48引腳的TSOP封裝,其引腳配置如圖2所示。


圖2  K9G8G08引腳配置

  2.2 EPG3231簡介

  EPG323l是ELAN公司的8位RISC單片機,它有11個8位并行口、1個8位電流輸出型的D/A、1個10位逐次逼近型A/D、1個通用異步收發(fā)器UART、1個8,16,24位的串行外設接口SPI、3個定時器等,硬件資源豐富,還支持手寫識別、語音識別、ADPCM編解碼等功能。另外,EPG3-23l的速度較快,在時鐘頻率為16 MHz時,指令周期為125 ns。

  2.3 EPG3231與K9G8G08的電路連接

  圖3為EPG3231與K9G8G08的電路連接圖。圖中沒有給出K9G8G08,只給出了EPG323l的基本電路及用網(wǎng)絡標號標出的與K9G8G08的連接引腳。K9G8G08的19引腳是寫保護,在實際電路中接+3.3 V(不保護)。需要說明的是,EPG323l的D/A輸出是48引腳(PBl),輸出電流信號,需要將其輸出轉(zhuǎn)換為電壓信號再送至后續(xù)的功放。其中比較簡單且可行的做法是在PBl與地之間接一只電阻來完成電流與電壓的轉(zhuǎn)換,關鍵是該電阻的取值。若電阻阻值較大,輸出波形的上部會出現(xiàn)限幅失真;若阻值較小,則不能最大限度地利用D/A的動態(tài)范圍。因此確定該電阻阻值的方法是:先接一只可調(diào)電阻,寫一段測試程序,向D/A反復連續(xù)地送00~FFH的數(shù)值,通過示波器觀察PBl輸出,調(diào)整可調(diào)電阻,使輸出為不失真的鋸齒波,且最高點為3.3 V(即參考電源VREX(70引腳)電壓)。



圖3  EPG3231與K9G8G08的電路連接圖

  另外,圖3中使用EPG323l的D端口(PD0~PD7)與K9G8G08的I/O端口相連,這個端口必須是雙向的,使用其他的雙向端口也可以,但不要使用J端口和K端口,這兩個端口適用按鍵的輸入/輸出(矩陣鍵盤時的掃描輸出),速度比較慢,不能用于與K9G8G08的通信。還需注意的是,由于WAV文件中的編碼是無符號數(shù)(即OOH是最低電平,F(xiàn)FH是最高電平),而EPG323l的D/A輸入是有符號數(shù)(即80H是最低電平,7FH是最高電平),所以程序中應將WAV聲音數(shù)據(jù)的最高位取反后送到D/A。

  3 聲音播放器軟件設計

  在聲音播放器軟件設計之前,應確定好K9G8G08中數(shù)據(jù)存放的格式。

  首先是地址的格式。對K9G8G08內(nèi)部存儲單元操作的地址是分5個字節(jié)送出的,所以地址的格式最好是按這5個字節(jié)編排,如表l所示。

表一 地址的格式


 

  其次,根據(jù)NAND FLASH的特點,其內(nèi)部是可能有壞塊(BAD BLOCK)存在的,但BLOCK 0一定是有效塊(VALID BLl3CK),所以將壞塊信息存在BLOCK 0中。而K9G8G08的有效塊的個數(shù)在3 99* 096之間,也就是說,壞塊的個數(shù)不大于100個。塊地址是由A19~A30決定的,為方便程序的編寫,將塊地址分3個字節(jié)存儲,各個地址位的安排同表1中的第3、4、5個字節(jié),將A12~A18位放O。壞塊信息存儲區(qū)最多占用300個字節(jié)。

  第三,將聲音文件的目錄也存在BLOCK O中。目錄中的每條記錄占用64字節(jié),其中前5個字節(jié)是聲音文件的起始地址,同樣為了方便程序的編寫,每字節(jié)中包含的地址位與表1一致;后面的59個字節(jié)是聲音的名字,比如歌曲名等,用0表示結(jié)束,如表2所示。從表2中可知,目錄區(qū)最多有4 088個記錄,應該能滿足一般的需要。

表二  存儲區(qū)分配

  軟件設計中最關鍵的是對K9G8G08的操作。該聲音播放器中,程序只需對K9G8G08進行讀操作即可。圖4為讀K9G8G08的軟件設計流程。

圖4  K9G8G08的軟件設計流程

  對K9G8G08讀操作的程序在定時器中斷中調(diào)用。對于22.05 kHz或44.1 kHz的WAV文件,定時器的中斷周期分別為45.4μs或22.7μs。對于單聲道、8 bit的WAV文件,其頻率可以在文件頭的第18H、19H字節(jié)得到,對于22.05 kHz和44.1 kHz的WAV文件,這兩個字節(jié)的值分別是22H、56H和44H、ACH,聲音信息從第2CH個字節(jié)開始。需要說明:1)寫入命令的操作包括送出命令字和在寫(WE)控制線上產(chǎn)生下降沿;2)寫入5字節(jié)地址的操作要按表1中的順序向K9G8G08寫入5個字節(jié)的地址。每個地址的寫入包括送出地址和在寫(WE)控制線上產(chǎn)生下降沿;3)輸入數(shù)據(jù)的操作包括在讀(RE)控制線上產(chǎn)生上升沿和讀入數(shù)據(jù)。

  4 結(jié)束語

  由于對不同型號的NAND FLASH的操作有可能略有差別,所以如果要使播放器同時能支持多種NAND FLASH,應該在程序中讀取器件的ID,根據(jù)其ID選擇不同的讀NAND FLASH的程序。三星NAND FLASH的ID參見文獻。該聲音播放器具有盒式錄音機和復讀機的放音功能,如果增加錄音功能,它完全可以是盒式錄音機和復讀機的替代品,因為它有不用磁帶和沒有復雜的、易損壞的機械結(jié)構(gòu)的優(yōu)點,是前兩者不能相比的。只是由于8 bit的量化分辨率略低了點,體現(xiàn)在播放音量較小的語音時,有點“嗚嗚”的噪音,這是量化誤差引起的。可以采用在播放器中使用16 bit的WAV文件的方法來解決,但這會增加一倍的數(shù)據(jù)量。也可以通過使用MP3文件的方法來解決,這時它就是一臺MP3播放器了,但需要增加MP3解碼器(或用軟件解碼)。這里所提出的對NAND FLASH的使用方法簡單易行,基本上類似于對NOR FLASH或SRAM的使用,存儲器的物理地址對程序員來講是透明的,易于理解和控制。


 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
正在播放亚洲| 久久亚洲春色中文字幕久久久| 亚洲影视在线播放| 亚洲美女视频网| 亚洲国产欧美国产综合一区| 极品尤物一区二区三区| 国产在线精品二区| 国产亚洲人成网站在线观看| 国产精品夜夜夜一区二区三区尤| 欧美精品电影| 欧美啪啪成人vr| 欧美激情导航| 欧美精品日韩三级| 欧美日韩a区| 欧美日韩精品免费观看视频| 欧美美女福利视频| 欧美日韩二区三区| 欧美日韩高清不卡| 欧美日韩在线视频一区二区| 欧美视频一区二区三区在线观看| 欧美日韩免费观看一区三区| 欧美日韩免费一区二区三区| 欧美日韩一区不卡| 国产精品久久久久久五月尺| 国产精品亚洲综合色区韩国| 国产欧美精品va在线观看| 国产亚洲精品久久久| 韩国一区二区三区在线观看| 在线成人国产| 99精品欧美一区| 亚洲夜晚福利在线观看| 亚洲欧美日韩中文视频| 久久精品电影| 亚洲精品乱码久久久久久按摩观| 日韩亚洲欧美一区| 亚洲在线视频| 久久精品视频在线免费观看| 免费欧美高清视频| 欧美日韩视频不卡| 国产女主播在线一区二区| 韩国av一区二区| 亚洲狼人综合| 亚洲综合色婷婷| 久久精品亚洲精品| 中国亚洲黄色| 性欧美超级视频| 久久一本综合频道| 欧美日韩第一区| 国产精品自在欧美一区| 在线欧美亚洲| 一本色道久久综合亚洲91| 欧美一区不卡| 日韩手机在线导航| 午夜视频久久久| 免费欧美视频| 国产精品系列在线播放| 亚洲高清一区二区三区| 亚洲视频福利| 亚洲国产精品久久久久婷婷884| 一本色道久久88综合日韩精品| 欧美亚洲视频在线观看| 免费中文日韩| 国产精品嫩草影院av蜜臀| 伊人婷婷久久| 亚洲一区二区不卡免费| 91久久国产综合久久| 亚洲永久免费精品| 老巨人导航500精品| 欧美午夜精品久久久久久浪潮| 国产在线视频欧美| 妖精成人www高清在线观看| 久久精品欧洲| 亚洲免费网址| 欧美激情91| 国产一区二区三区在线观看网站| 亚洲精品在线看| 亚洲大黄网站| 欧美一区二区精品| 欧美日韩免费看| 黄色工厂这里只有精品| 中文av一区二区| 亚洲精品乱码| 久久综合狠狠综合久久综合88| 国产精品高清一区二区三区| 亚洲国产高清高潮精品美女| 午夜在线不卡| 亚洲欧美国产一区二区三区| 欧美久久久久久| 永久免费精品影视网站| 欧美一级久久久| 亚洲女人天堂成人av在线| 欧美黄网免费在线观看| 黄色成人91| 午夜精品久久久久久久白皮肤| 亚洲午夜av在线| 欧美精品1区2区3区| 激情国产一区二区| 亚洲影院色无极综合| 亚洲无毛电影| 欧美精品在线观看| 亚洲电影天堂av| 亚洲电影在线| 久久久水蜜桃| 国产精品在线看| 亚洲专区免费| 亚洲一区二区视频在线观看| 欧美激情亚洲综合一区| 又紧又大又爽精品一区二区| 羞羞色国产精品| 欧美一区二区三区四区在线| 欧美视频一区二区三区…| 亚洲欧洲精品一区二区三区| 亚洲国产精品一区二区www在线 | 久久精品日韩欧美| 久久国产精品一区二区三区| 国产精品一二三四| 亚洲自拍偷拍福利| 欧美一区二视频在线免费观看| 欧美亚男人的天堂| 一区二区三区四区国产| 亚洲综合激情| 国产精品裸体一区二区三区| 制服丝袜激情欧洲亚洲| 亚洲影院高清在线| 国产精品女人网站| 亚洲综合日韩在线| 久久精品国产v日韩v亚洲| 国产日韩欧美精品一区| 欧美一区久久| 久久综合色一综合色88| 亚洲第一精品影视| 99视频有精品| 欧美日韩妖精视频| 亚洲一区二区三| 欧美在线电影| 红桃视频一区| 亚洲精品在线观看视频| 欧美精品99| 一区二区三区四区五区在线 | 欧美日韩一区在线观看| 99视频超级精品| 午夜精品福利视频| 国产在线精品二区| 亚洲精品在线三区| 国产精品xxxxx| 西瓜成人精品人成网站| 久久久久国产精品午夜一区| 在线成人h网| 在线中文字幕日韩| 国产精一区二区三区| 久久成人羞羞网站| 欧美刺激午夜性久久久久久久| 91久久嫩草影院一区二区| 亚洲一区二区三区乱码aⅴ| 国产乱码精品一区二区三区av | 亚洲福利视频一区二区| 欧美大片va欧美在线播放| 99riav国产精品| 久久国产福利| 欲色影视综合吧| 中文在线资源观看网站视频免费不卡 | 亚洲视屏一区| 久久久五月天| 亚洲精品免费观看| 欧美在线在线| 亚洲国产婷婷香蕉久久久久久| 亚洲一区二区在线看| 国产亚洲在线| 一本色道久久综合亚洲精品不| 国产精品嫩草久久久久| 亚洲国产岛国毛片在线| 欧美午夜精品理论片a级按摩| 欧美一区国产一区| 欧美日韩中文字幕精品| 久久精品人人做人人综合| 欧美三区美女| 亚洲国产精品一区二区尤物区| 欧美日韩在线播放三区| 欧美综合77777色婷婷| 欧美日韩日本视频| 亚洲国产高清一区| 国产精品久久久久久久久久久久| 久久精品国内一区二区三区| 欧美色图一区二区三区| 久久国产天堂福利天堂| 国产精品国产三级国产专播精品人| 欧美尤物巨大精品爽| 欧美日韩在线免费| 91久久精品日日躁夜夜躁国产| 国产精品视频一二| 日韩视频一区二区三区| 国产一区二区三区网站| 亚洲尤物视频在线| 亚洲欧洲在线视频| 久久婷婷av| 亚洲综合电影| 欧美日韩在线高清| 亚洲日本无吗高清不卡| 国产一区亚洲一区| 亚洲女人天堂成人av在线|