王英志 張 超 ,2 楊 佳
(1.長(zhǎng)春理工大學(xué) 電子信息工程學(xué)院,吉林 長(zhǎng)春 130022;2.上海品奇數(shù)碼科技有限公司,中國(guó) 上海 200070;3.吉林建筑大學(xué) 電氣與電子信息工程學(xué)院,吉林 長(zhǎng)春 130021;4.吉林省建筑電氣綜合節(jié)能重點(diǎn)實(shí)驗(yàn)室,吉林 長(zhǎng)春 130021)
在實(shí)際的電子研發(fā)設(shè)計(jì)、調(diào)試、以及現(xiàn)場(chǎng)維護(hù)工作中電子工程師需要一個(gè)完善,輕巧,功能復(fù)雜,操作簡(jiǎn)潔,可定制的通信調(diào)試儀器,既能使電子工程師滿足輕便,易連接的要求,也要滿足可任意定制,自我完善的功能。跟據(jù)市場(chǎng)調(diào)查,目前市場(chǎng)上還不存在一個(gè)完善快速的,不依賴與計(jì)算機(jī)的通訊調(diào)試系統(tǒng)。很多都是功能單一,例如:基于8051的系統(tǒng)串口調(diào)試儀,基于PIC單片機(jī)的CAN調(diào)試系統(tǒng)。本設(shè)計(jì)是一個(gè)基于STM32F103 ARM,以通信測(cè)試、顯示為主要功能的測(cè)試儀。
本測(cè)試儀硬件上有CAN,RS232,串行通訊接口,RS485,以及預(yù)留通訊協(xié)議模擬接口,通過軟件很容易實(shí)現(xiàn)一個(gè)多重通信于一體的超級(jí)通訊機(jī)制,而且板載最大容量為16GByte的NAND Flash芯片,最大可擴(kuò)展32GByte的SDCard多媒體卡片,滿足數(shù)據(jù)記錄時(shí)打大容量存儲(chǔ)需求,并且移植了FAT文件系統(tǒng),目前支持FAT,F(xiàn)AT16,F(xiàn)AT32文件系統(tǒng),可支持長(zhǎng)文件名,為了兼容嵌入式系統(tǒng)設(shè)計(jì)本儀器搭載了1MByte的SRAM存儲(chǔ),系統(tǒng)可直接訪問外部SRAM作為系統(tǒng)緩存,為圖形化設(shè)計(jì)提供了前提,同時(shí)增強(qiáng)了系統(tǒng)的擴(kuò)展性設(shè)計(jì),為系統(tǒng)的快速響應(yīng)提供了硬件保障。工作在ISM2.4G頻段的無線通訊模塊,極大的擴(kuò)展的系統(tǒng)的通訊能力。硬件框圖如圖1所示。
圖1 系統(tǒng)整體硬件概覽
ARM通過FSMC將NAND Flash、SRAM、以及圖形顯示驅(qū)動(dòng)器這些總線型設(shè)備連接到一起。在通訊接口設(shè)計(jì)上主要得利于STM32強(qiáng)大的接口能力,設(shè)計(jì)中選用的STM32F103ZET6型號(hào)的處理器具有3個(gè)支持 ISO7816的 USART,一個(gè) CAN(2.0B主動(dòng)),一個(gè)USB接口。CAN信號(hào)由ARM接口經(jīng)SN65HVD230總線驅(qū)動(dòng)器發(fā)送到CAN總線上去。
Cortex-M3內(nèi)核最多支持240個(gè)事件中斷,對(duì)于STM32F1系列的產(chǎn)品,供用戶使用的只有64個(gè)可配置中斷,這對(duì)于我的設(shè)計(jì)來說已經(jīng)綽綽有余。對(duì)于極高優(yōu)先級(jí)的任務(wù)觸發(fā),采用NMI不可屏蔽中斷,對(duì)于日常事務(wù),可以由軟中斷發(fā)出請(qǐng)求。另外Cortex-M3為了更好的支持嵌入式應(yīng)用,內(nèi)部硬件設(shè)置了一個(gè)32bit的滴答定時(shí)器,在以前,大多操作系統(tǒng)需要一個(gè)硬件定時(shí)器來產(chǎn)生操作系統(tǒng)需要的滴答中斷,作為整個(gè)系統(tǒng)的時(shí)基。例如,為多個(gè)任務(wù)許以不同數(shù)目的時(shí)間片,確保沒有一個(gè)任務(wù)能霸占系統(tǒng);或者把每個(gè)定時(shí)器周期的某個(gè)時(shí)間范圍賜予特定的任務(wù)等,還有操作系統(tǒng)提供的各種定時(shí)功能,都與這個(gè)滴答定時(shí)器有關(guān)。因此,需要一個(gè)定時(shí)器來產(chǎn)生周期性的中斷,而且最好還讓用戶程序不能隨意訪問它的寄存器,以維持操作系統(tǒng)“心跳”的節(jié)律。Cortex-M3處理器內(nèi)部包含了一個(gè)簡(jiǎn)單的定時(shí)器。因?yàn)樗械腃ortex-M3芯片都帶有這個(gè)定時(shí)器,軟件在不同Cortex-M3器件間的移植工作得以化簡(jiǎn)。該定時(shí)器的時(shí)鐘源可以是內(nèi)部時(shí)鐘(FCLK,Cortex-M3上的自由運(yùn)行時(shí)鐘),或者是外部時(shí)鐘(Cortex-M3處理器上的STCLK信號(hào))。程序框圖如圖2所示。
圖2 系統(tǒng)軟件整體框圖
隨著科技和電子工程的飛速發(fā)展,工程師面臨越來越多的工業(yè)調(diào)試,現(xiàn)場(chǎng)數(shù)據(jù)記錄,亦需要一種功能強(qiáng)大便于攜帶和互聯(lián)的通信測(cè)試設(shè)備。文中通過模塊化的設(shè)計(jì),創(chuàng)建了一種通用的通訊測(cè)試儀硬件結(jié)構(gòu)。簡(jiǎn)化了現(xiàn)場(chǎng)工程師的負(fù)擔(dān),在提高可靠性和性能的前提下,降低了成本,具有良好的應(yīng)用前景。本文描述的硬件和軟件設(shè)計(jì)還有很多不足之處。通訊接口部分增加靜電防護(hù),例如TVS、壓敏電阻等瞬態(tài)抑制器件。軟件健壯性還需要更多的時(shí)間來完善,有待現(xiàn)場(chǎng)問題的反饋。
[1]饒運(yùn)濤.現(xiàn)場(chǎng)總線CAN原理與應(yīng)用技術(shù)[M].2版.北京:北京航空航天大學(xué)出版社,2007.
[2]羅峰,孫澤昌.汽車CAN總線系統(tǒng)原理、設(shè)計(jì)與應(yīng)用[M].北京:電子工業(yè)出版社,.2010.
[3]GB/T19582.3-2008基于ModBus協(xié)議的工業(yè)自動(dòng)化網(wǎng)絡(luò)[S].
[4]ST 意法半導(dǎo)體.STM32F10xxx 參考手冊(cè)[S].
[5]宋巖.Cortex-M3權(quán)威指南[M].北京:北京航空航天大學(xué)出版社,2009.