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

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

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

圖3 系統軟件流程框圖Fig.3 System software flow diagram
底層固件庫模塊由ST公司提供,包括STM32F103系列處理器所有外設驅動和應用接口。硬件配置模塊完成時鐘(RCC)、GPIO、Systick、驅動器、串口和驅動等片內外設備的初始化。
本系統以STM32F103VET6作為控制核心,用MBI5042來驅動16×80LED點陣屏,采用C語言編程實現了乘客在AFC系統中能夠清楚的了解到地鐵的運行狀態。本系統以低廉的成本和邏輯性極強的程序實現單彩LED顯示屏在AFC運行狀態顯示系統控制功能,其功能還有很強的可擴展性,具有廣泛的應用前景。
[1]鄧先平,陳鳳敏.我國城市軌道交通AFC系統的現狀及發展[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處理器開發應用[M].北京:北京航空航天大學出版社,2008.
[3]談衛星,胡建人.基于STM32的全彩LED顯示屏系統的設計[M].杭州:電子科技大學,2011.
[4]任蓉,呂強.基于ARM的LED屏顯示控制系統的設計[J].現代物業,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顯示屏恒流驅動電路的設計[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系統[J].科技信息,2010(16):763-764.DENG Xiao-jian.Discuss the subway AFCsystem[J].Science and Technology Information,2010(16):763-764.
[7]李嘯驄,劉明明,張鵬.基于PLC的多指標非線性勵磁控制器的設計[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].火箭推進,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.