摘要:本文主要介紹了使用STM32F103RB芯片的32位閃存微控制器為內核制作一個MP3播放器,此芯片是基于ARMCortex-M3為內核,具有強大的功能。該MP3播放器由上述的微控制器、MP3解碼芯片(VS1003)、SD卡(FAT32文件系統)和液晶顯示屏(Nokia5110)組成。關鍵詞:STM32;VS1003;SD;FAT32
上傳時間: 2013-10-13
上傳用戶:569342831
文中介紹了一種全新理念的聲控MP3播放器系統的設計,并給出了基本硬件結構與軟件設計。這種聲控MP3播放器系統采用語音識別技術實現自動控制等功能。
上傳時間: 2014-12-27
上傳用戶:s藍莓汁
PWM語音播放器——基于Luminary單片機 詳述PWM語音播放器原理、硬件和軟件設計
上傳時間: 2013-10-15
上傳用戶:1966640071
串行編程器源程序(Keil C語言)//FID=01:AT89C2051系列編程器//實現編程的讀,寫,擦等細節//AT89C2051的特殊處:給XTAL一個脈沖,地址計數加1;P1的引腳排列與AT89C51相反,需要用函數轉換#include <e51pro.h> #define C2051_P3_7 P1_0#define C2051_P1 P0//注意引腳排列相反#define C2051_P3_0 P1_1#define C2051_P3_1 P1_2#define C2051_XTAL P1_4#define C2051_P3_2 P1_5#define C2051_P3_3 P1_6#define C2051_P3_4 P1_7#define C2051_P3_5 P3_5 void InitPro01()//編程前的準備工作{ SetVpp0V(); P0=0xff; P1=0xff; C2051_P3_5=1; C2051_XTAL=0; Delay_ms(20); nAddress=0x0000; SetVpp5V();} void ProOver01()//編程結束后的工作,設置合適的引腳電平{ SetVpp5V(); P0=0xff; P1=0xff; C2051_P3_5=1; C2051_XTAL=1;} BYTE GetData()//從P0口獲得數據{ B_0=P0_7; B_1=P0_6; B_2=P0_5; B_3=P0_4; B_4=P0_3; B_5=P0_2; B_6=P0_1; B_7=P0_0; return B;} void SetData(BYTE DataByte)//轉換并設置P0口的數據{ B=DataByte; P0_0=B_7; P0_1=B_6; P0_2=B_5; P0_3=B_4; P0_4=B_3; P0_5=B_2; P0_6=B_1; P0_7=B_0;} void ReadSign01()//讀特征字{ InitPro01(); Delay_ms(1);//----------------------------------------------------------------------------- //根據器件的DataSheet,設置相應的編程控制信號 C2051_P3_3=0; C2051_P3_4=0; C2051_P3_5=0; C2051_P3_7=0; Delay_ms(20); ComBuf[2]=GetData(); C2051_XTAL=1; C2051_XTAL=0; Delay_us(20); ComBuf[3]=GetData(); ComBuf[4]=0xff;//----------------------------------------------------------------------------- ProOver01();} void Erase01()//擦除器件{ InitPro01();//----------------------------------------------------------------------------- //根據器件的DataSheet,設置相應的編程控制信號 C2051_P3_3=1; C2051_P3_4=0; C2051_P3_5=0; C2051_P3_7=0; Delay_ms(1); SetVpp12V(); Delay_ms(1); C2051_P3_2=0; Delay_ms(10); C2051_P3_2=1; Delay_ms(1);//----------------------------------------------------------------------------- ProOver01();} BOOL Write01(BYTE Data)//寫器件{//----------------------------------------------------------------------------- //根據器件的DataSheet,設置相應的編程控制信號 //寫一個單元 C2051_P3_3=0; C2051_P3_4=1; C2051_P3_5=1; C2051_P3_7=1; SetData(Data); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); Delay_us(20); C2051_P3_4=0; Delay_ms(2); nTimeOut=0; P0=0xff; nTimeOut=0; while(!GetData()==Data)//效驗:循環讀,直到讀出與寫入的數相同 { nTimeOut++; if(nTimeOut>1000)//超時了 { return 0; } } C2051_XTAL=1; C2051_XTAL=0;//一個脈沖指向下一個單元//----------------------------------------------------------------------------- return 1;} BYTE Read01()//讀器件{ BYTE Data;//----------------------------------------------------------------------------- //根據器件的DataSheet,設置相應的編程控制信號 //讀一個單元 C2051_P3_3=0; C2051_P3_4=0; C2051_P3_5=1; C2051_P3_7=1; Data=GetData(); C2051_XTAL=1; C2051_XTAL=0;//一個脈沖指向下一個單元//----------------------------------------------------------------------------- return Data;} void Lock01()//寫鎖定位{ InitPro01();//先設置成編程狀態//----------------------------------------------------------------------------- //根據器件的DataSheet,設置相應的編程控制信號 if(ComBuf[2]>=1)//ComBuf[2]為鎖定位 { C2051_P3_3=1; C2051_P3_4=1; C2051_P3_5=1; C2051_P3_7=1; Delay_us(20); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); } if(ComBuf[2]>=2) { C2051_P3_3=1; C2051_P3_4=1; C2051_P3_5=0; C2051_P3_7=0; Delay_us(20); SetVpp12V(); Delay_us(20); C2051_P3_2=0; Delay_us(20); C2051_P3_2=1; Delay_us(20); SetVpp5V(); }//----------------------------------------------------------------------------- ProOver01();} void PreparePro01()//設置pw中的函數指針,讓主程序可以調用上面的函數{ pw.fpInitPro=InitPro01; pw.fpReadSign=ReadSign01; pw.fpErase=Erase01; pw.fpWrite=Write01; pw.fpRead=Read01; pw.fpLock=Lock01; pw.fpProOver=ProOver01;}
上傳時間: 2013-11-12
上傳用戶:gut1234567
《例說STM32》例程源碼(含MP3播放器源碼)
上傳時間: 2013-11-12
上傳用戶:2218870695
Cortex-M3 是ARM 公司為要求高性能(1.25 Dhrystone MIPS/MHz)、低成本、低功耗的嵌入式應用專門設計的內核。STM32 系列產品得益于Cortex-M3 在架構上進行的多項改進,包括提升性能的同時又提高了代碼密度的Thumb-2 指令集和大幅度提高中斷響應的緊耦合嵌套向量中斷控制器,所有新功能都同時具有業界最優的功耗水平。本系統是基于Cortex-M3 內核的STM32 微控制器的mp3 播放器,在硬件方面主要有VS1053硬件音頻解碼器和12864 點陣液晶屏,在軟件方面主要有VS1053 的驅動,SD 卡工作在SPI 模式下的讀寫驅動,FAT 文件系統的移植,12864 液晶的驅動,嵌入式操作系統ucOSii 的移植以及嵌入式圖形管理器ucGUI 的移植。整個設計過程包括電子系統的設計技術及調試技術,包括需求分析,原理圖的繪制,pcb 板的繪制,制版,器件采購,安裝,焊接,硬件調試,軟件模塊編寫,軟件模塊測試,系統整體測試等整個開發調試過程。
上傳時間: 2013-11-19
上傳用戶:shaoyun666
用JAVA寫的視頻播放器
上傳時間: 2013-12-09
上傳用戶:zhliu007
MP3播放器開發源碼及電路圖
上傳時間: 2013-12-22
上傳用戶:shinesyh
CSF格式視頻必備的播放器。這是一款集視頻流、音頻流和屏幕流播放于一體的媒體播放軟件。播放科建流式的媒體文件(CSF格式)和其他媒體文件。
上傳時間: 2013-10-18
上傳用戶:gxf2016
MP3播放器硬件電路設計實例
上傳時間: 2013-12-31
上傳用戶:zczc