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

正文內(nèi)容

基于51單片機的音樂播放器的軟硬件設(shè)計畢業(yè)論文-免費閱讀

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

下一頁面
  

【正文】 //重新設(shè)置顯示的起始地址 } }} /*******************************************************函數(shù)名稱:LCD12864_W_Test(bit i,unsigned char word) 功能描述:寫指令或數(shù)據(jù)(被調(diào)用層)調(diào)用函數(shù):LCD12864_Write_Cmd(unsigned char Com); LCD12864_Write_Dat(unsigned char Data) 參數(shù)說明:i;word *********************************************************/void LCD12864_W_Test(bit i,unsigned char word){ if(i==0) { LCD12864_Write_Cmd(word)。 Set_Cursor(x,y)。 if(x==4) //如果滿一屏 { x=0。 }}/**************************************************函數(shù)名稱:Display_Str_Line(unsigned char x,unsigned char y,unsigned char *Alphabet) 功能描述:指定位置顯示一行字符函數(shù),可自動換行調(diào)用函數(shù):Set_Cursor(unsigned char x, unsigned char y); LCD12864_Write_Dat(unsigned char Data)。 參數(shù)說明:Alphabet *************************************************/void Display_Char(unsigned char Alphabet){ LCD12864_Write_Dat(Alphabet)。 break。 //Enry Mode Set,光標從右向左加1位移動 delay1(100)。 //復(fù)位置高 delay1(10)。data14)。 //高四位 SendByte(0xf0amp。 Dbyte=Dbyte1。im。 } next1: 。 } else { //出錯 mStopIfError(i)。temp++) { DREQ=1。 EnumCount。 VOL_VALUE = 0x05。(VOL_VALUE0xfe)) //減小音量 { while(!(Key3))。 TotalCount=。 //在屏幕第四行顯示 LCD12864_W_Word( 南陽理工學(xué)院 )。 //在屏幕第一行左顯示 LCD12864_W_Word( 正在播放音樂 )。 if(EnumCount=2) { Mp3Reset()。EnumCount255。 printf(Ready ?\n)。 //在屏幕第二行左顯示 LCD12864_W_Word( 請插入 U盤...)。 UINT16 EnumCount。 }}UINT8 mCopyCodeStringToIRAM(UINT8 idata *iDestination, UINT8 code *iSource ){ UINT8 i=0。 for(i=delay。 // 內(nèi)置低音、高音增強 // 15:12 高音控制,(8…7 ,為 0 表示關(guān)閉) // 11:8 最低頻限 1000Hz 步進(0…15) // 7:4 低音加重,1dB步進(0…15 ,為0 表示關(guān)閉) // 3:0 最低頻限 10Hz步進(2…15) delay(10)。 //模式控制 開啟軟件復(fù)位 VS1003自身SPI模式 delay(10)。 spi_write(addr)。i++) { CLK=0。 //時鐘sbit DREQ =P2^5 。 (并/串行接口選擇:H并行;L串行)LCD12864_RST(17)P14。(3)在總體設(shè)計方案的基礎(chǔ)上,完成了音樂播放器的整體設(shè)計。(2)屏幕顯示調(diào)試程序下載成功后根據(jù)顯示的內(nèi)容來調(diào)試,在刪除漢字的時候按下刪除格一下,就變成亂碼,經(jīng)過查找資料之后,才懂得每行可以寫8個漢字或16個字符,如果寫的字符少于16個,那么用空格把未寫的地方填充滿16個字符就不會出現(xiàn)亂碼了。解決方法是要考慮兼容性問題,下載的驅(qū)動應(yīng)當手動安裝,使用系統(tǒng)自動配置會出現(xiàn)黃色嘆號。確定歌曲曲目后,顯示屏進行顯示。關(guān)于通信接口部分,它是一種同步串行接口方式(SPI從機模式),它要求SCLK信號必須由外部電路產(chǎn)生,數(shù)據(jù)(SDATA)在SCLK的上升沿或下降沿時被寫入。DISK_OPEN_FILE則代表扇區(qū)模式,DISK_OPEN_FILE_B則代表字節(jié)模式。圖9 U盤數(shù)據(jù)讀取原理圖將8位并行數(shù)據(jù)線D0~D7與單片機的P0口相連實現(xiàn)數(shù)據(jù)與命令的并行傳輸,RD,WR,CS,INT和A0五根控制線分別連接至單片機的的對應(yīng)引腳,CH375的TXD引腳通過1K的下拉電阻接地,使CH375工作于USB主機并行接口方式。由于CH375固件庫是一個固件包,它不僅包括了程序、數(shù)據(jù)結(jié)構(gòu)和覆蓋所有外設(shè)特性的宏單元。圖8 LCD12864串行方式數(shù)據(jù)傳輸 CH375軟件系統(tǒng)設(shè)計軟件是搭載在硬件上運行的,硬件的資源多少在一定程度上決定了軟件的設(shè)計方法和復(fù)雜程度。其中,H表示數(shù)據(jù)是顯示數(shù)據(jù),L表示數(shù)據(jù)是控制指令。當E信號H→L時12864讀取DB端口的數(shù)據(jù)。(2)USB總線的通用接口芯片CH375。主要完成數(shù)字信號的采集、信號濾波等功能。本設(shè)計使用的是uVision2版本。4個常規(guī)用途的I/O端口,一個UART,一個高品質(zhì)可變采樣率的ADC和立體聲DAC,還有一個耳機放大器和地線緩沖器。 LCD12864顯示電路顯示電路主要是LCD12864電路,它與1602顯示屏接線一樣,唯一的區(qū)別在于1602顯示屏是字符型,只能顯示數(shù)字與字符,不可以顯示漢字。在USB 主機方式下,CH375還提供了串行通訊方式,通過串行輸入、串行輸出和中斷輸出與單片機/DSP/MCU/MPU等相連接。內(nèi)部集成MAX810專用復(fù)位電路,2路PWM,有8路高速10位的A/D轉(zhuǎn)換(250K/S),STC12C5A60S2引腳序列如圖1所示。如果選用Flash,則整個系統(tǒng)要求較多的I/O端口來讀取,更重要的一點是,這樣做的后果就是整個系統(tǒng)的容量就被固定了,擴容存在困難。因此,選用此芯片作為解碼芯片?;谶@個思想本文設(shè)計了一款特殊的“音樂播放器”,該播放器可實現(xiàn)MP3文件的完整播放,可以選擇音量調(diào)節(jié),曲目的切換等功能。另一方面,一體化又限制了MP3播放器在其他領(lǐng)域的應(yīng)用,比如車載MP3等不方便移動的播放器。論文主要介紹了對U盤所存儲的MPWMA或MIDI格式的文件識別、提取以及音頻解碼程序?qū)崿F(xiàn)的方法,通過與硬件調(diào)試表明所設(shè)計的音樂播放器可以通過按鍵選擇歌曲以及控制音量,同時還可以通過顯示屏來顯示所播放的歌曲名。 audio decoding目 錄1 引言 1 設(shè)計背景 1 設(shè)計意義 1 理論分析與方案論證 1 理論分析 1 設(shè)計方案論證 22 系統(tǒng)硬件原理及概述 3 STC12C5A60S2處理器介紹 3 系統(tǒng)硬件電路綜述 3 硬件系統(tǒng)總體設(shè)計方案 3 USB總線的通用接口芯片CH375電路 4 LCD12864顯示電路 5 按鍵控制電路 5 音頻解碼芯片VS1003電路 53 系統(tǒng)軟件設(shè)計 6 軟件開發(fā)平臺 6 系統(tǒng)的軟件設(shè)計 7 軟件總體分析 7 CH375軟件系統(tǒng)設(shè)計 10 CH375模塊的U盤數(shù)據(jù)讀取程序設(shè)計 11 VS1003模塊的MP3文件播放程序設(shè)計 13 系統(tǒng)流程圖 144 系統(tǒng)調(diào)試結(jié)果及分析 15結(jié)束語 18參考文獻 19附錄 20致謝 33 1 引言 設(shè)計背景隨著電子技術(shù)的發(fā)展,MP3播放器向大容量、高音質(zhì)、小巧便攜不斷發(fā)展。本文將從軟硬件方面介紹如何用單片機控制USBHOST讀取U盤中的文件并將其解碼播放。(1)MP3 解碼本設(shè)計是利用STC12C5A60S2單片機控制來實現(xiàn)歌曲播放功能的,但對單片機本身來說不能進行音頻解碼(速度與資源都不符合要求),所以只能利用外部解碼芯片來實現(xiàn)歌曲播放功能。(3)液晶顯示采用普通單色LCD來實現(xiàn),這里考慮到音樂播放顯示的功能,同時兼顧成本,故選用LCD12864來實現(xiàn)。由于STC12C5A60S2本身不支持USB接口功能,所以MCU無法直接與電腦完成數(shù)據(jù)傳輸?shù)墓δ?,存儲設(shè)備需要通過自身的接口與電腦相接。硬件系統(tǒng)總體方框圖如圖2所示??勺詣訖z測USB設(shè)備的連接和斷開,提供設(shè)備連接和斷開的事件通知。按鍵一接通實現(xiàn)上一曲更換,按鍵二接通實現(xiàn)下一曲更換,按鍵三接通實現(xiàn)音量增大操作,按鍵四接通實現(xiàn)音量減小操作,接線如圖5所示。圖6 VS1003電路接線圖3 系統(tǒng)軟件設(shè)計 軟件開發(fā)平臺Keil是德國Keil公司(現(xiàn)已并入ARM公司)開發(fā)的微控制器軟件開發(fā)平臺,是目前ARM內(nèi)核單片機開發(fā)的主流工具。下面具體介紹各個模塊的實現(xiàn)。VSl003的SPI接口具有2種工作模式:新模式和兼容模式。表1 LCD12864引腳功能說明管腳號管腳名稱電平管腳功能描述1VSS0V電源地2VCC+5V電源正3V0對比度(亮度)調(diào)整4RS(CS)H/LRS=“H”,DB7——DB0為顯示數(shù)據(jù)RS=“L”,DB7——DB0為顯示指令數(shù)據(jù)5R/W(SID)H/LR/W=“H”,E=“H”,數(shù)據(jù)DB7——DB0被讀 R/W=“L”,E=“H→L”, DB7——DB0的數(shù)據(jù)被寫到IR或DR6E(SCLK)H/L使能信號7DB0H/L數(shù)據(jù)線8DB1H/L數(shù)據(jù)線9DB2H/L數(shù)據(jù)線10DB3H/L數(shù)據(jù)線11DB4H/L數(shù)據(jù)線12DB5H/L數(shù)據(jù)線13DB6H/L數(shù)據(jù)線14DB7H/L數(shù)據(jù)線15PSBH/LH:8位或4位并口方式,L:串口方式16NC空腳17/RESETH/L復(fù)位端,低電平有效18VOUTLCD驅(qū)動電壓輸出端19AVDD背光源正端(+5V)20KVSS背光源負端b)LCD12864控制器接口信號說明:管腳RS、R/W為主要功能選擇端口,RS端口高低電平用于12864識別端口信號是指令數(shù)據(jù)(L)還是顯示數(shù)據(jù)(H),R/W端口高低電平用于控制12864讀(H)寫(L)狀態(tài)。第一字節(jié) 串口控制——格式 11111ABC A為數(shù)據(jù)傳送方向控制。首先送入啟動字節(jié),送入5個連續(xù)的“1”來啟動一個周期,此時傳輸周期被重置,并且串行傳輸數(shù)據(jù)被同步,緊接的兩個為指定傳輸方向(R/W讀還是寫)和(RS確定是命令寄存器還是數(shù)據(jù)寄存器),最后的第八位是一個“0”,送完啟動字節(jié)以后,可以送入指令或是顯示數(shù)據(jù),指令或代碼是以字節(jié)為單位的,每個字節(jié)的內(nèi)容(指令或數(shù)據(jù))在被送入時分為兩個字節(jié)來處理,高四位放在第一個字節(jié)的高四位,低四位放在第二個字節(jié)的高四位。 本系統(tǒng)設(shè)計時,考慮移植操作系統(tǒng)。CH375內(nèi)置了USB通信協(xié)議,單片機可以直接調(diào)用API庫讀寫U盤中的文件數(shù)據(jù)。字節(jié)模式下,以字節(jié)為基本單位對U 盤文件進行讀寫,讀寫速度較慢,但是不需要額外的文件數(shù)據(jù)緩沖區(qū)(實際是與磁盤數(shù)據(jù)緩沖區(qū)合用),適用于RAM少、數(shù)據(jù)量小或者數(shù)據(jù)零碎、不經(jīng)常讀寫數(shù)據(jù)的單片機系統(tǒng)。圖10 U盤數(shù)據(jù)讀取流程圖 VS1003模塊的MP3文件播放程序設(shè)計系統(tǒng)上電啟動后,由單片機控制將存儲于U盤中歌曲的MP3數(shù)據(jù)格式流信息通過CH375的USB接口芯片送入到VSl003芯片中,通過VSl003芯片解碼及其內(nèi)含高質(zhì)量的立體聲DAC和耳機驅(qū)動電路,實現(xiàn)MP3歌曲的播放,在按鍵的控制下,可實現(xiàn)對歌曲的選擇、音量增減等功能。一般一次讀一個扇區(qū),然后將數(shù)據(jù)發(fā)往VS1003,由于VS1003有32Byte的數(shù)據(jù)緩沖區(qū),一次可以發(fā)32個字節(jié)的數(shù)據(jù),然后檢測DREQ電平,當D
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1