趙啟文,李 欣,孫 劍
(哈爾濱理工大學(xué) 測控技術(shù)與通信工程學(xué)院,黑龍江 哈爾濱 150010)
STM32系列處理器是專門由意法半導(dǎo)體公司(ST)生產(chǎn)、基于ARM公司Cortex-M3內(nèi)核的MCU,專門為低成本、低功耗、高性能的嵌入式應(yīng)用領(lǐng)域而專門設(shè)計(jì)的,具有豐富的性能和出眾的片上外設(shè)、程度復(fù)雜度低等優(yōu)點(diǎn),例如工業(yè)控制系統(tǒng)、汽車控制系統(tǒng)和微控制系統(tǒng)等。單彩LED在AFC運(yùn)行狀態(tài)顯示中以通信和控制的方式實(shí)現(xiàn)軌道交通售票、檢票、計(jì)費(fèi)、收費(fèi)、統(tǒng)計(jì)、清分、管理等全過程的自動處理為目標(biāo),對地鐵運(yùn)營公司而言,提高了地鐵系統(tǒng)的運(yùn)行效率和效益;對乘客而言,則避免了排隊(duì)購票,“找零”、人工檢票的繁瑣,出入地鐵更加快捷方便。AFC系統(tǒng)是軌道交通最基本、最重要的系統(tǒng)之一,也是國家重點(diǎn)要解決的3個(gè)國產(chǎn)化系統(tǒng)之一[1]。
該系統(tǒng)利用Cortex-M3內(nèi)核芯片STM32F103VET6微處理器為核心,將上位機(jī)、控制模塊、LED顯示屏和AFC系統(tǒng)有機(jī)的結(jié)合到一起。系統(tǒng)總體框圖如圖1所示。系統(tǒng)工作時(shí),主要利用上位機(jī)編輯顯示信息,通過以太網(wǎng)接口將信息傳輸給微處理器,微處理器接收到數(shù)據(jù)信息后寫入FLASH存儲器。在顯示時(shí),微處理器根據(jù)AFC系統(tǒng)中乘客的需求讀取FLASH中的數(shù)據(jù),通過總線將數(shù)據(jù)以并行方式發(fā)送給驅(qū)動電路,驅(qū)動電路完成對LED顯示屏的高速掃描刷新,將處理后的數(shù)據(jù)傳輸?shù)絃ED顯示屏中顯示,從而完成乘客在AFC系統(tǒng)中的狀態(tài)顯示。

圖1 系統(tǒng)總體框圖Fig.1 Bock diagram of the whole system
本系統(tǒng)選用意法半導(dǎo)體ST公司推出的32位微處理器STM32F103VET6作為主控芯片,STM32F103VET6屬于STM32F103增強(qiáng)型系列處理器,使用了先進(jìn)架構(gòu)的ARM Cortex-M3內(nèi)核,具有更多片內(nèi)RAM和外設(shè),具體特性如下[2]:
1)采用了基于哈弗(Harvard)架構(gòu)的3級流水線的內(nèi)核Cortex-M3,集成了分支預(yù)測、具有單周期乘法、硬件除法等強(qiáng)大的特性,最高工作頻率可達(dá)72 MHz,運(yùn)算速度高達(dá)1.25 DMips /MHz,功耗僅為 0.19 mW/MHz。
2)Cortex-M3核內(nèi)部寄存器包括:13個(gè)通用 32位寄存器、程序計(jì)數(shù)器PC、程序狀態(tài)寄存器xPSR、鏈接寄存器LR和2個(gè)堆棧指針寄存器。
3)內(nèi)置高速存儲器,片內(nèi)Flash容量512 k和SRAM容量64 k。
4)多達(dá)11個(gè)定時(shí)器,包括4個(gè)通用16位定時(shí)器、2個(gè)16位帶死區(qū)控制的PWM定時(shí)器、系統(tǒng)時(shí)間定時(shí)器、2個(gè)看門狗定時(shí)器、2個(gè)用于驅(qū)動DAC的16位基本定時(shí)器。
5)多達(dá) 80個(gè)豐富的快速 I/O口,所有 I/O口都可以映射到16個(gè)外部中斷;幾乎所有端口均可以容忍5 V信號。
6)標(biāo)準(zhǔn)和先進(jìn)的通信接口:多達(dá)2個(gè)I2C接口、3個(gè)SPI接口、5個(gè)USART接口、一個(gè)USB2.0全速接口和一個(gè)CAN接口、SDIO接口。
7)包含了3個(gè)12位的 ADC和2個(gè) 12位DAC。
STM32F103VET6豐富的資源和出色的性能使得本身幾乎不需要擴(kuò)展外圍電路就能滿足設(shè)計(jì)的要求,使硬件設(shè)計(jì)大大簡化。執(zhí)行速度和內(nèi)存容量完全滿足主控模塊的多任務(wù)實(shí)時(shí)應(yīng)用。主控模塊設(shè)計(jì)使用STM32F103VET6的CAN、USB、USART等通信接口,CAN用于功率模塊通信,USB用于筆記本現(xiàn)場配置電源系統(tǒng)參數(shù),USART用于232通信 (上位機(jī)通信)。主控模塊人機(jī)界面中的LCD、按鍵、LED指示、蜂鳴器以及電源開關(guān),均通過GPIO連接。
2.2.1 SRAM接口電路
本系統(tǒng)中SRAM選用的是HY62U8200B。它是一種具有靜止存取功能的內(nèi)存,不需要刷新電路即能保存它內(nèi)部存儲數(shù)據(jù),并且內(nèi)置64 k字節(jié),它可以以字節(jié)、半字(16位)或全字(32位)訪問。控制器中是用兩片HY62U8200B并聯(lián)構(gòu)建32位SRAM存儲器系統(tǒng),一片為低16位,另一片為高16位,使數(shù)據(jù)總線的寬度達(dá)到32位,總?cè)萘窟_(dá)到64 MB,將地址空間映射到STM32F103VET6上。SRAM的起始地址[3]為0x20000000。
2.2.2 Flash存儲器接口電路
Flash是非易失存儲器,又叫閃存,具有大容量、低功耗、擦寫速度快等特點(diǎn)。任何Flash期間的寫入操作只能在空或已擦除的單元內(nèi)進(jìn)行,所以大多數(shù)情況下,在進(jìn)行寫入操作之前必須先執(zhí)行擦除。現(xiàn)在市場上兩種主要的非易失閃存技術(shù) Nor和 Nand Flash。
Nor flash的特點(diǎn)是芯片內(nèi)部執(zhí)行,應(yīng)用程序可直接在flash閃存內(nèi)運(yùn)行,帶有SRAM接口,不用再把代碼讀到系統(tǒng)RAM中,同時(shí)還具有容量小、傳輸效率高,但是很低的寫入和擦除速度大大影響了它的性能。NAND flash結(jié)構(gòu)具有極高的單元密度,可以達(dá)到高存儲密度,并且寫入和擦除的速度非常很快,但是應(yīng)用NAND的困難在于NAND flash的管理需要特殊的系統(tǒng)接口。綜合上述的分析,本系統(tǒng)采用了Nor flash存儲Boot代碼,NAND flash存儲應(yīng)用程序代碼和操作系統(tǒng)[4]。
LED模塊是連接控制器和AFC系統(tǒng)的主要組成部分。系統(tǒng)采用16×80表貼點(diǎn)陣單元,利用像素單元組成的平面式顯示屏,內(nèi)嵌16位恒流LED屏驅(qū)動IC—MBI5042,具有可加強(qiáng)脈波寬度調(diào)變的功能,而且可藉由S-PWM技術(shù)以高性價(jià)比、高信賴性的優(yōu)勢來提升LED屏的畫質(zhì),減少畫面的閃爍。為什么會將MBI5042應(yīng)用于LED面板設(shè)計(jì)上,這是因?yàn)橥ǖ篱g的電流差異小于±1.5%,而芯片間的一般電流差異小于±3.0%;并且具有不受負(fù)載端電壓影響的電流輸出特性[5]。驅(qū)動電路完成對LED顯示屏的高速掃描刷新,刷新頻率為≥120幀/S;將處理后的數(shù)據(jù)傳輸?shù)絃ED顯示屏中顯示,可視角度可達(dá) ±65°。LED模塊的工作電壓為5 V,而STM32F103VET6的輸出電壓為3.3 V。
AFC(自動售檢票系統(tǒng))是基于計(jì)算機(jī)網(wǎng)絡(luò)、通信、自動控制等技術(shù),實(shí)現(xiàn)軌道交通售票、檢票、計(jì)費(fèi)、收費(fèi)、統(tǒng)計(jì)、清分、管理等全過程的自動化系統(tǒng),共分為車票、車站終端設(shè)備(SLE)、車站計(jì)算機(jī)系統(tǒng)(SC)、線路中央計(jì)算機(jī)系統(tǒng)(LCC)、清分系統(tǒng)(ACC)5個(gè)層次,如圖2所示。

圖2 AFC系統(tǒng)層次結(jié)構(gòu)Fig.2 AFCsystem of hierarchy
AFC系統(tǒng)的五層架構(gòu)主要依據(jù)功能劃分,通過分層,AFC系統(tǒng)的功能結(jié)構(gòu)更加清晰,各層間通過以太網(wǎng)連接,實(shí)現(xiàn)數(shù)據(jù)的采集和處理。層次結(jié)構(gòu)是按照全封閉的運(yùn)行方式,以計(jì)程收費(fèi)模式為基礎(chǔ),采用非接觸式IC卡為車票介質(zhì)的組成原則,根據(jù)各層次設(shè)備和子系統(tǒng)各自的功能、管理職能和所處的位置進(jìn)行劃分的。目前確定的五層結(jié)構(gòu)型式,是根據(jù)我國國情和城市發(fā)展現(xiàn)狀,綜合考慮了軌道交通建設(shè)的特點(diǎn)(如線路多而復(fù)雜、建設(shè)周期長、多個(gè)業(yè)主單位等情況)而設(shè)置的,具有一定的可伸縮性。對各層次必須實(shí)現(xiàn)的功能和要求做出如下規(guī)定[6-8]:
第一層——車票是乘客所持的車費(fèi)支付媒介和進(jìn)、出站的交易媒介,規(guī)定了儲值卡和單程票二種類型的物理特性、電氣特性、應(yīng)用文件組織以及安全機(jī)制等技術(shù)要求;
第二層——車站終端設(shè)備(SLE)安裝在各車站的站廳,直接為乘客提供售檢票服務(wù)的設(shè)備(如:自動售票機(jī)TVM、票房售票機(jī)BOM、自動檢票機(jī)AG),規(guī)定了車站終端設(shè)備及其運(yùn)營管理的技術(shù)要求;
第三層——車站計(jì)算機(jī)系統(tǒng)(SC),其主要功能是對第二層車站終端設(shè)備進(jìn)行狀態(tài)監(jiān)控、以及模式管理、時(shí)鐘管理、運(yùn)營結(jié)束處理,規(guī)定了系統(tǒng)的數(shù)據(jù)管理、車票票務(wù)管理及系統(tǒng)維護(hù)管理的技術(shù)要求;
第四層——線路中央計(jì)算機(jī)系統(tǒng)(LCC),其主要功能是收集本線路AFC系統(tǒng)產(chǎn)生的交易和審計(jì)數(shù)據(jù),并將此數(shù)據(jù)傳送給城市軌道交通清分系統(tǒng),以及與其進(jìn)行對帳,規(guī)定了對該線路的車票票務(wù)管理、運(yùn)營管理及系統(tǒng)維護(hù)的技術(shù)要求;
第五層——清分系統(tǒng)(ACC),其主要功能是統(tǒng)一城市軌道交通AFC系統(tǒng)內(nèi)部的各種運(yùn)行參數(shù)、收集城市軌道交通AFC系統(tǒng)產(chǎn)生的交易和審計(jì)數(shù)據(jù)并進(jìn)行數(shù)據(jù)清分和對帳、同時(shí)負(fù)責(zé)連接城市軌道交通AFC系統(tǒng)和城市一卡通清分系統(tǒng),規(guī)定了對車票管理、票務(wù)管理、運(yùn)營管理、交易數(shù)據(jù)和密鑰管理、系統(tǒng)維護(hù)管理的技術(shù)要求。
STM32系列微控制器采用C語言進(jìn)行程序設(shè)計(jì),開發(fā)工具為Keil MDK,開發(fā)環(huán)境為uVision IDE。主程序流程圖如圖3所示。

圖3 系統(tǒng)軟件流程框圖Fig.3 System software flow diagram
底層固件庫模塊由ST公司提供,包括STM32F103系列處理器所有外設(shè)驅(qū)動和應(yīng)用接口。硬件配置模塊完成時(shí)鐘(RCC)、GPIO、Systick、驅(qū)動器、串口和驅(qū)動等片內(nèi)外設(shè)備的初始化。
本系統(tǒng)以STM32F103VET6作為控制核心,用MBI5042來驅(qū)動16×80LED點(diǎn)陣屏,采用C語言編程實(shí)現(xiàn)了乘客在AFC系統(tǒng)中能夠清楚的了解到地鐵的運(yùn)行狀態(tài)。本系統(tǒng)以低廉的成本和邏輯性極強(qiáng)的程序?qū)崿F(xiàn)單彩LED顯示屏在AFC運(yùn)行狀態(tài)顯示系統(tǒng)控制功能,其功能還有很強(qiáng)的可擴(kuò)展性,具有廣泛的應(yīng)用前景。
[1]鄧先平,陳鳳敏.我國城市軌道交通AFC系統(tǒng)的現(xiàn)狀及發(fā)展[J].都市快軌交通,2005(3):18-20.DENG Xian-ping,CHEN Feng-min.Urban rail transit AFC system present situation and the development[J].Urban Rapid Rail Transit,2005(3):18-20.
[2]李寧.基于MDK的STM32處理器開發(fā)應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2008.
[3]談衛(wèi)星,胡建人.基于STM32的全彩LED顯示屏系統(tǒng)的設(shè)計(jì)[M].杭州:電子科技大學(xué),2011.
[4]任蓉,呂強(qiáng).基于ARM的LED屏顯示控制系統(tǒng)的設(shè)計(jì)[J].現(xiàn)代物業(yè),2012(3):42-44.REN Rong,LV Qiang.Design of LED screen display control system[J].Modern Property Based on ARM,2012(3):42-44.
[5]堵國梁,史小軍,朱為.LED顯示屏恒流驅(qū)動電路的設(shè)計(jì)[J].電子器件,2001(3):253-256.DU Guo-liang,SHI Xiao-jun,ZHU Wei.Design of constant current drive circuit LED display[J].Electronic Device,2001(3):253-256.
[6]鄧小健.淺談地鐵AFC系統(tǒng)[J].科技信息,2010(16):763-764.DENG Xiao-jian.Discuss the subway AFCsystem[J].Science and Technology Information,2010(16):763-764.
[7]李嘯驄,劉明明,張鵬.基于PLC的多指標(biāo)非線性勵(lì)磁控制器的設(shè)計(jì)[J].陜西電力,2010(5):7-10.LI Xiao-cong,LIU Ming-ming,ZHANG Peng.Design of multi-index non-linear excitation controller based on PLC[J].Shaanxi Electric Power,2010(5):7-10.
[8]李鵬,來新泉.基于雙機(jī)熱備的航天發(fā)動機(jī)控制器設(shè)計(jì)[J].火箭推進(jìn),2010(3):58-62.LI Peng,LAI Xin-quan.Design of dual-processor hot standby aerospace engine controller[J].Journal of Rocket Propulsion,2010(3):58-62.