基于LINUX和CAN總線的工業(yè)嵌入式控制系統(tǒng)研究
4基于CAN總線工業(yè)嵌入式控制系統(tǒng)的設計
基于CAN總線的工業(yè)嵌入式控制系統(tǒng)的整個模塊如圖2所示。
總線控制器SJA10008000H~801FH將設計好的PC/104模塊作為一獨立的控制系統(tǒng)插入專用的應用板,同樣的模塊可以有若干個,以層疊的方式嵌入同一塊應用板,既可以完成類似的功能,也可以完成完全不同的其它功能(如數據采集轉換等)。PC/104提供了一個非常緊湊的與標準臺式PC或PC/AT結構完全兼容的層疊棧接模塊。將臺式PC機的全部功能重新包裝于一個格式標準統(tǒng)一、穩(wěn)定可靠、靈活且符合嵌入式系統(tǒng)尺寸的標準模塊中,與PC兼容,用于嵌入式系統(tǒng)設計以替代傳統(tǒng)的嵌入式微處理器十分適宜。通過PC/104總線,微處理器能夠非常方便地和系統(tǒng)通信。為滿足大量數據交換的要求,特增加了8kb的RAM以擴展內存。為了增加局部總線的驅動能力,在微處理器和PC104總線之間增加數據/地址驅動電路。為了系統(tǒng)的擴充能力,增加了地址譯碼電路,譯出的地址0300H~031FH以備將來的I/O外設使用。同時為了增加有效的傳輸距離,采用了Philips公司的高性能CAN總線收發(fā)器82C250,它具有高速性(最高可達1Mb/s)、能抗瞬間干擾、保護總線、支持多達110個節(jié)點的連接等優(yōu)點。另外,設計了CAN地址選擇電路,以確保CAN總線節(jié)點在整個系統(tǒng)中的唯一地址。
5Linux嵌入式應用編程簡介
5.1采嵌入式系統(tǒng)一般都沒有編輯和編譯工具,所以需要先在開發(fā)系統(tǒng)中完成程序的編輯、編譯和仿真運行及修改工作,形成可執(zhí)行文件,再轉到運行系統(tǒng)(即嵌入式系統(tǒng))上執(zhí)行。
以Linux嵌入式為支撐系統(tǒng)開發(fā)系統(tǒng)上的應用程序屬于事件驅動編程,也就是“消息隊列”和“消息循環(huán)”。有2個涉及消息的函數十分常用:GetMessage()和DispatchMessage()。一般還需要common.h。
其編程與VC++編程所用消息處理函數極為相似,下面將介紹一些簡單而又基本的GUI元素:主窗口、靜態(tài)文本框、編輯框、按鈕、進程條、對話框以及一些基本的圖形操作
一些常用的消息處理函數如下:
輸出文本MEG_PAINT(使用TextOut()函數)
設置像素點顏色SetPixel()
畫線條LineTo()
畫矩形Rectangle()
畫圓形Circle()
設置畫筆顏色SetBrushColor()
創(chuàng)建窗口MES_CREATE
創(chuàng)建主窗口CreateMainWindow(CreateInfo)
此外,大多數控件都可以使用CreateWindow()函數創(chuàng)建。
5.2RTOS開發(fā)平臺
通用計算機具有完善的操作系統(tǒng)和應用程序接口(API),是計算機基本的、不可分離的一部分,應用程序的開發(fā)以及完成后的軟件都在平臺上運行,但一般不是實時的。嵌入式系統(tǒng)則不同,應用程序可以沒有操作系統(tǒng)而直接在芯片上運行,但是為了合理調度多任務、利用系統(tǒng)資源、系統(tǒng)函數以及專家?guī)斓慕涌冢脩舯仨氉孕羞x配RTOS平臺,這樣才能保證程序執(zhí)行的實時性,穩(wěn)定性和可靠性,并減少開發(fā)時間,保證軟件質量。
實時操作系統(tǒng)是一段在嵌入式系統(tǒng)啟動后首先執(zhí)行的背景程序,用戶的應用程序是運行于RTOS之上的各個任務,RTOS根據各個任務的要求,進行資源(包括存儲器、外設等)管理、消息管理、任務調度、異常處理等工作。在RTOS支持的系統(tǒng)中,每個任務均有一個優(yōu)先級,RTOS根據各個任務的優(yōu)先級,動態(tài)地切換各個任務,保證對實時性的要求。在編寫程序時,可以分別編寫各個任務,從而減少了程序編寫的工作量,而且減小了出錯的可能,保證最終程序具有高可靠性。RTOS體現了一種新的系統(tǒng)設計思想和一個開放的軟件框架,用戶可以在不大量變動系統(tǒng)其它任務的情況下增加或去掉一個任務;一個項目開發(fā)的過程中,可以有多個工程師同時進行系統(tǒng)的軟件開發(fā),每個人之間只要制定好規(guī)程和協(xié)議即可,既縮短了開發(fā)時間,又降低了最終軟件產品對于具體某個開發(fā)者個人的依賴性。為RTOS設計的成熟和通用的任務可以以庫函數的形式供其他人繼續(xù)利用,與C++語言的設計思想一致。
6結束語
CAN總線技術在電廠、變電站、電力系統(tǒng)中有廣闊的應用前景,能在可靠性、高精度、經濟性等多方面獲得最大的效益;以工業(yè)標準PC/104為代表的嵌入式控制系統(tǒng)具有突出的優(yōu)點,十分適合于工業(yè)環(huán)境的要求。隨著微處理器和單片機的發(fā)展,工業(yè)控制技術中使用嵌入式實時操作系統(tǒng)已經成為一個特點。嵌入式操作系統(tǒng)已經經歷了一個階段的發(fā)展,它在工業(yè)控制中的應用必將越來越廣泛。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論