1 、系統(tǒng)總體方案設(shè)計(jì)
系統(tǒng)采用新一代的32bitRISC處理器STM32作為主控芯片,通過以太網(wǎng)傳輸數(shù)據(jù),以FLASH作為存儲(chǔ)模塊,由FPGA完成對(duì)LED顯示屏的高速掃描刷新。系統(tǒng)工作時(shí),利用上位機(jī)編輯顯示信息,通過以太網(wǎng)接口將顯示信息傳輸給微處理器,微處理器接收數(shù)據(jù)信息后寫入FLASH存儲(chǔ)器。在顯示時(shí),微處理器讀取FLASH中的數(shù)據(jù),通過總線將數(shù)據(jù)以并行方式發(fā)送給FPGA,FPGA處理后將數(shù)據(jù)傳輸?shù)絃ED顯示屏顯示。
2 、系統(tǒng)硬件設(shè)計(jì)
本系統(tǒng)選用ST公司新推出的32位微處理器STM32F103ZET6作為主控芯片,STM32F103ZET6使用了先進(jìn)架構(gòu)的ARMCortex-M3內(nèi)核,其靈活的靜態(tài)存儲(chǔ)器控制器使得它能很方便的和許多存儲(chǔ)器和外設(shè)連接,同時(shí)STM32片上外設(shè)豐富,可以簡(jiǎn)化系統(tǒng)外圍電路的設(shè)計(jì)。
2.1 FLASH存儲(chǔ)器電路設(shè)計(jì)
FLASH采用的是三星公司的K9F1G16U0M,它是一種NAND型FLASH,存儲(chǔ)容量為64M16位,工作電壓3.3V,系統(tǒng)中STM32F103ZET6與K9F1G16U0M的連接如圖2所示。FLASH存儲(chǔ)器的IO0~IO7和FMSC數(shù)據(jù)總線的低8位相連,STM32處理器通過FSMC訪問存儲(chǔ)器;FLASH存儲(chǔ)器的片選信號(hào)nCE和FSMC的FSMC_NCE2相連接,這樣存儲(chǔ)器的地址空間為0x70000000~077FFFFFFFF;FLASH存儲(chǔ)器的R/nB連接至STM32處理器的FSMC_NWAIT管腳,處理器將R/nB作為一個(gè)中斷源使用,因此可以在存儲(chǔ)器的等待周期內(nèi)執(zhí)行其他的任務(wù)。
2.2 以太網(wǎng)接口電路設(shè)計(jì)
采用以太網(wǎng)接口代替?zhèn)鹘y(tǒng)的串口,加快了數(shù)據(jù)傳輸?shù)乃俣,同時(shí)可以實(shí)現(xiàn)遠(yuǎn)程控制。由STM32F103ZET6片內(nèi)沒有集成以太網(wǎng)MAC和PHY功能,但其FSMC支持?jǐn)U展以太網(wǎng)控制芯片,本系統(tǒng)在FSMC上擴(kuò)展一片DAVICOM公司的DM9000A芯片對(duì)STM32F103ZET6進(jìn)行以太網(wǎng)擴(kuò)展。
STM32F103ZET6通過FSMC訪問DM9000A,對(duì)于STM32F103ZET6來說,DM9000A就是一個(gè)靜態(tài)存儲(chǔ)器外設(shè)。DM9000A采用16位模式,數(shù)據(jù)線SD0~SD15直接與FMSC數(shù)據(jù)線低16位FSMC_D0~FSMC_D15相連;DM9000A片選信號(hào)線nCS連接至FSMC片選信號(hào)FSMC_NE4,這樣DM9000A端口地址為0x6c000000;DM9000A的中斷信號(hào)線INT可直接連接至STM32F103ZET6的IO口,在程序中激活處理器IO口的中斷復(fù)用功能,STM32以中斷方式接收網(wǎng)卡數(shù)據(jù)。