freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計(jì)-基于單片機(jī)的mp3播放器設(shè)計(jì)(參考版)

2024-12-07 19:08本頁(yè)面
  

【正文】 } while(P35 == 0)。 if(Mp3_Stop == 0) { Mp3_Stop = 1。 if(P35 == 0 ) { while(P46 == 0)。//音量設(shè)置,左右聲道均最大音量 if(Mp3_Stop == 1) ndelay( 5 )。 VS_Write_Reg(0x0b,vol,vol)。 vol+=0x01。//去抖 if(P44 == 0 ) { while (P45 == 0)。//音量設(shè)置,左右聲道均最大音量 if(Mp3_Stop == 1) ndelay( 5 )。 //減 3,每步減 3DB if(vol0x10) vol=0x10。 //等待按鍵釋放 wifi_set = 0。 5 設(shè)置成輸入方式 } void volumecontrol(void) //音量處理 { if(P45 == 0 )//音量大 { delay (15)。//設(shè)置成普通 IO 口 P4=0x70。i)。 while(a) for(i=30000。 xdata unsigned char wifi_set=0。 //fatfs 結(jié)構(gòu)體 FATFS fs。 //換歌標(biāo)志 unsigned char Mp3_Stop = 0。 沈陽(yáng)理工大學(xué)學(xué)士學(xué)位論文 29 附錄 C 源程序 include //加載 stc12 系列頭文件,由下載器自帶的產(chǎn)生,由于將頭文件添加到了編譯器默認(rèn)路徑,在文件群中,不存在 include include //加載 MP3 音頻解碼芯片,與 SD 芯片的頭文件,還有 fatfs 文件系統(tǒng)文件 include include include include include include //加載字符串處理頭文件 define Debug 0 //調(diào)試信息開關(guān), 1:打開, 0:關(guān)閉 static unsigned char vol=0x20。空閑模式停止 CPU 同時(shí)允許 RAM、定時(shí)器 /計(jì)數(shù)器、串口和中斷 sys tem 繼續(xù)運(yùn)作。 AT89C51 標(biāo)準(zhǔn)提供了以下特點(diǎn) :4 k 字節(jié)的 Flash,128 字節(jié)的內(nèi)存 ,32 個(gè) I / O 線 ,兩個(gè)16bittimer /計(jì)數(shù)器、五個(gè)向量?jī)杉?jí)中斷架 構(gòu)中 ,一個(gè)完整的二倍的串口 ,芯片上的振蕩器和時(shí)鐘電路。系統(tǒng)驗(yàn)證過程可以分為三個(gè)主要部分。這不僅全面、徹底的驗(yàn)證需要一個(gè)定義良好的過程也是一個(gè)合適的環(huán)境和工具來促進(jìn)和執(zhí)行任務(wù)的成功。此外 ,現(xiàn)場(chǎng)更換組件是非常昂貴的 ,因?yàn)樵O(shè)備通常是密封在模塊組件的總價(jià) 值幾次。一旦在市場(chǎng)上 ,特別是在關(guān)鍵任務(wù)應(yīng)用程序 (如一個(gè)自動(dòng)駕駛儀或防抱死制動(dòng)系統(tǒng) ,錯(cuò)誤是經(jīng)濟(jì)上的。由于這些關(guān)鍵應(yīng)用 ,市場(chǎng)需要一種可靠有效的控制器具有較低的中斷延遲響應(yīng) ,服務(wù)能力的大量時(shí)間和事件驅(qū)動(dòng)整合周邊需要實(shí)時(shí)應(yīng)用程序 ,和一個(gè) CPU 處理能力高于平均水平在一個(gè)包中。汽車行業(yè) 也 在研發(fā)使用MCS 51 微控制器系統(tǒng) ,安全氣囊、懸架系統(tǒng)、防抱死制動(dòng)系統(tǒng) (ABS)。 MCS 51 微控制器控制系統(tǒng)通常用于高速事件。同時(shí)使我對(duì)計(jì)算機(jī)自動(dòng)控制系統(tǒng)有了更深刻的認(rèn)識(shí),這對(duì)以后的工作生活提供了重要的幫助。 畢業(yè)設(shè)計(jì) 中遇到過問題,出現(xiàn)過懈怠情緒, 余 老師一直耐心指導(dǎo), 老 師淵博的學(xué)識(shí)、執(zhí)著的敬業(yè)精神以及嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度 ,使我受益匪淺 。 因?yàn)?得到了指導(dǎo)老師和同學(xué)們的幫助 , 本次設(shè)計(jì) 才得以 圓滿完成 。 在過去的幾個(gè)月中,我從一開始的查找資料、閱讀文獻(xiàn)、理解文章到最后構(gòu)建整篇論文的框架,然后再根據(jù)框架中所需要的內(nèi)容逐個(gè)突破和解決 ,最終完成了對(duì) MP3 的設(shè)計(jì) 。 ( 4)分析了系統(tǒng)的 軟硬 件設(shè)計(jì),在這些設(shè)計(jì)的基礎(chǔ)上 完成了 對(duì) MP3 播放器設(shè)計(jì)。 ( 2) 學(xué)習(xí)了 MP3文件播放和 SD卡數(shù)據(jù)的讀寫原理,對(duì) 系統(tǒng) 總體方案進(jìn)行了確定。 沈陽(yáng)理工大學(xué)學(xué)士學(xué)位論文 23 結(jié)論 本次設(shè)計(jì)主要是研究了基于單片機(jī)的 MP3 播放器設(shè)計(jì)。 當(dāng)目標(biāo)代碼發(fā)生變化后自動(dòng)調(diào)入文件,并立刻發(fā)送下載命令。 每次下載前重新調(diào)入已打開在緩沖區(qū)的文件,方便調(diào)試使用。 圖 驅(qū)動(dòng)安裝調(diào)試 ( 2)程序下載調(diào)試 按照 PL2303 驅(qū)動(dòng)手冊(cè)下載程序不能成功,認(rèn)為是最小系統(tǒng)模塊燒了,進(jìn)入串口數(shù)據(jù)測(cè)試沒有發(fā)現(xiàn)問題,重 新連線搭建系統(tǒng),將 STCISP 單片機(jī)下載編程燒錄軟件下載按鈕下面的兩個(gè)方框打上對(duì)號(hào),終于把程序下載進(jìn)了單片機(jī)。解決方法是要考慮兼容性問題,下載的驅(qū)動(dòng)應(yīng)當(dāng)手動(dòng)安裝,使用系統(tǒng)自動(dòng)配置會(huì)出現(xiàn)黃色嘆號(hào)。 沈陽(yáng)理工大學(xué)學(xué)士學(xué)位論文 22 5 硬件測(cè)試 ( 1)驅(qū)動(dòng)安裝調(diào)試 因?yàn)?Windows 7 系統(tǒng)出現(xiàn)系統(tǒng)不兼容軟件,本設(shè)計(jì)調(diào)試的系統(tǒng)是 64 位,所以驅(qū)動(dòng)很難找到,大部分驅(qū)動(dòng)支持 Windows XP 系統(tǒng),所以出現(xiàn)驅(qū)動(dòng)安裝不成功或者安裝出現(xiàn)錯(cuò)誤的提示或者在設(shè)備管理器出現(xiàn)黃色的嘆號(hào),都表明驅(qū)動(dòng)沒安裝成功。本設(shè)計(jì)只實(shí)現(xiàn)了一首樂曲的播放 , 為了接近日常使用的 MP3 播放器 , 可以適當(dāng)設(shè)計(jì)一些按鍵,實(shí)現(xiàn)前進(jìn) /后退、快進(jìn) /快退、播放幾首歌之間跳變等功能。如果不考慮 DREQ的狀態(tài), 不斷地向 VS1003發(fā) 送文件 數(shù)據(jù)的話 ,播放音樂的時(shí)候歌曲就會(huì)不連貫。數(shù)據(jù)的寫入方法主要是看 DREQ信號(hào),在 VS1003的 FIFO可以 接 收 數(shù)據(jù) 時(shí) 輸出高電平 , 每次 對(duì)其 寫入 32個(gè)字節(jié)的數(shù)據(jù),而 當(dāng) DREQ降低 時(shí), MCU就要停止 發(fā)送數(shù)據(jù) 。 為了 控制 VS1003,第一步需要做 的就是 為其 寫命令 。 系統(tǒng)流程圖 如圖 是 否 圖 系統(tǒng)流程圖 初始化 VS1003 初始化文件系統(tǒng) 執(zhí)行相應(yīng)功能 查找音樂文件 初始化 SD 卡 數(shù)據(jù)送至 VS1003按目錄循環(huán)播放音樂 是否有鍵按下 開始 結(jié)束 沈陽(yáng)理工大學(xué)學(xué)士學(xué)位論文 20 VS1003 模塊的 MP3 文件 播放 程序設(shè)計(jì) MP3播放器通電之后 , VS1003解碼器解碼單片機(jī)從 SD卡中讀取的數(shù)據(jù)流信息, 通過解碼 芯片 及 其 包含的 高質(zhì)量立體聲 DAC和耳機(jī)驅(qū)動(dòng)電路, 對(duì)歌曲文件進(jìn)行播放 , 同時(shí)也可以通過按鍵進(jìn)行歌曲切換和音量加減 。所有的測(cè)試都有一個(gè)相似的啟動(dòng)途徑 : VS1003被硬件:復(fù)位, SM_TEST置位,然后發(fā)送一個(gè)測(cè)試命令到 SDI總線。 同時(shí)也 支持單聲道或立體聲 8位和 16位的線性音頻。如果找不到能被解碼的數(shù)據(jù), SCI_HDAT0和 SCI_HDAT1被設(shè)沈陽(yáng)理工大學(xué)學(xué)士學(xué)位論文 19 置為 0并且模擬輸出靜音。 (5)播放 /解碼 這是 VS1003的一個(gè)常規(guī)操作模式。 表 SPI引導(dǎo)重定義引腳 正常模式 SPI引導(dǎo)模式 GPIO0 XCS GPIO0 CLK DREQ MOSI GPIO0 MOSO SPI時(shí)鐘速度在 VS1003工作時(shí)為 245 kHz。 MP3通常不允許 SM_0UTOFWAV,因?yàn)樗且环N流格式,所以需要超時(shí)處理。建議在文件之后復(fù)位之前遵照 DREQ的協(xié)定,向 SDI送入 2048個(gè) 0。在 DREQ變?yōu)楦唠娖街?,可以進(jìn)行回放。然后等待至少 2181。等待 DREQ變?yōu)楦唠娖胶?,?0x9800寫入 SCl_CLOCKF(寄存器 3)。復(fù)位值為 倍頻。在此之后解碼之前,用戶可以設(shè)置基本的使件寄存器。 (2)硬件復(fù)位 復(fù)位模式 是一種全掉電模式,解碼器 VS1003的數(shù)字和模擬部分僅消耗很小的功率 ,沈陽(yáng)理工大學(xué)學(xué)士學(xué)位論文 18 當(dāng)時(shí)鐘停止, XTAL0接地。 (1)時(shí)鐘 VS1003操作時(shí)鐘 , 。 SPI接口可以讓 VS1003上 的所有控制命令 與 數(shù)據(jù) 實(shí)現(xiàn),所以 與 STC12C5A60S2單片機(jī)接口實(shí)現(xiàn)起來比較簡(jiǎn)單。設(shè)置寄存器 SMSDINEW為 1,使 VS1003處于新模式,此時(shí)設(shè)置 SMSDISHARED為 0, XCS作為 控制信號(hào) 的同步信號(hào), 而 XDCS則 作為 數(shù)據(jù)信號(hào) 的 同步信號(hào)。兩條 SCI 指令之間要通過DREQ 引腳信號(hào)判斷上一次處理是否完成。 VS1003 通過串行命令接口 (SCI)和串行數(shù)據(jù)接口 (SDI)來接收單片機(jī)的控制命令和 MP3 的數(shù)據(jù);通過 xCS、 xDCS 引腳的置高/低來確認(rèn)是哪一個(gè)接口處于傳送狀態(tài)。 采用 VS1003 音頻解碼芯片來實(shí)現(xiàn)音樂數(shù)據(jù)流的解析。若有,單片機(jī)通過 SPI 總線方式讀出音頻信息,并將歌曲的碼流信息送入到 VS1003 芯片中,通過 VS1003 解碼芯片及其內(nèi)含的高質(zhì)量立體聲 DAC 和耳機(jī)驅(qū)動(dòng)電路,實(shí)現(xiàn) MP3 歌曲的播放功能。由單片機(jī)通過 FAT32 文件系統(tǒng)接口讀取 SD 卡的一些基本信息,如容量、扇區(qū)大小、 FAT 表以及根目錄所在的起始扇區(qū)等。 系統(tǒng)軟件設(shè)計(jì)綜述 本單片機(jī)系統(tǒng)使用了模塊化的編程 思路 ,把整個(gè)軟件系統(tǒng)化為多個(gè) 部分 , 系統(tǒng) 主程序通過調(diào)用各個(gè)子程序來完成各 自 功能的實(shí)現(xiàn)。 程序具有模塊化,且具有豐富的庫(kù)函數(shù)可以使用。 程序員不需要掌握單片機(jī)復(fù)雜的指令集,只需要掌握單片機(jī)內(nèi)部特殊功能寄存器的用途。 模塊化編程思想,程序員可以直接調(diào)用,節(jié)省開發(fā)時(shí)間。 C 語(yǔ)言 與匯 編語(yǔ)言對(duì)比 在單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)中,過去主要采用匯編語(yǔ)言開發(fā)程序。從應(yīng)用的角度, C 語(yǔ)言比其他高級(jí)語(yǔ)言較難掌握。 缺點(diǎn): C 語(yǔ)言的缺點(diǎn)主要表現(xiàn)在數(shù)據(jù)的 封裝 性上,這一點(diǎn)使得 C 在數(shù)據(jù)的安全性上有很大缺陷 ,這也是 C 和 C++的一大 區(qū)別 。 普遍來說 ,C, C++, java 被視為同一系的語(yǔ)言,它們長(zhǎng)期占據(jù)著程序使用榜的前三名 。 C++在這方面做了改進(jìn),在保留了指針操作的同時(shí)又增強(qiáng)了安全性,受到了 普通 用戶的支持,但是,這些改進(jìn) 卻 增加 了 語(yǔ)言的復(fù)雜度 。 C 語(yǔ)言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種 循環(huán) 、條件語(yǔ)句控制程序流向,從而使程序完全結(jié)構(gòu)化。 語(yǔ)言特點(diǎn) 高級(jí)語(yǔ)言: 它 是結(jié)合 了 高級(jí)語(yǔ)言 基本結(jié)構(gòu) 語(yǔ)句 與低級(jí)語(yǔ)言的實(shí)用性的工作單元。 盡管 C 語(yǔ)言提供了許多低級(jí)處理的功能,但仍然保持著良好跨平臺(tái)的特性,以一個(gè)標(biāo)準(zhǔn)規(guī)格寫出的 C 語(yǔ)言程序可在許多電腦平臺(tái)上進(jìn)行編譯,甚至包含一些嵌入式處理器(單片機(jī)或稱 MCU)以及超級(jí)電腦等作業(yè)平臺(tái)。 圖 輸入代碼頁(yè)面 沈陽(yáng)理工大學(xué)學(xué)士學(xué)位論文 15 圖 生成 .HEX 文件 程序語(yǔ)言介紹 C 語(yǔ)言 C 語(yǔ)言是一門通用計(jì)算機(jī)編程語(yǔ)言,應(yīng)用廣泛。 點(diǎn)一下 Source Group1 前面的加號(hào),出現(xiàn) ,雙擊,就可以在右側(cè)頁(yè)面輸入代碼了。 沈陽(yáng)理工大學(xué)學(xué)士學(xué)位論文 14 圖 選擇單片機(jī)型號(hào) 接下來要建立一個(gè)文檔,在該文檔下寫代碼。對(duì)話框右邊是對(duì)此型號(hào)單片機(jī)的說明。我們用的單片機(jī)是STC89C52RC,里面找不到單片機(jī)型號(hào)。 圖 保存工程 選擇單片機(jī)型號(hào)。單擊〖 Project〗菜單選項(xiàng)中 New Project,選擇建工程文件的路徑,輸入功能的名字(最好一個(gè)功能單獨(dú)建立一個(gè)文件夾)。打開 keil4 軟件,將出現(xiàn)如下界面 。 Keil 提供了包括 C 編譯器、宏匯編、鏈接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境( μVision)將這些部分組合在一起。 Keil C51 標(biāo)準(zhǔn) C編譯器為 8051 微控制器的軟件開發(fā)提供了 C 語(yǔ)言環(huán)境,同時(shí) 也 保留了匯編語(yǔ)言代碼快速高效的特點(diǎn)。這種人和計(jì)算機(jī)之間交流的過程就是編程。 沈陽(yáng)理工大學(xué)學(xué)士學(xué)位論文 12 4 系統(tǒng) 軟件 設(shè)計(jì) 編程軟件介紹 編程是編寫程序的中文簡(jiǎn)稱,就是讓計(jì)算機(jī)為解決某個(gè)問題而使用某種編寫程序代碼,并最終得到相應(yīng)結(jié)果的過程。模擬濾波器 再對(duì)通過了采樣的信號(hào) 完成 低通濾波。 不一樣的 采樣率 會(huì)被采樣率變頻器 變 換 為最高 的 可用采樣率 , 經(jīng)過復(fù)雜的 PLL 時(shí)鐘配置 之 后, 變換就能夠 允許 接近無限 采樣率 的 精度。 數(shù)據(jù)被送到 D/A 轉(zhuǎn)換器和采樣率變換器之前, FIFO 會(huì)鎖住數(shù)據(jù),然后用音頻中斷進(jìn)行傳送。 當(dāng) 解碼完成以 后,應(yīng)用代碼 便以 寄存器指向的地址開始執(zhí)行。 SD 卡有兩種模式來傳輸數(shù)據(jù),本
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1