基于STM32F103RBT6的智能MP3播放器_第1頁(yè)
基于STM32F103RBT6的智能MP3播放器_第2頁(yè)
基于STM32F103RBT6的智能MP3播放器_第3頁(yè)
基于STM32F103RBT6的智能MP3播放器_第4頁(yè)
基于STM32F103RBT6的智能MP3播放器_第5頁(yè)
已閱讀5頁(yè),還剩21頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、基于STM32F103RBT6的智能MP3播放器基于STM32F103RBT6的智能MP3播放器摘要:當(dāng)代社會(huì)的發(fā)展,人們生活物質(zhì)水平的提高。對(duì)于現(xiàn)代消費(fèi)類電子的需求也愈來(lái)愈高。多功能MP3也越來(lái)越受歡迎。本設(shè)計(jì)以STM32F103RBT6 STM32F103RBT6全文簡(jiǎn)寫為RBT6為設(shè)計(jì)核心,利用vs1053音頻解碼芯片為主要元件設(shè)計(jì)了MP3播放器。并且,能實(shí)現(xiàn)高品質(zhì)音樂(lè)播放功能。電路在硬件方面有主要涉及了vs1053硬件音頻解碼驅(qū)動(dòng)器和320*240分辨率的TFTLCD彩屏液晶模塊,同時(shí)應(yīng)用了DHT11溫度濕度傳感器模塊。軟件方面主要設(shè)計(jì)了有vs1053B模塊的驅(qū)動(dòng)程序,SD卡的操作,和

2、FATS文件的操作程序等。所有系統(tǒng)并且基于RBT6微控制器的設(shè)計(jì)進(jìn)行的編程設(shè)計(jì)。本文設(shè)計(jì)的介紹了基于rbt6的MP3播放器的設(shè)計(jì)方法。該系統(tǒng)主要將SD卡的歌曲文件硬件解碼。,同時(shí)在TFTLCD彩屏液晶上顯示歌曲信息,播放中可以通過(guò)開關(guān)按鍵可以實(shí)現(xiàn)對(duì)歌曲的控制。同時(shí)DHT11對(duì)環(huán)境溫度進(jìn)行檢測(cè)。同時(shí)在彩屏上顯示相應(yīng)的信息。關(guān)鍵詞:STM32F103RBT6 VS1053 TFTLCD DHT11 MP3播放器Abstract:Nowadays, with the development in economy, people begin to seek to enjoy a rather high

3、 quality of life. Its evidently seen in the rising demand for upgrading electronic products, among which, multifunctional MP3 player begin to be widespread. This design is based onRBT6and auto decoding chip VS1053 to realize the function of displaying high-quality music.For hardware part, VS1053 aut

4、o decoding chip, TFTLCD module with the resolution of 320*240 and DHT11 Temperature & Humidity Sensor are applied in this design.In aspect of software, I add the drive for VS1053B, the operation in SD Card and FATS files. STM32F103RBT6 microcontroller plays an important role in the whole design.Thos

5、e measures are used in the detail of designing methods in this MP3 player. The music files in SD card are decoded so that we can get the information from the TFTLCD color screen. The songs are changed by switches & buttons. Meanwhile, the DHT11 chip senses the environment temperature which will be s

6、howed on color screen.Key word:STM32F103RBT6 VS1053 MP3 player TFTLCD DHT11目錄 TOC o 1-3 h z u HYPERLINK l _Toc387380219 摘要: PAGEREF _Toc387380219 h 1 HYPERLINK l _Toc387380220 Abstract: PAGEREF _Toc387380220 h 2 HYPERLINK l _Toc387380221 1、緒論 PAGEREF _Toc387380221 h 3 HYPERLINK l _Toc387380222 1.1、M

7、P3簡(jiǎn)介: PAGEREF _Toc387380222 h 3 HYPERLINK l _Toc387380223 1.2、設(shè)計(jì)原理和功能: PAGEREF _Toc387380223 h 3 HYPERLINK l _Toc387380224 1.3、系統(tǒng)整體方案的設(shè)計(jì): PAGEREF _Toc387380224 h 3 HYPERLINK l _Toc387380225 2、硬件設(shè)計(jì): PAGEREF _Toc387380225 h 3 HYPERLINK l _Toc387380226 2.1、RBT6介紹: PAGEREF _Toc387380226 h 3 HYPERLINK l

8、_Toc387380227 2.2、SD卡: PAGEREF _Toc387380227 h 3 HYPERLINK l _Toc387380228 2.3、DHT11溫濕度傳感器: PAGEREF _Toc387380228 h 3 HYPERLINK l _Toc387380229 2.4、TFTLCD液晶: PAGEREF _Toc387380229 h 3 HYPERLINK l _Toc387380230 2.5、VS1053音頻解碼模塊: PAGEREF _Toc387380230 h 3 HYPERLINK l _Toc387380231 2.6、外部FLASH: PAGEREF

9、 _Toc387380231 h 3 HYPERLINK l _Toc387380232 2.7、串行外圍設(shè)備接口 PAGEREF _Toc387380232 h 3 HYPERLINK l _Toc387380233 3、軟件設(shè)計(jì) PAGEREF _Toc387380233 h 3 HYPERLINK l _Toc387380234 4、實(shí)驗(yàn)調(diào)試 PAGEREF _Toc387380234 h 3 HYPERLINK l _Toc387380235 5、致謝 PAGEREF _Toc387380235 h 3 HYPERLINK l _Toc387380236 6、參考文獻(xiàn): PAGEREF

10、 _Toc387380236 h 3 HYPERLINK l _Toc387380237 7、附錄:成品圖 PAGEREF _Toc387380237 h 31、緒論1.1、 MP3簡(jiǎn)介:MP3是mpeg audio layer3的簡(jiǎn)稱。MP3實(shí)際上是一種音頻壓縮技術(shù)。該技術(shù)可將音樂(lè)以1:10或1:12的壓縮比率壓縮,因此大大降低了音頻文件的體積。但是MP3是一個(gè)有損壓縮的技術(shù)。但是壓縮后還是有很好的音質(zhì)。因?yàn)镸P3格式有占用存儲(chǔ)空間小、音質(zhì)高能滿足我們聽覺的需要,因此MP3成為目前主流的音頻文件壓縮形式。MP3丟棄了PCM調(diào)制音頻中對(duì)人聽覺不重要的部分,進(jìn)而減小了文件的體積。所以一首65M左

11、右的wav格式無(wú)損音樂(lè),在壓縮后只有4M左右。在以前存儲(chǔ)技術(shù)不是太發(fā)達(dá)之前。大大滿足了我們對(duì)音頻文件的存儲(chǔ)的需要。因?yàn)楝F(xiàn)在存儲(chǔ)技術(shù)的發(fā)展和各個(gè)網(wǎng)絡(luò)云盤的發(fā)展,更加加劇了人們對(duì)于高品質(zhì)的音頻的追求,現(xiàn)在的MP3播放器已經(jīng)不是之前單純的只能播放MP3文件。同時(shí)要能滿足播放無(wú)損音頻文件的能力。1.2、設(shè)計(jì)原理和功能:本系統(tǒng)將采用RBT6作為微控處理器,vs1053模塊來(lái)設(shè)計(jì)高性能MP3播放器??梢詫⑼庵肧D卡的歌曲文件通過(guò)vs1053模塊實(shí)現(xiàn)硬件解碼。同時(shí)在TFTLCD上同步顯示歌曲播放信息。信息有當(dāng)前音樂(lè)的碼率、名稱、音樂(lè)總數(shù)、音量。同時(shí)本系統(tǒng)具有一個(gè)溫濕度傳感器DHT11??梢愿鷵?jù)環(huán)境的溫度,給

12、出相應(yīng)的環(huán)境提示,并且將環(huán)境檢測(cè)的溫度顯示到TFTLCD上。,做到一個(gè)人性智能化的音樂(lè)播放系統(tǒng)。在人機(jī)交互方面使用的是點(diǎn)觸按鍵,可以控制歌曲的播放、暫停、上一曲、下一曲、音量+、音量-,實(shí)現(xiàn)整個(gè)系統(tǒng)的人機(jī)交互,來(lái)實(shí)現(xiàn)MP3的控制功能。1.3、頓號(hào)后面所有的去掉系統(tǒng)整體方案的設(shè)計(jì):方案一:方案使用89C51單片機(jī)為主控系統(tǒng),但是由于51單片機(jī)的資源很少同時(shí)不支持SPI接口,并且要外界模數(shù)轉(zhuǎn)換器來(lái)實(shí)現(xiàn)數(shù)據(jù)的采集,同時(shí)為了滿足高質(zhì)量的音頻播放同時(shí)還要外接語(yǔ)音模塊來(lái)實(shí)現(xiàn)語(yǔ)音的播放,同時(shí)由于51單片機(jī)的頻率低,片上資源少,同時(shí)還容易受到外接干擾。外圍電路復(fù)雜,由于要解碼高碼率的音頻文件,過(guò)多的外接電路導(dǎo)

13、致系統(tǒng)穩(wěn)定性將變得很差。由于外接的資源過(guò)多,導(dǎo)致軟件編寫復(fù)雜。綜合多方面的考慮本設(shè)計(jì)不采用51單片機(jī)做核心芯片。方案二:方案采用mps430作為系統(tǒng)的主控核心,mps430作為一個(gè)16位超低功耗的混合信號(hào)處理器。使用的是risc指令集,一個(gè)時(shí)鐘周期執(zhí)行一條指令,速度比51快多了。但是mps430的處理速度也不是很高,同時(shí)也需要大量的外圍電路來(lái)支持整個(gè)系統(tǒng),不能排除高碼率的音頻文件的播放,同時(shí)作為實(shí)驗(yàn)室產(chǎn)品的MP3播放器,不存在功耗的問(wèn)題,所以mps430的優(yōu)點(diǎn)不能很好的發(fā)揮。考慮到mps430的開發(fā)環(huán)境比較復(fù)雜。所以綜合考慮,不使用mps430作為系統(tǒng)的核心部分。方案三:方案采用RBT6作為系

14、統(tǒng)主控核心。RBT6是一種高性能ARM cortex-M3 32位的內(nèi)核的處理器。同時(shí)有SRAM、20kb、閃存128kb,72MHz工作頻率。同時(shí)RBT6有很高的處理速度,功耗低,整體性能大大提高,32位的控制核心使得的整個(gè)處理器更加穩(wěn)定、迅速。窗口型看門狗,可以是程序更加穩(wěn)定更加高效。同時(shí)也降低了程序跑偏的可能性。同時(shí)支持硬解仿真,對(duì)開發(fā)提供很好的便利。綜上所述,考慮多方面的因素,故設(shè)計(jì)選擇方案三,使用RBT6作為主控核心。2、硬件設(shè)計(jì):硬件電路設(shè)計(jì)主要包括RBT6單片機(jī)最小系統(tǒng)模塊、SD卡、W25X16片載flash、DHT11、240*320的TFTLCD、vs1053B音頻解碼模塊。

15、RBT6最小系統(tǒng)使用網(wǎng)上購(gòu)買的RBT6核心開發(fā)板,開發(fā)板集成RBT6最小系統(tǒng),以及SD卡模塊,以及16M片載flash W25X16。由于本系統(tǒng)涉及外圍器件較多,而且以貼片原件為主。同時(shí)涉及高品質(zhì)的音頻解碼部分,所以考慮直接購(gòu)買成品模塊,來(lái)避免可能出現(xiàn)的信號(hào)干擾問(wèn)題。同時(shí)也大大節(jié)約了開發(fā)周期。硬件框架如圖:圖2.1音樂(lè)播放器硬件設(shè)計(jì)圖點(diǎn)觸按鍵實(shí)現(xiàn)整個(gè)系統(tǒng)的人機(jī)交互功能,RBT6首先自檢各項(xiàng)模塊是否都正常工作,然后進(jìn)入播放界面,默認(rèn)從SD卡扇區(qū)0開始查找。得到歌曲的索引之后,開始播放音樂(lè)。同時(shí)TFTLCD顯示當(dāng)前歌曲的信息。同時(shí)RBT6將SD卡中的歌曲信息傳給vs1053進(jìn)行硬件解碼。當(dāng)發(fā)送51

16、2字節(jié)的數(shù)據(jù)后DHT11進(jìn)行溫濕度的采集、顯示。并且讀取下一個(gè)扇區(qū)的信息。在讀取每一字節(jié)的時(shí)候,進(jìn)行按鍵檢測(cè),從而進(jìn)行對(duì)主控系統(tǒng)的實(shí)時(shí)控制。2.1、RBT6介紹:本系統(tǒng)的主控系統(tǒng)使用RBT6。RBT6是意法半導(dǎo)體推出的。這款高性能32位ARM處理器芯片是基于Cortex-M3內(nèi)核設(shè)計(jì)的。片上資源極其豐富,工作頻率允許72MHz,是一款只有8位單片機(jī)價(jià)格的的性價(jià)比極高的32位ARM處理器,是做ARM嵌入式的極佳選擇。RBT6 64管腳的資源如下:內(nèi)核:90DMIPS1.25 MHDMIPS,ARM32 Cortex-M3 CPU。內(nèi)嵌43個(gè)可屏蔽中斷通道。RBT6有20KB的SRAM具有128K

17、B的Flash時(shí)鐘,復(fù)位,電源管理:-內(nèi)置8 MHz廠家校準(zhǔn)RC-內(nèi)置32 kHz RCRBT6具有低功耗:-睡眠,終止,待機(jī)三種模式雙12位16通道1 s數(shù)模轉(zhuǎn)換器-轉(zhuǎn)換范圍2.0至3.6V-雙采樣保持功能-溫度傳感器-與控制定時(shí)器同步DMA:-7通道DMA控制器-SPI接口-i2c接口-USART接口DEBUG模式-串行線SWD和JTAG接口RBT6有80個(gè)I/O端口-不可中斷的讀、修改、寫操作-16個(gè)外部中斷向量可映射7個(gè)定時(shí)器-3個(gè)16位定時(shí)器-2個(gè)16位監(jiān)視定時(shí)器-24位遞減計(jì)數(shù)器-6通道16位先進(jìn)控制定時(shí)器RBT6有9個(gè)通信接口-2個(gè)IC接口-3個(gè)USART-2個(gè)SPI接口-CAN

18、接口-USB 2.0全速接口圖2.1.1 2 RBT6引腳圖(64腳)RBT6模塊接口電路圖如下圖所示。下圖中RBT6的啟動(dòng)方式由BOOT1設(shè)置,下表顯示啟動(dòng)模式:表2.1啟動(dòng)模式圖2.1.2啟動(dòng)模式P1和P3用于PB和PA的IO提取,P2部分連接PortC。系統(tǒng)中管腳A0,連接DHT11溫濕度傳感器。圖2.1.33 STM32F103RBT6最小系統(tǒng)2.2、SD卡:Secure Digital Memory Card全名安全數(shù)碼卡,是MMC基礎(chǔ)上發(fā)展來(lái),是一種記憶設(shè)備,現(xiàn)在被廣泛的使用在便攜設(shè)備上。比如數(shù)碼相機(jī),或者便攜式多媒體播放器等。SD卡在1999年研制成功。大小和一個(gè)郵票一樣。SDS

19、C是容量02G,SDHC容量在2G32G,SDXC容量在32G2T。如下表所示:表 2.2 SD卡類型圖2.2.1 SD卡類型SD卡和SDHC協(xié)議是兼容的,本系統(tǒng)使用SD卡。SD卡有2種模式:SD卡模式SPI模式SD卡模式可以4線傳送數(shù)據(jù),SD卡通信使用SPI接口來(lái)實(shí)現(xiàn)。使用SPI相比SD卡模式速度會(huì)小很多。SD卡引腳如下:圖2.2.2 SD卡引腳圖直接寫2.?,不用寫2.?.?了,SD卡引腳功能如下:圖2.2.3 SD卡引腳功能SD卡只能使用3.3V的電平,因此主控系統(tǒng)一定要支持3.3的IO輸出。本系統(tǒng)中SD卡模塊的電路圖如下。圖2.2.4 SD卡模塊電路圖2.3、DHT11溫濕度傳感器:D

20、HT11是一款溫濕度同時(shí)采集的傳感器,內(nèi)含一個(gè)濕度傳感器,一個(gè)溫度傳感器。而且里面包含一個(gè)8位單片機(jī)。一次傳輸40bit的數(shù)據(jù),從而滿足實(shí)時(shí)采集溫度濕度。只占用一個(gè)單片機(jī)IO,DHT11采用單總線通信。而且耗能很低,電流只有0.5ma。DHT11量程humidity2090%temperature050,精度:temperature2humidity5%管腳如下圖所示:圖2.3.1 DHT11管腳圖DHT11單總線的數(shù)據(jù)格式。一個(gè)Dout管腳獨(dú)立完成收發(fā)的功能。數(shù)據(jù)包由40Bit構(gòu)成。數(shù)據(jù)分整數(shù)部分,小數(shù)部分。先出高位,傳輸40字節(jié)為一次完整的數(shù)據(jù)。DHT11的數(shù)據(jù)格式為:8字節(jié)濕度整數(shù)+8字

21、節(jié)校驗(yàn)+8字節(jié)濕度小數(shù)+8溫度小數(shù)+8字節(jié)溫度整數(shù)和。前四個(gè)字節(jié)相加為數(shù)據(jù)和校驗(yàn)。如下圖DHT11輸出。輸出是未編碼的二進(jìn)制數(shù)據(jù)。圖2.3.2 DHT11數(shù)據(jù)結(jié)構(gòu)計(jì)算方法是:圖2.3.3 DHT11數(shù)據(jù)處理通信時(shí)間是3ms,所以讀取時(shí)間不小于100ms即可。DHT11與RBT6的連接方式如下圖:圖2.3.4 DHT11 管腳連接圖DHT11連接在RBT6的管腳A0上,DHT11的實(shí)物圖如下:圖2.3.5DHT11實(shí)物圖2.4、TFTLCD液晶:該dst2001ph模塊采用TFTLCD面板,顯示16色的真彩色圖像。TFTLCD叫做薄膜晶體管液晶顯示器。顯示屏上每一個(gè)薄膜晶體管都對(duì)應(yīng)一個(gè)像素??朔?/p>

22、非選通的干擾。提高了圖片質(zhì)量。TFTLCD也叫真彩色液晶顯示器,有如下特點(diǎn)。1、2.4/2.8兩種大小可選。2、320240 的分辨率。3、16 位真彩顯示。4、自帶觸摸屏功能,可以作為控制輸入。5、通用的接口。液晶模塊的控制器為ILI9320。該模塊采用 26 萬(wàn)色的TFTLCD 屏,320240分辨率,使用16位的 80 并口和單片機(jī)相連。該模塊外觀如下:圖2.4.1模塊實(shí)物圖模塊的原理圖如下:圖2.4.2模塊原理圖TFTLCD采用排針與外部相連。接口如下圖所示:圖2.4.3模塊接口圖該模塊使用16位數(shù)據(jù)線,通過(guò)80并口與外部連接。80并口信號(hào)線有如下:CS:TFTLCD片選信號(hào)。WR:向

23、 TFTLCD寫入數(shù)據(jù)。RD:從TFTLCD 讀取數(shù)據(jù)。RST:硬復(fù)位TFTLCD。RS:命令/數(shù)據(jù)標(biāo)志。模塊的控制器ILI9320。ILI9320自帶顯存,大小有172820,也就是 18位模式下的顯存量。模塊16位數(shù)據(jù)線采用565 方式與顯寸對(duì)應(yīng),關(guān)系如圖所示:圖2.4.5色彩顯示原理圖中間6位為綠色,低 5位代表藍(lán)色,最高5位為紅色。顏色深淺表示數(shù)值大小。下面我介紹幾個(gè)ILI9320重要命令如下:圖2.4.6彩屏液晶常用指令集R0、開啟或關(guān)閉振蕩器/返回控制器的型號(hào)。R3,入口模式命令。R7,顯示控制命令。R34,寫數(shù)據(jù)到GRAM 命令。在實(shí)際硬件的使用中。我的RBT6的IO與TFTLC

24、D的關(guān)系如下:LCD_LED對(duì)應(yīng)PC10;LCD_CS 對(duì)應(yīng)PC11;LCD _RS 對(duì)應(yīng)PC12;LCD _WR對(duì)應(yīng)PC13;LCD _RD對(duì)應(yīng)PC14;LCD _BD17:1對(duì)應(yīng)管腳B15:0;實(shí)物連接圖如下:圖2.4.7液晶實(shí)物連接圖2.5、VS1053音頻解碼模塊:音頻解碼模塊所使用的VS1053B主控芯片是VLSI公司出品的。VS1053B支持EarSpeaker空間效果,同時(shí)能解決: AAC / WMA/OGG/ MP3/WAV/FLAC/MIDI 等格式的解碼,并且支持: WAV/OGG格式的音頻錄音。以及高低音調(diào)節(jié),功能強(qiáng)大。本系統(tǒng)購(gòu)買的是戰(zhàn)艦的VS1053 MP3 模塊:圖2

25、.5.1音頻模塊實(shí)物圖該模塊的資源如下:高性能編解碼芯片:VS1053B 1個(gè)LINE IN/MIC 選擇接口 1咪頭 1電源指示燈(藍(lán)色) 1個(gè)1.8V 穩(wěn)壓芯片 1個(gè)3.3V 穩(wěn)壓芯片 1 路 IIS 輸出接口 1 路電源及 SPI 控制接口 1 路 3.5mm LINE IN接口,支持雙聲道輸入錄音 1 路3.5mm 音頻輸出接口,可直接插耳機(jī)模塊通過(guò)SPI接口與RBT6主控芯片連接,模塊的控制以及音頻數(shù)據(jù),都通過(guò)SPI接口,通過(guò) 7 根信號(hào)線與單片機(jī)相連。是:XDCS、RST、XSC、SO、SI、DREQ、SCK。其中 RST 是復(fù)位控制線。DREQ數(shù)據(jù)請(qǐng)求線,通知 VS1053 是否

26、可接收數(shù)據(jù)。SO、SI、SKC是 SPI通信接口,在XDSC、 XSC控制下執(zhí)行不同的數(shù)據(jù)通信。VS1053有兩種形式的SPI: 1,VS1001兼容模式。 2, VS1002 有效模式我使用的是VS1053的默認(rèn)模式也就是VS1002有效模式。該模式下SPI 信號(hào)線功能描述:圖2.5.2VS1053 SPI功能描述VS1053B有2種 SPI他們SCI 、SDI 。其中SDI來(lái)傳輸數(shù)據(jù),SCI用于傳輸命令。SDI數(shù)據(jù)傳輸就是標(biāo)準(zhǔn)的 SPI 通信。播放音頻文件的步驟:1、復(fù)位VS1053(軟件復(fù)位和硬件復(fù)位)2、配置VS1053寄存器(MODE、CLOCLF、BASS、VOL)3、發(fā)送音頻數(shù)據(jù)

27、VS1053相關(guān)寄存器有:1、音量寄存器(VOL)2、模式寄存器(MODE)3、音調(diào)寄存器(BASS)4、時(shí)鐘寄存器(CLOCKF)MP3模塊的連接圖如下:圖2.5.3 MP3模塊單片機(jī)連接圖單片機(jī)的模塊的原理圖如下:圖2.5.4 VS1053B原理圖2.6、外部FLASH:W25X16是華邦公司的推出的一款容量更大的FLASH。容量16Mb,也就是2M 。2M空間分為32塊,每一塊大小64K。每個(gè)64K又被劃分為 16個(gè)扇區(qū),每個(gè)扇區(qū)占 4K。對(duì)W25x16操作時(shí)每次最少擦除一個(gè)扇區(qū)。所以每次要擦除 4K 字節(jié)。因此緩存區(qū)至少開辟4K給W25X16。該flash可以保存數(shù)據(jù)20年的穩(wěn)定性,同

28、時(shí)可以反復(fù)擦除10000 次。在本系統(tǒng)中,W25x16與單片機(jī)的連接圖。圖2.6.1W25X16與單片機(jī)連接圖本系統(tǒng)中,WX25X16的實(shí)物圖圖2.6.2 W25X16實(shí)物圖2.7、串行外圍設(shè)備接口Serial Peripheral interface 。EEPROM、AD/DA、片載FLASH是SPI的主要應(yīng)用地方。DSP、CODEC也會(huì)使用到SPI。SPI是一種通信總線具有全雙工、高速同步的特點(diǎn)。只有四線占芯片的引腳,節(jié)約引腳資源,為系統(tǒng)開發(fā),提供方便。為PCB布局相樣的節(jié)省空間、時(shí)間,這種簡(jiǎn)單和易于使用的特點(diǎn),在越來(lái)越多的芯片的通信協(xié)議使用,同時(shí)STM32 也有SPI 接口。SPI使用4

29、條線作為接口:MISO從設(shè)備data輸出、主設(shè)備data輸入。MOSI從設(shè)備data輸入、主設(shè)備data輸出。CS主設(shè)備控制,從設(shè)備的芯片選擇信號(hào)。SPI特點(diǎn):可以同時(shí)發(fā)出和接收串行數(shù)據(jù);可以當(dāng)作主機(jī)或從機(jī)工作;提供頻率可編程時(shí)鐘;發(fā)送結(jié)束中斷標(biāo)志;寫沖突保護(hù);總線競(jìng)爭(zhēng)保護(hù)等。本系統(tǒng)寫入FLASH字庫(kù)的時(shí)候。相關(guān)配置如下:1、配置相關(guān)引腳的復(fù)用功能,使能SPI1時(shí)鐘2、設(shè)置SPI1工作模式3、使能SPI13、軟件設(shè)計(jì)這一章內(nèi)容有些少,可以加些內(nèi)容,不要什么都沒有的時(shí)候,就出現(xiàn)一個(gè)流程圖,要一些語(yǔ)言過(guò)度圖3.1 軟件流程圖軟件采用C語(yǔ)言編程,使用MDK開發(fā)環(huán)境。首先開機(jī)自檢,檢測(cè)SD卡,DHT1

30、1、等硬件信息。硬件自檢完畢后,開始檢測(cè)存放在外部flash的字庫(kù)文件,如果字庫(kù)沒有,則在sd卡根目錄下下面更新字庫(kù)文件。字庫(kù)檢測(cè)完畢后,開始在sd卡的根目錄下面尋找音頻文件,然后順序播放。在讀取sd卡中的音頻文件同時(shí)。對(duì)按鍵進(jìn)行檢測(cè),每當(dāng)發(fā)完512個(gè)字節(jié)的時(shí)候檢測(cè)按鍵一次。同時(shí)檢測(cè)環(huán)境的溫濕度。如果有按鍵按下,則對(duì)系統(tǒng)進(jìn)行相應(yīng)的操作。按鍵主要是對(duì)播放進(jìn)行控制,有播放暫停按鍵、上一曲、下一曲、音量+、音量-來(lái)實(shí)現(xiàn)對(duì)整個(gè)播放系統(tǒng)的實(shí)時(shí)控制。在控制系統(tǒng)播放的同時(shí)不間斷的檢測(cè)周圍的環(huán)境溫度。設(shè)置的濕度舒適值是30%55%溫度舒適值是20%28%,在這個(gè)之間會(huì)顯示“今天天氣好好呀,陪你真好,來(lái)首mus

31、ic,么么噠。”當(dāng)溫濕度有一項(xiàng)不能滿足這個(gè),會(huì)顯示出不同的結(jié)果,具體結(jié)果請(qǐng)大家參照附錄代碼查看。4、實(shí)驗(yàn)調(diào)試本次設(shè)計(jì)是本人的初步嘗試使用STM32來(lái)開發(fā)系統(tǒng),以前都是使用51寫完整,什么51?來(lái)作為主控核心。但是由于51已經(jīng)是很老的設(shè)備,同時(shí)STM32有是Cortex-M3的內(nèi)核比相應(yīng)的arm7架構(gòu)更加先進(jìn)。出于對(duì)未知的好奇。所以本系統(tǒng)使用STM32作為開發(fā)的主控核心。但是問(wèn)題也是相應(yīng)而來(lái),由于上手時(shí)間不是太長(zhǎng),而且由8位的51直接過(guò)度到32位的STM32跨度還是相當(dāng)大的。但是幸好有我們學(xué)校的魏老師,給予我很大的幫助。在軟件的開發(fā)過(guò)程中,由于系統(tǒng)對(duì)外設(shè)的要求很高。導(dǎo)致時(shí)常出現(xiàn)外設(shè)跟不上軟件的速

32、度。從而大大的降低了整個(gè)系統(tǒng)的開發(fā)。一開始使用的是戰(zhàn)艦的開發(fā)板來(lái)調(diào)試整個(gè)系統(tǒng),系統(tǒng)非常良好,但是由于想自己搭建外圍,所以放棄了戰(zhàn)艦開發(fā)板上調(diào)好的整個(gè)系統(tǒng)。改用戰(zhàn)艦mini開發(fā)板。雖說(shuō)是開發(fā)板,但是其實(shí)和最小系統(tǒng)沒有太大區(qū)別。只是多了一個(gè)片載flash和一個(gè)SD卡模塊。免除自己的焊接問(wèn)題,但是這樣也幫助我很大的忙,應(yīng)為這兩個(gè)東西,是自己很難焊接出來(lái),如果直接去畫pcb時(shí)間又不是太來(lái)的急。所以最后選擇戰(zhàn)艦mini開發(fā)板。在戰(zhàn)艦mini開發(fā)板上進(jìn)行軟件調(diào)試的過(guò)程中,也遇到了很多困難,首先是資源的問(wèn)題,本來(lái)的主控系統(tǒng)是STM32F103ZET6而mini的板子是STM32F103RBT6板子的資源區(qū)別很大很大,最終導(dǎo)致戰(zhàn)艦的整個(gè)調(diào)好的系統(tǒng)無(wú)法移植。一個(gè)無(wú)線遙

溫馨提示

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

評(píng)論

0/150

提交評(píng)論