MP3詳細設(shè)計文檔_第1頁
MP3詳細設(shè)計文檔_第2頁
MP3詳細設(shè)計文檔_第3頁
MP3詳細設(shè)計文檔_第4頁
MP3詳細設(shè)計文檔_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、詳細設(shè)計說明書目錄1引言.21.1 編寫目的.21.2 項目背景.21.3問題定義.21.4參考資料.32、功能概述.32.1 目標.32.2 完成功能.32.3系統(tǒng)技術(shù).33. 軟件結(jié)構(gòu)化計.33.1概要設(shè)計.33.2系統(tǒng)流程圖.43.3數(shù)據(jù)流說明.63.主要函數(shù)及實現(xiàn)功能.71、引言 MP3的全名是MPEG Audio Layer-3,是一種聲音文件的壓縮格式。世界第一臺MP3播放器誕生在韓國企業(yè)Saehan(世韓,1995年從三星分離出來),并在1998年推出第一臺MP3播放器MPman F10。MPMan取意于MP3與WALKMAN的結(jié)合。MPMan F10的體積為70×90

2、×16.5mm,約有四個1.44M軟盤堆疊起來這么大,體重為65g。由于MP3的小體積、便攜帶、低價格、高音質(zhì)等功能,MP3已經(jīng)成為了當今音樂播放領(lǐng)域的主流產(chǎn)品,并在市場中牢牢地占有一席之地。其中,最具特色的是以ATmega16單片機為核心的MP3播放器,它是能以單一的技術(shù)整合方案,更低廉的生產(chǎn)成品來實現(xiàn)一臺可用的MP3播放器。1.1 編寫目的 為明確MP3播放器設(shè)計實現(xiàn)的軟件需求,安排軟件規(guī)劃與進度,分配成員的任務(wù),完成軟件的開發(fā)與測試,撰寫本文檔,以供開發(fā)人員參考。1.2 項目背景基于ATmega16單片機為核心的MP3播放器開發(fā)以其較簡單的程序設(shè)計和便宜的開發(fā)板成為了電子專業(yè)學

3、生實訓的最先選擇。故學院給我們電科專業(yè)安排了這樣一個實訓,旨在提高我們的實踐能力,提高將知識學以致用的意識。1.3問題定義 MP3播放器總的實現(xiàn)目標是:實現(xiàn)播放歌曲、歌曲暫停、切換上下歌曲、顯示播放列表、調(diào)節(jié)音量等基本播放功能;實現(xiàn)按數(shù)字鍵換歌、顯示音量和歌曲數(shù)等擴展功能。1.4參考資料(1)育松電子QC12864B使用說明 (2)cn_mega16-16L (3)VS1003(1)2、功能概述2.1 目標設(shè)計出一款可以播放后綴為.MP3的歌曲文件,有基礎(chǔ)功能:播放、顯示播放列表、 調(diào)節(jié)音量 、歌曲切換。有拓展功能:暫停,按數(shù)字鍵換歌、音量顯示。2.2 完成功能1.能播放后綴為.MP3的歌曲文

4、件2.基礎(chǔ)功能:播放、顯示播放列表、 調(diào)節(jié)音量 、歌曲切換3.拓展功能:暫停,按數(shù)字鍵換歌、音量顯示2.3系統(tǒng)技術(shù) 本嵌入式開發(fā)主要是基于 AVR STUDIO 4 的平臺和MP3實訓工程開發(fā)板,采用C語言編程實現(xiàn),同時運用其他語言的思維邏輯。3.軟件結(jié)構(gòu)化設(shè)計3.1概要設(shè)計 MP3播放器主要由以下幾個模塊組成:串口、LCD、SPI+VS1033、SD+PFATFS、Infrared remode。 需要分別完成: (1)串口USART的通信(2)驅(qū)動LCD12864 (3)驅(qū)動VS1003 (4)SD卡驅(qū)動 (5)移植Fatfs文件系統(tǒng) (6)紅外的接口實現(xiàn)與中斷函數(shù) (7)主程序邏輯實現(xiàn)3

5、.2系統(tǒng)流程圖 1屏幕點亮,數(shù)據(jù)初始化(包括LCD初始化,VS1003初始化) 2.判斷是否切歌,如果是,切換到所要聽的歌。如果否,Mp3 開始順序播放。同時屏幕上顯示音量,歌曲名,當前歌曲排序 以及總共歌曲數(shù)。 3. 判斷是否調(diào)音,如果調(diào)高聲音,則屏幕上顯示聲音值增加,如 果調(diào)低聲音,則顯示聲音值降低。 4. 判斷是否暫停,如果是,則屏幕上內(nèi)容靜止不動,如果否,不 動作。 5.判斷是否不動作超過30秒,如果是,則屏幕停止顯示背光,否 則,一直顯示背光。 6.判斷是否播放到最后一首歌,如果是,則開始切換到第一首歌, 否則不動作。 開始 數(shù)據(jù)初始化 顯示播放列表是 切歌 切換到所要聽的歌否 順序

6、播放是 調(diào)音 調(diào)高聲音,則屏幕上顯示聲音值增加是否 調(diào)低聲音,則屏幕上顯示聲音值降低 暫停 屏幕上內(nèi)容靜止不動否 不動作是 否 超過30秒 屏幕停止顯示背光 一直顯示背光是 播放LAST 開始切換到第一首歌否 繼續(xù)播放歌曲3.3數(shù)據(jù)流說明 1. LCD和VS1003的初始化接上USB插口,PC4給高電平,致使LCD點亮。同時,數(shù)據(jù)開始初始化,包括LCD的初始化和VS1003的初始化。具體步驟如下:LCD: 初始化之后,主芯片即ATmega發(fā)送寫命令,將當前歌曲名等信息寫到LCD屏幕上。VS1003:初始化之后,主芯片要轉(zhuǎn)變聲音信號的電信號信息寫到VS1003芯片上,經(jīng)過VS1003解碼,讀到主

7、芯片上,再經(jīng)過耳機轉(zhuǎn)變成聲音信號。2. SD卡驅(qū)動 SD卡驅(qū)動流程:(1) 掛載一個SD卡 程序代碼:pf_mount (2) 打開一個目錄 程序代碼:pf_opendir(3) 讀取目錄中的一個條目 程序代碼:pf_readdir(4) 打開一個文件程序代碼:pf_open(5) 讀取文件中的具體內(nèi)容 程序代碼:pf_read (6)通過指針去訪問不同的文件 程序代碼:pf_lseek 3. 中斷處理3.4主要函數(shù)及實現(xiàn)功能 1.文件名:led.c 功能:點亮芯片上的D3發(fā)光二極管 描述:led頭文件,用于點燈調(diào)用通過給TMS(PC3)引腳一個高 電 平,使其相連的二極管發(fā)光。 2.文件名:

8、usart.c 功能:串口通信模塊描述:實現(xiàn)串口的字符、字符串的接收與發(fā)送 (1)函數(shù)名稱:void Usart_Init(void) 描述:串口的初始化 注釋:PD0、1 (2)函數(shù)名稱:void Put_Char(unsigned char c) 描述:通過串口發(fā)送一字節(jié) 輸入格式:unsigned char c:0255 (3)函數(shù)名稱:unsigned char Get_Char(void) 描述:通過串口接收一字節(jié) 返回值格式:unsigned char c:0255 (4)函數(shù)名稱:void Put_String(char *str) 描述:打印一個字符串輸出到串口 輸入格式:ch

9、ar *str (5) 函數(shù)名稱:usart.h 描述:usart.h 頭文件3.文件名:vs1003.c (1)函數(shù)名稱:vs1003.c 描述: vs1003.c源文件 (2)函數(shù)名稱:SPI_Init 描述: SPI初始化 (3)函數(shù)名稱:SPI_SetSpeed 描述: 設(shè)置SPI速率 輸入格式:unsigned char x: 0:全速 1:64分頻 (4)函數(shù)名稱:SPI_RW 描述: SPI總線讀取數(shù)據(jù) 輸入格式:unsigned char data 返回格式: unsigned char (5)函數(shù)名稱:VS1003_Write 描述: VS1003在對應(yīng)的地址寫數(shù)據(jù) 輸入格式

10、: unsigned char arr: unsigned short data: (6)函數(shù)名稱:VS1003_Read 描述: 從VS1003對應(yīng)的地址讀取2字節(jié)數(shù)據(jù) 輸入格式:unsigned char arr: 輸出格式:unsigned short: (7)函數(shù)名稱:VS1003_Init 描述: vs1003初始化 (8)函數(shù)名稱:VS1003_SineTest 描述: vs1003正弦測試 輸入格式:unsigned char x3. 文件名:lcd12864.c (1)函數(shù)名稱:lcd12864.h 描述: lcd12864.h 頭文件 (2)函數(shù)名稱:static void

11、LCD_Busy(void);描述:判斷LCD12864當前是否忙 (3)函數(shù)名稱:static void Write_Command(unsigned char cmd)描述:向LCD12864發(fā)出對應(yīng)的cmd輸入格式:unsigned char : cmd 根據(jù)LCD12864手冊填寫 (4)函數(shù)名稱:static void Write_Command(unsigned char data)描述:向LCD12864發(fā)出對應(yīng)的data輸入格式:unsigned char : data 根據(jù)LCD12864手冊填寫 (5)函數(shù)名稱:void LCD12864_Init(void)函數(shù)描述:LC

12、D12864 的初始化 (6)函數(shù)名稱:LCD12864_Putchar描述: 在具體帶的坐標處輸出對應(yīng)的字符輸入格式: unsigned char x: 行03 unsigned char y: 列07 unsigned char c: 輸入的ASCII表 (7)函數(shù)名稱::LCD12864_Putstring描述: 在具體帶的坐標處輸出對應(yīng)的字符串輸入格式:unsigned char x: 行03 unsigned char y: 列07 char *string: 字符串 (8)函數(shù)名稱::LCD12864_Clear描述: 清屏函數(shù) 輸入格式: unsigned char x: 03:清楚對應(yīng)的行 4:清楚所有行

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論