基于EVK1105和UC/OS-II操作系統的自主能量開(kāi)發(fā)(三)
3.1 系統功能實(shí)現原理
本文引用地址:http://dyxdggzs.com/article/201612/326327.htm該系統為實(shí)現自主能量采集以及多用戶(hù)播放器的功能,以主控制芯片AT32UC3A為核心,綜合運用液晶顯示、多通道控制電路、用戶(hù)接口、內存及外部存儲設備和電源等部分來(lái)實(shí)現系統功能?;镜南到y硬件結構框圖如下:

圖2 系統硬件結構框圖
系統各個(gè)部分相互協(xié)調,以實(shí)現系統的總體功能,以下是系統各個(gè)組成部分的實(shí)現原理:
3.1.1 主控芯片功能
該系統的主控芯片為AT32UC3A,之所以采用該芯片作為該系統的主控芯片,因為該芯片有以下性能:
1、強大的音頻處理能力:AVR32微控制器的核心是AVR32 CPU內核,其特點(diǎn)是提供了一系列覆蓋面較廣、往往只在高端CPU和DSP上才有的指令。因為具備這樣的高性能,所以它不再需要定制音頻解碼器硬件,它能以稍高于20MHz的運算能力解碼立體聲MP3音頻流。由于其最高速度可達72MHz,因而其CPU還留有足夠的性能裕量來(lái)處理AAC和AAC+等“負荷較重”的音頻格式。而剩余的性能裕量還可以運行操作系統和完成必須的文件存儲和通信功能。
2、高性能的D/A轉換器:數字音頻信號在解壓之后,必須轉換為模擬音頻才能通過(guò)一組揚聲器播放出來(lái)。AVR32提供了一個(gè)Hi-Fi立體聲16位DAC用于立體聲輸出。因此,它只需要一個(gè)很小的外部功放來(lái)產(chǎn)生線(xiàn)路輸出、耳機輸出或外部揚聲器所需的輸出電平。
3、豐富的外部連接:雖然AVR32微控制器中的閃存和SRAM足以存儲用戶(hù)固件、解碼音頻和緩沖通信數據,但片上存儲器的大小并不足以緩沖幾秒以上的音頻內容。不過(guò)AVR32的可選存儲器范圍很寬,其中三種最受歡迎的就是SD/MMC卡、USB大容量存儲器和NAND閃存。AVR32可以任意組合這幾種存儲器用于存儲音頻內容。其中,SD卡接口支持高達2GB的高速大容量SD卡;USB主機接口能連接常規USB記憶棒,也可用于接入一個(gè)帶USB插頭的媒體播放器、相機或手機。
關(guān)于主控芯片及平臺的具體信息將在后文中介紹。
3.1.2 能量采集模塊
太陽(yáng)能采集
目前的太陽(yáng)能采集技術(shù)比較成熟,該系統中利用太陽(yáng)能電池作為采集太陽(yáng)能的裝置,并將其轉換成電能。簡(jiǎn)要的工作原理圖如下:

圖3 太陽(yáng)能采集原理圖
該部分的核心為充放電控制器,在陽(yáng)光充足的情況下太陽(yáng)能電池陣列吸收光能并產(chǎn)生電能,充放電控制器將該電能充入蓄電池組,同時(shí)為播放器提供必要的電能。在陽(yáng)光不充足的情況下,充放電控制器則從蓄電池組提取能量供給播放器。
振動(dòng)能量采集
當前振動(dòng)能量采集技術(shù)有多種,該系統中利用最傳統的做法,即使用一塊懸掛的磁鐵,將線(xiàn)圈放置在一個(gè)變化的磁場(chǎng)中產(chǎn)生電磁感應,發(fā)電機則通過(guò)電磁感應來(lái)完成能量轉換。

圖4 震動(dòng)能量采集原理圖
該部分核心仍為充放電控制器,振動(dòng)能量轉換裝置轉換的能量通過(guò)充放電控制器存儲在蓄電池中或給播放器供電,若無(wú)振動(dòng)情況下,則直接使用蓄電池給播放器供電。
3.1.3 播放器功能模塊
MP3解碼電路
音頻以數字信息的格式存儲在介質(zhì)中,因此在播放歌曲的時(shí)候要利用音頻解碼電路進(jìn)行轉化,將數字量轉化為模擬量并輸出,因此需要MP3解碼電路以實(shí)現這一功能。最常見(jiàn)的MP3音頻解碼電路由音頻解碼器,可變采樣率ADC和立體聲DAC,耳機放大電路構成。而AT32UC3A芯片集成的強大功能可以實(shí)現解碼電路的大部分功能,因此,只需要再加入一個(gè)很小的功放來(lái)產(chǎn)生線(xiàn)路輸出、耳機輸出或揚聲器所需要的電平。
多通道控制電路
該播放器設計有面向多用戶(hù)的功能(最多4用戶(hù)),該功能主要由多通道控制電路來(lái)實(shí)現。在該功能中,采用分時(shí)多緩沖技術(shù):首先把時(shí)間分為很小的時(shí)間片段,時(shí)間段的個(gè)數等于通道個(gè)數,每個(gè)時(shí)間片段響應不同的歌曲情切,主控芯片根據請求讀取FLASH存儲器中的數據,并將其按請求順序放入內存,并送給解碼器,解碼得到的信號經(jīng)4路高速控制開(kāi)關(guān)選通4個(gè)音頻輸出口。因為時(shí)間間隙很小,人耳無(wú)法分辨,所以保證了歌曲播放的完整性。其簡(jiǎn)要原理圖如下:

圖5 多通道控制原理圖
儲存單元
該系統的儲存單元主要有外部存儲器接口、SRAM內存、FLASH存儲和USB接口。
外部存儲器接口
考慮到硬件平臺內置存儲空間較小的問(wèn)題,并結合主控芯片AT32UC3A的外部接口特點(diǎn),該系統采用外部存儲器來(lái)儲存歌曲,該存儲器可以是高速大容量的SD卡或USB記憶棒。
SRAM內存
該部分作為系統的內存,用于處理和運算,保證系統的正常運行。
FLASH存儲
FLASH存儲設備用于存放系統的控制程序。
USB通信接口
系統提供USB通信接口以方便系統與外部設備的互聯(lián),該USB接口可以用于下載歌曲等操作。
3.1.4 電源管理
該部分主要包括四個(gè)部分:電池、充放電控制器、太陽(yáng)能能量采集電路和振動(dòng)能量采集電路,在充放電控制器的控制下,實(shí)現個(gè)部分的協(xié)調供電,同時(shí)利用AT32UC3A芯片的電源管理,使系統實(shí)現最低功耗。
3.2 硬件平臺選用及資源配置
3.2.1 硬件平臺選擇
該系統選用EVK1105作為平臺進(jìn)行相關(guān)的研發(fā)和制作工作,理由如下:
1、其主控芯片強大的音頻處理功能
EVK1105硬件平臺采用了AVR高性能32位微控制器AVR32,而AVR32微控制器的核心是AVR32 CPU內核,其特點(diǎn)是提供了一系列覆蓋面較廣、往往只在高端CPU和DSP上才有的指令。因為具備這樣的高性能,所以它不再需要定制音頻解碼器硬件,它能以稍高于20MHz的運算能力解碼立體聲MP3音頻流。由于其最高速度可達72MHz,因而其CPU還留有足夠的性能裕量來(lái)處理AAC和AAC+等“負荷較重”的音頻格式,同時(shí)UC3A器件還可處理兩個(gè)音頻接口。在高質(zhì)量立體聲輸出方面,該芯片集成了一個(gè)內置FIR和Comb濾波器的立體聲16位比特流音頻DAC;至于4聲道或全環(huán)繞聲,則可利用IIS接口來(lái)連接外部音頻編解碼器。兩個(gè)接口均由利用AVR32 外設 DMA 控制器的驅動(dòng)器提供支持,能夠大幅減少 CPU 開(kāi)銷(xiāo)。而剩余的性能裕量還可以運行操作系統和完成必須的文件存儲和通信功能,這大大的增強了系統性能和穩定性。2、良好的存儲器選擇范圍
雖然AVR32微控制器中的閃存和SRAM足以存儲用戶(hù)固件、解碼音頻和緩沖通信數據,但片上存儲器的大小并不足以緩沖幾秒以上的音頻內容。但是AVR32的可選存儲器范圍很寬,其中三種最受歡迎的就是SD/MMC卡、USB大容量存儲器和NAND閃存。AVR32可以任意組合這幾種存儲器用于存儲音頻內容。其中,SD卡接口支持高達2GB的高速大容量SD卡;USB主機接口能連接常規USB記憶棒,也可用于接入一個(gè)帶USB插頭的媒體播放器、相機或手機。NAND閃存接口最多可支持兩塊芯片,而且能提供對單層(SLC)和多層單元(MLC)ECC的硬件支持,這便為音樂(lè )文件的存儲提供了海量的空間。
3、非常低的功耗
AVR32系列的功耗不到2.0mW/MHz,因而只需兩塊AA電池,就能持續150小時(shí)的音頻播放。而在只有實(shí)時(shí)時(shí)鐘運行的待機模式下,同樣的電池可維持9年多的時(shí)間。
4、豐富的外部接口
EVK1105還提供了大量的外設和接口,比如高保真音頻接口、10/100以太網(wǎng)口、無(wú)線(xiàn)模塊接口、外聯(lián)接口、麥克風(fēng)、數模轉換和液晶顯示器。這大大的簡(jiǎn)化了電路的設計,提高了系統的穩定性。
因此,我們決定使用EVK1105作為本音樂(lè )播放器的硬件平臺。
3.2.2 EVK1105的詳細功能
EVK1105的硬件平臺結構如下:

圖6 EVK1105平臺
EVK1105硬件平臺資源介紹及其配置:
CPU:AT32UC3A0512主要特性如下
高性能,低功耗AVR32UC 32位微控制器
精簡(jiǎn)單周期RISC指令集,含DSP指令集
“讀-改-寫(xiě)”三步操作和位元處理操作
1.49 DMIPS/MHz性能表現
在FLASH中66 MHz下,高達91 DMIPS的運行速度(1等待狀態(tài))
在FLASH中33 MHz下,高達49 DMIPS的運行速度(0等待狀態(tài))
內存保護單元
多層次總線(xiàn)系統
通過(guò)為提高性能而設的獨立總線(xiàn)上,實(shí)現高性能數據傳輸
15個(gè)外設DMA通道,提高外設通信速度
512K Bytes
單周期訪(fǎng)問(wèn)速度高達33 MHz
預取緩沖,優(yōu)化了指令執行效率,達到最高速度
4ms頁(yè)面編程時(shí)間和8ms整片擦除時(shí)間
100,000次寫(xiě)周期,15年數據保存能力
FLASH安全鎖定和用戶(hù)自定義配置區
64K Bytes
兼容SDRAM/SRAM存儲器總線(xiàn)(16位數據總線(xiàn)和24位地址總線(xiàn))
自動(dòng)向量低延時(shí)中斷服務(wù),帶可編程優(yōu)先級
電源時(shí)鐘管理,含內部RC時(shí)鐘和1個(gè)32KHz晶振
兩個(gè)多用途振蕩器和雙鎖相環(huán)(PLL),允許獨立CPU頻率,不受USB頻率影響
看門(mén)狗定時(shí)器,實(shí)時(shí)時(shí)鐘定時(shí)器
Device 2.0全速,以及On-The-Go(OTG)低速和全速
通過(guò)專(zhuān)用的DMA通道實(shí)現靈活的端點(diǎn)配置和管理
片上收發(fā)器,含上拉電阻
802.3以太網(wǎng)媒體訪(fǎng)問(wèn)控制器
支持媒體獨立接口(MII)和簡(jiǎn)化MII(RMII)
3個(gè)外部時(shí)鐘輸入,PWM,接收和多種計時(shí)能力
內部高速FLASH
獨立波特率發(fā)生器,支持SPI,IrDA和ISO7816接口
支持硬件握手操作,RS485接口和調制解調線(xiàn)路
內部高速SRAM,全速單周期訪(fǎng)問(wèn)
支持I2S協(xié)議和通用基于框架協(xié)議
外部存儲器接口,用于A(yíng)T32UC3A0擴展
中斷控制器
采樣速率最高可達50 KHz
Nexus Class 2+,運行控制,非強加數據和程序跟蹤
系統功能
通用串行總線(xiàn)
10/100 Mbps的以太網(wǎng)MAC接口
1個(gè)三通道16位定時(shí)/計數器(TC)
1個(gè)7通道16位脈寬調制控制器(PWM)
4個(gè)通用 同步/異步 接收/發(fā)送器(USART)
2個(gè)主/從串行外設接口(SPI),帶片選信號
1個(gè)同步串行協(xié)議控制器
1個(gè)主/從2-wire接口(TWI),兼容400kbit/s I2C
1個(gè)8通道10位模數轉換器
16位立體聲比特流
片上調試系統(JTAG接口)
100腳 TQFP(69 GPIO引腳),144腳 LQFP(109 GPIO引腳)
5V輸入容差I(lǐng)/Os
3.3V單電源供電或1.8V-3.3V雙電源供電
外部設備和接口:
高保真音頻接口
該音頻接口作為本播放器的耳機的插口。
電壓選擇接口
為硬件平臺提供強大的能量支持。
USB接口
與PC通信,作為下載音樂(lè )文件的接口。無(wú)線(xiàn)模塊接口
該接口支持IEE802.15.4™/Zigbee® 和藍牙,作為無(wú)線(xiàn)收聽(tīng)音樂(lè )和控制播放器的接口。利用該接口用戶(hù)可以隨時(shí)對播放器的播放狀態(tài)進(jìn)行調整,并且該無(wú)線(xiàn)通信是雙向的,因此,用戶(hù)可以不用去尋找播放器,而只在耳機上就可以對播放器進(jìn)行控制。
五向觸摸按鍵
按鍵直接對音樂(lè )播放器進(jìn)行控制
LED燈
顯示音樂(lè )播放器當前的用戶(hù)數目,使用戶(hù)可以實(shí)時(shí)的了解當前的用戶(hù)數量。
2寸QVGA液晶顯示器
用于顯示播放器的播放狀態(tài),如歌曲、音量和歌詞等信息,使用戶(hù)可以實(shí)時(shí)了解到系統的狀態(tài),并根據自己的喜好和需要對系統狀態(tài)進(jìn)行調整。
數模轉換
為實(shí)現高品質(zhì)音樂(lè )享受提供保證。
綜上所述,基于EVK1105強大的音頻處理功能,豐富的外部結構,較低的功耗以及良好的外部存儲器擴展,該系統采用這個(gè)平臺進(jìn)行相關(guān)的開(kāi)發(fā)和制作。
3.3系統軟件架構
結合UC/OS-II實(shí)時(shí)操作系統的特點(diǎn),該音樂(lè )播放器的軟件架構采用分層設計,整個(gè)軟件體系突出系統裁剪便捷化、軟件平臺重用性最大化的特點(diǎn)。該音樂(lè )播放器的軟件架構總共有四層:系統引導層、UC/OS操作系統層、動(dòng)態(tài)加載專(zhuān)用驅動(dòng)層和多任務(wù)應用層。

圖7 音樂(lè )播放器軟件架構
系統引導層
系統引導層是系統加電之后運行的第一段目標碼。首先完成基本硬件的初始化,然后初初始化關(guān)鍵外圍硬件,最后為內核設置啟動(dòng)參數并加載內核。
(2)UC/OS-II操作系統層
UC/OS-II操作系統層是UC/OS-II操作系統內核,通過(guò)裁剪,實(shí)現最小功能集。本層主要包括硬件驅動(dòng)、進(jìn)程控制管理、內存管理、文件系統和系統調用接口。其中,進(jìn)程控制管理包括進(jìn)程通信和進(jìn)程調度。
(3)動(dòng)態(tài)加載專(zhuān)用驅動(dòng)層
動(dòng)態(tài)加載式專(zhuān)用驅動(dòng)層圍繞該音樂(lè )播放器專(zhuān)用硬件,采用加載方式實(shí)現驅動(dòng)設計,并構成音樂(lè )播放器專(zhuān)用硬件加載式驅動(dòng)層,該層主要包括無(wú)線(xiàn)接口驅動(dòng)、LCD 驅動(dòng)、鍵盤(pán)驅動(dòng)、麥克風(fēng)驅動(dòng)、音頻接口驅動(dòng)、USB驅動(dòng)和外部存儲接口驅動(dòng)。
(4)多任務(wù)應用層
多任務(wù)應用層是該音樂(lè )播放器專(zhuān)用功能的應用層實(shí)現。該層采用1個(gè)進(jìn)程運行多個(gè)線(xiàn)程的機制實(shí)現多任務(wù)操作進(jìn)程之間采用消息隊列通信機制。與專(zhuān)用硬件加載驅動(dòng)層呼應,該層主要包括無(wú)線(xiàn)接口任務(wù)、界面顯示任務(wù)、按鍵輸入任務(wù)、麥克風(fēng)處理任務(wù)、音頻接口任務(wù)、USB數據拷貝任務(wù)和電源管理任務(wù)。多線(xiàn)程與消息隊列通信機制不僅實(shí)現了多任務(wù)處理。同時(shí)方便了該音樂(lè )播放器功能擴充,為設備演進(jìn)打下了良好基礎。
3.4系統軟件流程
系統的軟件流程圖如下:

圖8 程序運行流程圖
EVK1105上電后,開(kāi)始初始化,然后初始化UC/OS-II操作系統,完成初始化后系統創(chuàng )建各項任務(wù),并創(chuàng )建一個(gè)優(yōu)先級最高的監視任務(wù),最后啟動(dòng)操作系統,系統按照優(yōu)先級調度運行各項任務(wù),并一直監視各項任務(wù)的運行情況,直到關(guān)機鍵被按下。
3.4 系統預計實(shí)現結果
1、太陽(yáng)能和振動(dòng)能可以提供整個(gè)系統所需的絕大部分能量,實(shí)現真正意義上的環(huán)保和自主供能。
2、根據太陽(yáng)能電池板的特性,實(shí)現太陽(yáng)能的最大轉換,提高太陽(yáng)能供電比重。
3、多用戶(hù)播放功能,在UC/OS-II實(shí)時(shí)操作系統的控制下,可以隨時(shí)增加或刪減收聽(tīng)的用戶(hù)的數目,最多可以同時(shí)為4個(gè)用戶(hù)播放音樂(lè ),并將當前的用戶(hù)數量用LED燈的方式顯示出來(lái)。
4、借助EVK1105上的無(wú)線(xiàn)接口,是每個(gè)用戶(hù)都可以無(wú)線(xiàn)收聽(tīng)音樂(lè ),擺脫耳機線(xiàn)的束縛,更加自由的享受音樂(lè )的美妙。同時(shí),借助耳機上的按鍵實(shí)現音樂(lè )播放器的防丟失功能。
5、利用具有DSP指令的AT32UC3A系列CPU,實(shí)現高品質(zhì)的音樂(lè )播放。
6、借助AT32UC3A上的USB等高速接口,實(shí)現音樂(lè )文件的海量存儲。
四、創(chuàng )新點(diǎn)
該系統在功能上和系統設計上主要有以下幾點(diǎn)創(chuàng )新:
振動(dòng)能量采集
雖然如今已有一些振動(dòng)能量采集的方案,但是大多局限于微型傳感器的使用,該系統將采集到的振動(dòng)能量用于音樂(lè )播放器,使得能量的采集手段更加豐富。
輔助尋找功能
針對便攜式產(chǎn)品不易尋找的特點(diǎn),該系統加入輔助尋找,系統各部分可以進(jìn)行聲音應答,為用戶(hù)提供的方便。
多用戶(hù)播放功能
該功能使得單個(gè)音樂(lè )播放器不再局限于只為單個(gè)用戶(hù)播放歌曲的現狀,而是可以同時(shí)為多個(gè)用戶(hù)提供不同的音樂(lè )。
評論