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

正文內(nèi)容

基于51單片機(jī)的音樂播放器的軟硬件設(shè)計(jì)畢業(yè)論文(更新版)

2025-07-28 13:13上一頁面

下一頁面
  

【正文】 P12 (聲音放大) Key4P13 (聲音減小) 5)C語言程序如下: :define CH375HF_NO_CODE 1include include include include 主函數(shù):void main(void) { Uart_Init()。(4)在調(diào)試過程中發(fā)現(xiàn)設(shè)計(jì)的缺陷,逐步優(yōu)化軟件設(shè)計(jì),合理完成軟件的編寫。屏幕顯示調(diào)試如圖14和圖15所示。且安裝完畢,一定要重啟才能生效。然后子程序?qū)σ魳凡シ盼募M(jìn)行循環(huán)判斷,得到按鍵的命令后再進(jìn)行按鍵播放。寫命令的過程如下:(1)等待DREQ為高(當(dāng)DREQ為低時(shí),說明VS1003芯片還沒有就緒)(2)將XCS(命令片選)拉低(3)寫入0x02(寫操作命令)(4)寫入寄存器地址(5)分別寫入數(shù)據(jù)的高字節(jié)與低字節(jié)(6)將XCS置高初始化的過程如下:(1)硬件復(fù)位:接XRESET拉低(2)延時(shí),將XDCS、XCS、XRESET置高(3)向MODE中寫入0X0804(軟件復(fù)位)(4)等待DREQ為高(5)設(shè)置VS1003的時(shí)鐘:SCI_CLOCKF=0x9800,3倍頻(SC_MULT為4 ,SC_ADD為3,SC_FREQ為0)(6)設(shè)置VS1003的采樣率:SPI_AUDATA=0xBB81,采樣率48k,立體聲(7)設(shè)置重音:SPI_BASS=0x0055(SB_AMPLITUDE=5,SB_FREQLIMIT=5,低于50Hz時(shí)進(jìn)行5dB的增強(qiáng))(8)設(shè)置音量:SCI_VOL=0x2020(左右聲道相同)(9)這一步容易忽視,向VS1003發(fā)送4個(gè)字節(jié)的無效數(shù)據(jù),用以啟動(dòng)SPI發(fā)送對(duì)VS1003的初始化與測(cè)試都通過后,就可以給它發(fā)送MP3文件了。當(dāng)執(zhí)行一次以字節(jié)為單位的操作命令后將自動(dòng)進(jìn)入字節(jié)模式(只有關(guān)閉文件后再重新打開才能恢復(fù)扇區(qū)模式),支持以字節(jié)為單位的操作子程序CH375ByteRead 和CH375ByteWrite 及CH375ByteLocate[6]。單片機(jī)通過RD,WR,片選CS、中斷INT和地址線AO的綜合控制,完成與CH375的通訊,通過USB接口實(shí)現(xiàn)從U盤讀寫數(shù)據(jù)的功能。還包括設(shè)備驅(qū)動(dòng)的描述,該固件庫可以使得用戶在沒有深入學(xué)習(xí)外圍模塊規(guī)格手冊(cè)的情況下,也能夠在用戶應(yīng)用程序中涉及到的任何設(shè)備中直接使用。由于早期的單片機(jī)硬件資源少RAM資源有限,所以工程師在編程的時(shí)候?qū)AM的應(yīng)用要十分小心,因此造成這類的設(shè)計(jì)開發(fā)工程師更加偏向于直接用匯編語言來控制硬件的工作。C固定為0 第二字節(jié)(并行)8位數(shù)據(jù)的高4位——格式DDDD0000 第三字節(jié)(并行)8位數(shù)據(jù)的低4位——格式0000DDDD串口模式下只用兩根線(E和SCLK)來完成數(shù)據(jù)傳輸。將它視為一個(gè)開關(guān),當(dāng)進(jìn)行數(shù)據(jù)寫入時(shí)先調(diào)節(jié)RS選擇信號(hào)種類,然后將R/W拉低設(shè)為寫狀態(tài),把數(shù)據(jù)傳到管腳后將E由L→H→L把數(shù)據(jù)讀入寄存器。CH375芯片掛接到MCU系統(tǒng)總線上,MCU通過CH375按照相應(yīng)的USB協(xié)議與其它USB設(shè)備進(jìn)行通信。利用模塊化編程思想分別來實(shí)現(xiàn)各個(gè)模塊的功能,減少程序之間的耦合性,提高程序之間的內(nèi)聚性。uVision2是一款集編輯、編譯和項(xiàng)目管理于一身的基于窗口的軟件開發(fā)環(huán)境。VS1003通過一個(gè)串行接口來接收輸入的比特流,它可以作為一個(gè)系統(tǒng)的從機(jī)。12864顯示屏是點(diǎn)陣型,可根據(jù)需求任意顯示字符、數(shù)字、漢字、圖形。接線圖如圖3所示。圖1 STC12C5A60S2引腳序列 系統(tǒng)硬件電路綜述 硬件系統(tǒng)總體設(shè)計(jì)方案本設(shè)計(jì)的音樂播放器,有四個(gè)按鍵控制按鈕:下一曲,上一曲,音量加,音量減。而U盤和SD卡都是不錯(cuò)的選擇,并且U盤和SD卡均容易購買到,并且價(jià)格較為低廉,所以,存儲(chǔ)部分選用U盤讀取來實(shí)現(xiàn)。(2)USB設(shè)備接口芯片選用南京沁恒公司的CH375,CH375是一個(gè)USB總線的通用接口芯片,支持HOST主機(jī)方式和SLAVE設(shè)備方式。為了體現(xiàn)音樂播放過程中的效果,增加了LCD屏,可以實(shí)現(xiàn)歌曲名的顯示。于是將存儲(chǔ)器與播放器分離成為MP3的另一發(fā)展方向。聲音的播放可以通過揚(yáng)聲器或耳機(jī)進(jìn)行,基本實(shí)現(xiàn)了音樂播放器的功能。 u disk file reading。通過自定義鍵盤設(shè)定,當(dāng)有鍵按下時(shí),能控制歌曲的播放或音量,并通過LCD來顯示播放音樂的歌曲名,同時(shí)USBHOST的開發(fā)也為實(shí)時(shí)數(shù)據(jù)采集的移動(dòng)存儲(chǔ)提供了價(jià)格低廉的解決方案。 理論分析與方案論證 理論分析針對(duì)本MP3音樂播放系統(tǒng),要選擇合適的控制芯片及外部芯片來實(shí)現(xiàn),下面介紹一下芯片的選用。CH375的USB主機(jī)方式支持各種常用的USB全速設(shè)備,外部單片機(jī)/DSP/MCU可以通過CH375按照相應(yīng)的USB協(xié)議與USB設(shè)備通信。存儲(chǔ)器里的媒體文件首先被讀取到MCU的RAM中,然后又被送到解碼芯片中,解碼后的音頻數(shù)據(jù)被還原成模擬音頻,再由揚(yáng)聲器傳出。必要時(shí)可調(diào)節(jié)音量的大小。主機(jī)端點(diǎn)輸入和輸出緩沖區(qū)各64字節(jié)。當(dāng)按鍵按下時(shí)接口接低電平,從而實(shí)現(xiàn)對(duì)音樂曲目的選擇控制。VS1003電路接線如圖6所示。圖7 Keil uVision2開發(fā)環(huán)境 系統(tǒng)的軟件設(shè)計(jì)本系統(tǒng)采用模塊化的編程思想,把整個(gè)軟件系統(tǒng)化為多個(gè)功能模塊,主程序通過調(diào)用各個(gè)子程序來完成各個(gè)功能的實(shí)現(xiàn)。只要正確寫SPI相關(guān)寄存器就能輕松實(shí)現(xiàn)控制。(3)LCD12864液晶顯示a)LCD12864引腳功能說明如表1所示。(4)LCD12864串行連接數(shù)據(jù)傳輸串口模式工作過程:a)串行數(shù)據(jù)傳送共分三個(gè)字節(jié)完成。b)一個(gè)完整的串行傳輸周期有以下部分組成。但是這些問題可以通過移植操作系統(tǒng)來解決,操作系統(tǒng)的優(yōu)勢(shì)就是屏蔽了具體的硬件細(xì)節(jié),可以讓開發(fā)人員把更多的精力放在應(yīng)用程序上。 CH375模塊的U盤數(shù)據(jù)讀取程序設(shè)計(jì)U盤數(shù)據(jù)的讀取是MP3播放的重要環(huán)節(jié),對(duì)后面的MP3解碼進(jìn)一步處理至關(guān)重要。本設(shè)計(jì)采用的是字節(jié)模式。在流程中涉及到的參數(shù)如下:,包括完整的路徑名;;[6,7];。具體的寫數(shù)據(jù)的方法如下:(1)將XDCS拉低(2)等待DREQ為高(3)通過SPI寫入數(shù)據(jù)(4)在文件沒有結(jié)束前不斷重復(fù)2與3操作(5)在所有的數(shù)據(jù)都發(fā)送完畢后,最后發(fā)送2048個(gè)無效字節(jié),用以清除VS1003的數(shù)據(jù)緩沖區(qū) (6)將XDCS置高M(jìn)P3文件播放流程圖如圖11所示。當(dāng)音樂文件播放結(jié)束時(shí),判斷是否有按鍵按下,并執(zhí)行相應(yīng)的命令。l 每次下載前重新調(diào)入已打開在緩沖區(qū)的文件,方便調(diào)試使用。結(jié)束語歷時(shí)十二周的畢業(yè)設(shè)計(jì)終于結(jié)束了,我收獲了很多在課堂上無法學(xué)到的知識(shí),不僅培養(yǎng)了我親身實(shí)踐動(dòng)手的能力,軟件的編程能力也得到了大幅度的提高,受益匪淺。參考文獻(xiàn)[1] 范海紹,李方園. 零起點(diǎn)學(xué)Proteus單片機(jī)仿真技術(shù)[M]. 北京: 機(jī)械工業(yè)出版社,[2] 智兆華,張鵬. USB接口芯片CH375的原理及應(yīng)用[J]. 今日電子,:7475[3] 董楊生. USB主機(jī)在嵌入式系統(tǒng)中的應(yīng)用[J]. 嵌入式系統(tǒng),:2225[4] 張華宇. AVR單片機(jī)開發(fā)入門與典型實(shí)例[M]. 北京市: 機(jī)械工業(yè)出版社, :151156[5] 袁衛(wèi),黨紀(jì)源. 基于單片機(jī)的MP3播放器設(shè)計(jì)[J]. 現(xiàn)代電子技術(shù),2011, 34(4): 123125[6] 黃平平,吉榮廷,沈大鵬. 基于CH375實(shí)現(xiàn)單片機(jī)讀寫U盤[J]. 現(xiàn)代電子技術(shù),2006,29(18)[7] 王瀾錦. 基于CH375U盤MP3播放器設(shè)計(jì)[J]. 嵌入式技術(shù),: 5860[8] 江志紅. AVR單片機(jī)系統(tǒng)開發(fā)實(shí)用案例精選[M]. 北京市: 北京航空航天大學(xué)出版社,:342345[9] 趙建領(lǐng). 51系列單片機(jī)開發(fā)寶典[M]. 北京: 電子工業(yè)出版社,[10]周國運(yùn). 單片機(jī)原理及應(yīng)用(C語言版)[M]. 北京: 北京水利水電出版社,[11]姜雪蓮,司徒忠. 基于單片機(jī)的嵌入式U盤控制器的設(shè)計(jì)與實(shí)現(xiàn)[J]. 機(jī)電工程技術(shù),2005 , 34(4):7981[12]李朝清. 單片機(jī)原理及接口技術(shù)[M]. 北京: 北京航空航天大學(xué)出版社,[13]宋紅星,郭興旺. 以優(yōu)盤為存儲(chǔ)介質(zhì)的MP3播放器設(shè)計(jì)[J]. 單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2006:5860[14] Xiao Technology and Application[M].Beijing:Tsinghua University Press,2003[15] Top sun. Drive Your MP3 VS1003[EB/OL]. 2006. 附錄(1)系統(tǒng)整體接線圖(2) 整體實(shí)物圖(3) 程序設(shè)計(jì)1)MP3解碼模塊:VS1003XDCS(13)P22 (數(shù)據(jù)片選端)XCS(23)P23 (片選輸入,低電平有效)XRESET(3) P24 (低電平有效,異步復(fù)位端)DREQ(8) P25 (數(shù)據(jù)請(qǐng)求,輸入總線)SCLK(28)P27 (串行總線的時(shí)鐘)SI(29)P26 (串行輸入) 2)USB讀寫模塊:CH375D0D7(1522)P00P07 (8 位雙向數(shù)據(jù)總線,內(nèi)置弱上拉電阻)A0(8)P20 (地址線輸入,區(qū)分命令口與數(shù)據(jù)口,內(nèi)置弱上拉電阻,當(dāng)A0=1 時(shí)可以寫命令,當(dāng)A0=0 時(shí)可以讀寫數(shù)據(jù))CS(27)P21 (片選控制輸入,低電平有效,內(nèi)置弱上拉電阻)INT(1)P32 (在復(fù)位完成后為中斷請(qǐng)求輸出,低電平有效)WR(3)P36 (寫選通輸入,低電平有效,內(nèi)置弱上拉電阻)RD(4)P37 (讀選通輸入,低電平有效,內(nèi)置弱上拉電阻)3)LCD顯示模塊:LCD12864LCD12864_RS(4)P35。 //顯示液晶啟動(dòng)字符 while(1) { Host_MP3Play()。 //數(shù)據(jù)使能void delay(unsigned int time){ while(time)。 }}向VS1003寫入指令: wr_mad(unsigned char addr,unsigned char hdat,unsigned char ldat )// | | |// 地址 高八位數(shù)據(jù) 低八位數(shù)據(jù){ DREQ=1。}復(fù)位VS1003: void Mp3Reset(void){ XRESET=0。 //時(shí)鐘頻率控制 XTALI 增加倍頻數(shù) delay(10)。 //在每個(gè)文件播放完后至少寫入4個(gè)0 spi_write(0)。j) c+=3。 } return(i)。 //如果操作失敗,將會(huì)因此而卡死 //出錯(cuò)處理 while(1) { printf(請(qǐng)插入U(xiǎn)盤\n)。 goto next1。 continue。 i=CH375FileOpen()。 printf(Playing : %s\n,)。 //在屏幕第一行右顯示 LCD12864_W_Word_MP3(+10)。 // 最后剩余的字節(jié)數(shù) =c。 while(!DREQ)。 wr_mad(0x0b,VOL_VALUE,VOL_VALUE)。 // 音量 delay(10)。 printf(文件已經(jīng)結(jié)束\n)。 printf(Close\n)。 mDelaymS(100)。sbit PSB=P1^5。 }void SendByte(uchar Dbyte){ uchar i。 }}/*************寫命令********/void LCD12864_Write_Cmd(uchar data0) { RS=1。 SendByte(0xfa)。 //設(shè)置為8BIT串口工作模式 delay1(1)。 //Display Control,D=1,顯示開 delay1(100)。 break。 } i = y+i。 //設(shè)置顯示的起始地址 while(Alphabet[i]!=39。\039。 //設(shè)置顯示的起始地址 LCD12864_Write_Dat(HZ[0])。 //寫入需要顯示漢字的高八位數(shù)據(jù) LCD12864_Write_Dat(HZ[i++])
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1