摘要:文中針對工業(yè)控制器的發(fā)展需求,,主要面向工業(yè)控制領(lǐng)域構(gòu)建和開發(fā)基于瑞薩單片機(jī)和μC/OS-II操作系統(tǒng)的嵌入式控制器,。在分析瑞薩單片機(jī)的基礎(chǔ)上,自主開發(fā)以瑞薩公司的SH7137芯片為核心的嵌入式控制器硬件平臺(tái),。本嵌入式控制器采用核心板+底板的方式設(shè)計(jì),,硬件設(shè)計(jì)上以SH7137微處理器作為控制器的核心,并設(shè)計(jì)了電源電路,、RS232,、RS485串行接口和JTAG接口電路、人機(jī)界面電路以及輸入輸出模塊,。
關(guān)鍵詞:嵌入式,;控制器;瑞薩,;嵌入式操作系統(tǒng),;μC/OS-II
現(xiàn)今,工業(yè)控制設(shè)備主要分為兩種:工業(yè)控制機(jī)和可編程控制器(PLC),。工業(yè)控制機(jī)是由通用的微機(jī)推廣應(yīng)用而發(fā)展起來的,。目前,可編程控制器正朝著兩個(gè)方向發(fā)展。一是朝著小型,、簡易,、價(jià)格低廉的方向發(fā)展,主要用于單機(jī)控制和規(guī)模比較小的自動(dòng)化生產(chǎn)線控制,。二是朝著大型,、高速、多功能和多層分布式全自動(dòng)化方向發(fā)展,。近幾年來,,不論是工業(yè)控制機(jī)技術(shù)還是可編程控制器技術(shù)向嵌入式領(lǐng)域滲透的步伐逐漸加大,嵌入式的工業(yè)控制器以極小的體積,、極低的功耗散熱和軟硬件的可裁剪性,,而受到用戶的歡迎,因而具有巨大的應(yīng)用潛力,。
1 嵌入式控制器硬件設(shè)計(jì)
本論文所做的基于瑞薩SH7137的嵌入式控制器的設(shè)計(jì),,采用了核心模板(System On Module)+底板的設(shè)計(jì)方式。在設(shè)計(jì)上考慮在工業(yè)控制器的設(shè)計(jì)中既要保留傳統(tǒng)的控制器特點(diǎn),,又要在設(shè)計(jì)中有所開發(fā)自身控制器的特色,,為此,我們在設(shè)計(jì)中采用了核心板模塊化的設(shè)計(jì)思想,,底板多功能集成,。而且核心模塊接口定義統(tǒng)一,可以根據(jù)控制MCU的功能做出不同的核心模塊,,例如8位核心模塊,、16位控制模塊、32位控制模塊,。本控制器采用瑞薩公司生產(chǎn)的32位單位機(jī),,基于SH2核的SH7137單片機(jī)作為核心控制芯片,實(shí)現(xiàn)32位控制模塊,。核心模塊是整個(gè)控制器的核心部分,,由以單片機(jī)SH7137核心,,加上RTC實(shí)時(shí)電路,、PC電路和JTAG調(diào)試電路構(gòu)成一個(gè)小系統(tǒng),通過總線擴(kuò)展,、IO外接等功能模塊構(gòu)成了以單片機(jī)為基礎(chǔ)的復(fù)雜工業(yè)控制系統(tǒng)的核心模塊,。核心模塊的組成框圖如圖1所示。
嵌入式控制器的底板主要集成了人機(jī)界面控制(HMI),、通訊模塊,、外部總線接口以及輸入輸出(I/O)模塊。底板主要實(shí)現(xiàn)的功能是根據(jù)核心模塊處理好的信號通過底板的輸出模塊或者人機(jī)界面的顯示屏輸出,或者根據(jù)外部輸入信號通過底板的輸入模塊或者人機(jī)界面的按鍵輸入到核心模塊進(jìn)行運(yùn)算然后輸出,。底板的組成框圖如圖2所示,。
2 μC/OS-II的移植
移植就是使一個(gè)實(shí)時(shí)內(nèi)核能在某個(gè)微處理器或微控制器上運(yùn)行。為了便于內(nèi)核的移植,,μC/OS-II的大部分代碼用C語言編寫,。移植工作主要集中在os_cpu.h,os_cpu_C.C,、os_cpu_a.a(chǎn)sm三個(gè)文件上,。os_cpu.h主要涉及到與編譯器相關(guān)的數(shù)據(jù)類型的定義、堆棧類型定義,、兩個(gè)宏定義和幾個(gè)函數(shù)說明,。os_cpu_C.C包含與移植有關(guān)的10個(gè)C函數(shù),除第一個(gè)任務(wù)堆棧初始化函數(shù)外的9個(gè)函數(shù),,需要聲明,,由系統(tǒng)函數(shù)調(diào)用,方便用戶可以在操作系統(tǒng)中加入自己需要的功能,。os_cpu_a.a(chǎn)sm包含與移植有關(guān)的4個(gè)匯編語言函數(shù):OSStartHighRdy(),、OSCtxSw ()、OSIntCtxSw (),、STickISR (),。
控制器采用瑞薩單片機(jī)SH7137,具有SH2的內(nèi)核,,支持集成開發(fā)環(huán)境HEW,,可以生成重入代碼,有足夠的寄存器來關(guān),、開中斷,,指令可以對堆棧進(jìn)行操作,因此,,μC/OS-II可以移植到SH7137控制器上,。
3 系統(tǒng)程序設(shè)計(jì)
實(shí)現(xiàn)了嵌入式控制器系統(tǒng)的硬件設(shè)計(jì)和μC/OS-II操作系統(tǒng)的移植,但這只是個(gè)嵌入式控制器的系統(tǒng)平臺(tái),。在實(shí)際應(yīng)用中還必須對相應(yīng)外圍功能模塊的操作達(dá)到控制目的,。針對外圍功能模塊編寫一個(gè)接口函數(shù),就可以在編寫應(yīng)用軟件時(shí)調(diào)用這些函數(shù)來傳遞數(shù)據(jù),,另外,,能夠針對具體應(yīng)用編寫并調(diào)試一些具體有相對獨(dú)立性的、通用性的函數(shù),,將大大簡化編程結(jié)構(gòu),,并使程序模塊化,,形成一個(gè)統(tǒng)一的接口的函數(shù)庫。如圖3所示,。
在整個(gè)嵌入式控制器的設(shè)計(jì)上,,硬件設(shè)計(jì),為整個(gè)控制器最底層,,其中包括SOM核心板,、底板以及輸入輸入的IO模塊,操作系統(tǒng)的處于控制器的第二層,,負(fù)責(zé)與處理底層硬件的接口,,同時(shí)為處理上層應(yīng)用程序提供接口,本控制器移植的是開源的嵌入式操作系統(tǒng):μC/OS-II,。本系統(tǒng)的第三層為應(yīng)用開發(fā)層,,主要是實(shí)現(xiàn)針對用戶所要求處理問題的應(yīng)用程序,這一層主要面向用戶,,其中應(yīng)用開層包含了一個(gè)函數(shù)驅(qū)動(dòng)庫,,這是這個(gè)模塊函數(shù)接口,為二次開發(fā)人員提供的,,方便其調(diào)用系統(tǒng)的模塊函數(shù)接口,,同時(shí)也方便用戶調(diào)用,便于開發(fā),,減少用戶利用本控制器開發(fā)產(chǎn)品的周期,。
硬件驅(qū)動(dòng)庫主要集成了人機(jī)界面的控制、RS232串口通信訊模塊,、RS485通信模塊,、CAN接口通信模塊以及IO輸入輸出等模塊的數(shù)據(jù)處理。硬件驅(qū)動(dòng)庫具有統(tǒng)一的數(shù)據(jù)定義和統(tǒng)一的函數(shù)接口,。
4 結(jié)束語
本文基于SH7137嵌人式控制器采用核心板+底板的開發(fā)模式,,實(shí)現(xiàn)功能模塊化、可配置化的功能,,具有通用性,、可編程、良好的人機(jī)界面等特點(diǎn),。整個(gè)控制系統(tǒng)可以根據(jù)使用的場合和對象進(jìn)行模塊配置,,為其帶來靈活多變、成本低廉等優(yōu)勢,。