車載MP3的系統(tǒng)設(shè)計
3.2 端點配置階段程序設(shè)計
前面已經(jīng)提到固件的程序結(jié)構(gòu)框架可基于中斷或基于查詢方式,這里以查詢方式為例。對于一個USB Mass Storage設(shè)備而言,必須支持3個端點的數(shù)據(jù)處理。
(1)O號端點:控制端點用于控制傳輸,主機通過與端點O相對應(yīng)的管道來讀取設(shè)備描述符,完成對設(shè)備地址的設(shè)置,并完成配置。此端點為雙向數(shù)據(jù)傳輸端點。
(2)兩個非O端點:批量傳輸端點。這種端點為單向數(shù)據(jù)傳輸端點,分別為Bulk-In端點和Bull-Out端點。
3.3 設(shè)備配置階段程序設(shè)計
USB設(shè)備一旦插入到PC機的USB接口,USB檢測到設(shè)備插入以后,就會通過控制管道向默認(rèn)地址發(fā)送USB標(biāo)準(zhǔn)請求,進(jìn)入設(shè)備配置階段。
配置階段就是主機向設(shè)備索取各種描述符的過程。每當(dāng)設(shè)備收到主機發(fā)送的數(shù)據(jù)后,便會觸發(fā)端點中斷寄存器中端點O所代表的位。此時,應(yīng)該讀取端點O的數(shù)據(jù)緩沖區(qū),讀取指定長度(長度由UBYCTX寄存器表示)的數(shù)據(jù)。然后對照USB標(biāo)準(zhǔn)設(shè)備請求的數(shù)據(jù)格式,對請求類型進(jìn)行識別,然后轉(zhuǎn)向相應(yīng)的標(biāo)準(zhǔn)請求處理函數(shù)。
3.4 批量傳輸階段(BullOnly)程序設(shè)計
按照USB協(xié)議中的規(guī)定,控制管道是消息管道,控制管道中的信息具有固定的格式。而其他管道則是流管道,流管道中的數(shù)據(jù),USB協(xié)議中沒有規(guī)定其格式。
Mass Storage協(xié)議通過Bulk傳輸方式來傳送命令與數(shù)據(jù)。在這種傳輸方式下,有3種類型的數(shù)據(jù)(CBW,CSW和普通數(shù)據(jù))在USB和設(shè)備之間傳送。CBW和CSW數(shù)據(jù)都有一定的格式,普通數(shù)據(jù)根據(jù)其前面的命令塊來決定其歸屬和意義。因此,批量傳輸階段程設(shè)計的任務(wù)就是識別來自BulkOut端點的CBW數(shù)據(jù)進(jìn)行相應(yīng)的處理,然后通過BulkIn端點向主機回傳相應(yīng)的CSW或數(shù)據(jù)。
3.5 播放任務(wù)
USB播放模式下,按壓重復(fù)鍵打開重復(fù)播放功能,此時可連續(xù)重復(fù)播放當(dāng)前曲目,點按快退鍵或快進(jìn)鍵可選擇你希望重復(fù)播放的曲目,再次點按此鍵時取消重復(fù)播放功能。進(jìn)入該功能后,LCD上“RPT”字符將變亮。按壓瀏覽鍵打開瀏覽功能,可順序播放每個曲目的前幾秒,此時可點按快退鍵或快進(jìn)鍵向后或向前瀏覽曲目,當(dāng)聽到要選的曲目時,輕旋音量鈕可播放所選的曲目,同時取消該功能。進(jìn)入該功能后,LCD上“INT”字符將變亮。按壓隨機鍵打開隨機播放功能,此時本機將隨機播放曲目而非按正常的播放順序播放USB盤中的曲目,點按快退鍵或快進(jìn)鍵,可隨機播放其他的曲目,再次點按此鍵取消隨機播放功能。進(jìn)入該功能后,LCD上“RDM字符將變亮。按壓暫停/播放鍵,暫?;虿シ徘?。暫停播放時,LCD上顯示“STOP ON”字符。本文引用地址:http://butianyuan.cn/article/197698.htm
4 系統(tǒng)調(diào)試
單片機應(yīng)用系統(tǒng)的軟、硬件制作完成后,必須反復(fù)進(jìn)行調(diào)試、修改,直至完全正常工作為止。調(diào)試工作通常可分3個步驟進(jìn)行。
(1)硬件調(diào)試
首先,用邏輯筆、萬用表等工具對硬件電路作脫機檢查,看連線是否與邏輯圖一致,有無短路、虛焊等現(xiàn)象。器件的型號、規(guī)格、極性是否有誤,插接方向是否正確。檢查完畢,可用萬用電表測量一下電路板正負(fù)電源端之間的電阻,排除電源短路的可能性。
通電檢查時,可以模擬各種輸入信號分別送人電路的各有關(guān)部分,觀察I/O口的情況,查看電路板上是否有元件過熱情況,是否有冒煙、異味等現(xiàn)象發(fā)生。各相關(guān)設(shè)備的動作是否符合設(shè)計要求。
(2)軟件調(diào)試
軟件的調(diào)試必須在開發(fā)系統(tǒng)的支持下進(jìn)行。先分別調(diào)試通過各個模塊程序,然后調(diào)試中斷服務(wù)程序,最后調(diào)試主程序,將各部分連接進(jìn)行調(diào)試。調(diào)試的范圍可以由小到大、逐步增加,必要的中間信號可以先作設(shè)定。通常交叉使用單步運行、斷點運行、連續(xù)運行等多種方式,每次執(zhí)行完畢后,檢查CPU執(zhí)行現(xiàn)場、RAM的有關(guān)內(nèi)容、I/O口的狀態(tài)等。發(fā)現(xiàn)一個問題,解決一個問題,直至全部通過。
(3)軟硬件聯(lián)調(diào)
在軟硬件分別調(diào)試成功的基礎(chǔ)上,進(jìn)行軟硬件聯(lián)機仿真,當(dāng)仿真成功后,將固件程序?qū)懭雴纹瑱C中,即可脫機運行。
5 結(jié)論
經(jīng)過系統(tǒng)的軟硬件設(shè)計與調(diào)試,以及在系統(tǒng)集成調(diào)試成功的基礎(chǔ)上,完成了車載MP3的系統(tǒng)設(shè)計。車載MP3的系統(tǒng)設(shè)計具有USB盤立體聲播放及FM立體聲收音功能。摒棄了傳統(tǒng)音響系統(tǒng)中的CD和磁帶播放功能,具有電子抗震、抗干擾性強等優(yōu)點,可根據(jù)USB盤的存儲大小隨時下載最新的MP3歌曲,免去購買碟片的大量花費,并且本機具有掉電記憶功能和現(xiàn)場保護(hù)功能。
評論