基于A(yíng)RM Cortex-M3的嵌入式網(wǎng)絡(luò )播放系統
2 系統硬件模塊設計
2.1 以太網(wǎng)接口
ENC28J60是獨立的以太網(wǎng)控制器,采用業(yè)界標準的SPI串行接口,具有10 Mb/s SPI接口,符合IEEE802.3協(xié)議,內置10 Mb/s以太網(wǎng)物理層器件(PHY)及介質(zhì)訪(fǎng)問(wèn)控制器(MAC)。另外,它還具有可編程8 KB雙端口SRAM緩沖器,此緩沖存儲器具有靈活可靠的數據管理機制,以高效方式進(jìn)行信息包的存儲、檢索和修改,以減輕主控器件的內存負荷。
圖2為網(wǎng)絡(luò )接口硬件連接示意圖。ENC28J60通過(guò)SPI總線(xiàn)實(shí)現與LM3Sll38的數據傳輸,CS為片選信號,SCLK為時(shí)鐘信號,MOSI/MISO為數據傳輸串口。此外,ENC28J60還與網(wǎng)絡(luò )變壓器HR901l70A相連,引出剛45接口。
2.2音頻接口
VSl003音頻編解碼器為VSl0XX系列第3代產(chǎn)品,包括MP3/WMA/MIDI解碼和ADPCM編碼2個(gè)單器件。其內置有高性能、低功耗的DSP處理核(VSDSP),工作內存,可供用戶(hù)程序使用的5.5 KB RAM,串行SPI總線(xiàn)接口,高質(zhì)量的采樣頻率可調的過(guò)采樣D/A轉換器以及16位的過(guò)采樣A/D轉換器。圖3為音頻編解碼器模塊硬件連接示意圖,VSl003采用SPI總線(xiàn)與LM3Sll38實(shí)現通信。其中,SCLK為輸入時(shí)鐘,CS為片選信號,MOSI/MISO為數據串口,Demand為命令有效信號,VSl003外接音頻輸出設備。
2.3 USB控制接口
CH375是一款支持USB-HOST主機方式和USB-DE-VICE/SLAVE從設備方式的器件,主機端點(diǎn)輸入和輸出緩沖區各64字節,支持常用的12 Mb/s全速USB設備,支持USB設備的控制傳輸、批量傳輸、中斷傳輸。內置固件處理海量存儲設備的專(zhuān)用通訊協(xié)議,支持Bulk-Only傳輸協(xié)議和SCSI,UFI,RBC或等效命令集的USB存儲設備。
圖4為USB控制接口模塊硬件連接示意圖,CH375通過(guò)UART串口與LM3S1138傳輸數據,*****為中斷信號,TXD/RXD為數據傳輸串口,CH375連接USB存儲設備。
3 系統軟件設計
μC/OS-II是專(zhuān)門(mén)為嵌入式應用設計的實(shí)時(shí)操作系統內核,其具有以下優(yōu)點(diǎn):源代碼公開(kāi),代碼結構清晰,注釋詳盡,組織有條理,具有良好的可擴展性和可移植性,最多可以管理60個(gè)任務(wù)。該系統移植的μC/OS-II由用戶(hù)層、中間件層、μC/OS-II源碼層、μC/OS-II移植層和驅動(dòng)庫組成。用戶(hù)層存放用戶(hù)代碼及設置,其中Main.c是用戶(hù)編寫(xiě)任務(wù)處,Main.h定義堆棧大小及優(yōu)先級;中間件層Middleware存放UART、SPI等串口通信中間件和TCP/IP協(xié)議棧LwIP;μC/OS-II源碼層Source存放μC/OS-II的源代碼;μC/OS-II移植層Port存放μC/OS-Ⅱ基于LM3S的移植代碼,包括OS_CPU_C.C,OS_CPU_A.A,OS_CPU.C等3個(gè)必要文件;驅動(dòng)庫層是直接面向硬件設備層,它是硬件設備和應用程序之間的樞紐,直接與系統底層的硬件設備打交道,按照硬件設備的具體工作方式讀寫(xiě)設備寄存器。將寄存器的數據與應用軟件交互,ENC28J60、VSl003和CH375的驅動(dòng)函數都在該層。
3.1網(wǎng)絡(luò )驅動(dòng)程序
本系統采用ENC28J60以太網(wǎng)控制器,需編寫(xiě)網(wǎng)絡(luò )設備驅動(dòng)程序,實(shí)現低層網(wǎng)絡(luò )接口及硬件函數驅動(dòng)。該驅動(dòng)程序設計主要包含網(wǎng)卡的初始化和數據的發(fā)送接收。
電子鎮流器相關(guān)文章:電子鎮流器工作原理
評論