<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設計應用 > 基于 ARM 和 Linux 通用工控平臺設計與實現(xiàn)

          基于 ARM 和 Linux 通用工控平臺設計與實現(xiàn)

          作者: 時間:2011-07-01 來源:網(wǎng)絡 收藏

          隨著技術的進步和市場競爭的加劇,開發(fā)人員通常需要在盡可能短的時間內出滿足用戶要求的測控系統(tǒng)。本文針對嵌入式系統(tǒng)的特點,以高性價比的32位嵌入式處理器AT91RM9200為硬件核心,搭建了硬件,在此上移植嵌入式操作系統(tǒng)和圖形界面開發(fā)環(huán)境MiniGUI。以此為基礎,可以方便地構建工程應用所需的絕大部分自動測控系統(tǒng)。其應用無論是在性能還是在成本方面都極具競爭力,這預示著本平臺具有較好的應用前景。

          本文引用地址:http://www.ex-cimer.com/article/161879.htm


          本工控平臺在硬件上,選擇ATMEL公司的AT91RM9200微處理器,并對其最小系統(tǒng)及外圍部件進行,以適應當前工控現(xiàn)場更加豐富的技術要求,并結合工業(yè)測控Modbus協(xié)議,擴展多種通信接口,滿足用戶的通信需求。與此同時,選擇嵌入式操作系統(tǒng)為測控軟件的開發(fā)提供了性能優(yōu)良軟件平臺。


          工控硬件平臺
          1 AT91RM9200微處理器最小系統(tǒng)構成
          最小系統(tǒng)是保證微處理器可靠工作所必需的基本電路。AT91RM9200微處理器的最小嵌入式系統(tǒng)由微處理器AT91RM9200、電源電路、晶體振蕩器電路、復位電路、JTAG接口、存儲器模塊、串行調試接口等電路組成。至此就具備了設計開發(fā)一款微處理器的通用工控平臺的硬件基礎。


          2 硬件平臺外圍接口電路
          利用AT91RM9200豐富的內置外設,可以方便的擴展外圍接口,如表2所示。


          3 硬件平臺用戶接口
          系統(tǒng)對外提供一個2*32針的標準3U插槽,共64針。3U插槽專門設計用于便攜式應用,特別適合作為一體化的移動控制器用于工業(yè)測控、產品線、運輸系統(tǒng)和交通控制系統(tǒng)的應用。


          4 硬件平臺結構
          根據(jù)上述對AT91RM9200最小系統(tǒng)及各外圍部件的設計,最終構成以AT91RM9200微處理器為硬件核心的通用工控硬件平臺,如圖1所示。

          圖1 通用工控平臺硬件結構

          通用工控軟件平臺設計
          1 硬件平臺搭建操作系統(tǒng)
          ARM-Linux開發(fā)環(huán)境搭建
          建立以嵌入式Linux為操作系統(tǒng)的工控平臺的開發(fā)環(huán)境和在Windows下安裝虛擬機Linux環(huán)境的軟件的開發(fā)環(huán)境,嵌入式Linux內核編譯、應用程序編譯都在該虛擬機完成。為了提高開發(fā)效率,以虛擬機中安裝的Linux為服務器,通過Windows客戶端使用Telnet或SSH登錄服務器,服務器可自由在客戶端中下載必需的開發(fā)工具及軟件,調試應用程序時,可以先在PC的Linux環(huán)境下進行模擬,然后通過DEBUG調試串口下載在目標平臺下。這種開發(fā)環(huán)境的優(yōu)點是只需要一臺計算機就可以真實的模擬Linux,具體過程如圖2所示。

          圖2 開發(fā)環(huán)境


          交叉編譯
          交叉編譯就是在一個平臺上生成另一個平臺上的可執(zhí)行代碼。所謂平臺,實際上包含兩個概念:體系結構及操作系統(tǒng)。根據(jù)上述建立的開發(fā)環(huán)境,目標平臺是基于ARM體系結構的運行嵌入式Linux操作系統(tǒng),而開發(fā)編譯環(huán)境是基于PC中虛擬機上的Linux操作系統(tǒng)。若在目標平臺上運行程序,則須在PC開發(fā)環(huán)境下對代碼進行交叉編譯以適應目標平臺。


          依據(jù)環(huán)境變量PREFIX,將編譯好的工具鏈安裝到指定文件夾就可以使用了。


          例如,修改arm-Linux-gcc-2.95.3的環(huán)境變量為:
          PATH=$PATH:$HOME/bin:$PREFIX/bin:/usr/local/arm/2.95.3/bin:/sbin:/usr/sbin:/usr/local/sbin,同時編寫hello.c程序進行驗證
          $arm-Linux-gcc hello.c -o hello-arm
          $file hello-arm
          hello-arm: ELF 32-bit LSB executable, ARM, version1 (ARM), for GNU/Linux 2.0.0, dynamically linked (uses shared libs),not stripped
          這表明生成的hello-arm可以在ARM平臺上運行,也證明交叉編譯工具鏈是有效并且可用的。


          Linux內核編譯下載
          具體步驟如下:


          (1) 解壓Linux-2.6.21-2009-04 -10.bz2:tar xjvf Linux-2.6.21 -2009-04-10.bz2;


          (2) 進入Linux-2.6.21目錄,內核編譯:make uImage;


          (3) 編譯完成后,通過SSH把uImage文件拷貝到Windows環(huán)境下;


          (4) 配置U-Boot環(huán)境變量;


          (5) 配置tftp服務器:運行Linux系統(tǒng)下的tftp服務器,復制Linux內核的uImage文件到tftp下載工作目錄下,啟動tftp服務,確保PC和AT91RM9200接入同一網(wǎng)段;


          (6) 下載內核映像文件,并在U-Boot提示符下擦除Flash;


          (7) 下載內核映像文件到Flash中;


          Linux文件系統(tǒng)
          軟件平臺使用cramfs文件系統(tǒng),其特點是:系統(tǒng)訪問某個位置的數(shù)據(jù)時,立即計算出該數(shù)據(jù)在cramfs中的位置,解壓到RAM中,然后通過內存訪問來獲取數(shù)據(jù),cramfs中的解壓縮之后的內存中的數(shù)據(jù)存放位置都是由cramfs文件系統(tǒng)本身來管理,用戶并不需要過程,因此增加了透明度,給開發(fā)人員節(jié)約了時間。


          2 Linux操作系統(tǒng)下設備驅動開發(fā)
          Linux上的設備驅動非常豐富,支持各種主流硬件設備和最新的硬件技術。設備驅動程序在Linux內核中,是一個個獨立的“黑盒子”,使某個特定的硬件響應一個定義良好的內部編程接口,同時完全隱藏設備的工作細節(jié)。通過一組標準化的調用,把這些調用映射到設備特定的操作上,則是設備驅動程序的任務。而在Linux系統(tǒng)里,每一個設備都被看作一個文件,打開的設備在內核中由一個File結構標志,內核使用File_operations結構訪問驅動程序的函數(shù)。每個設備與一組標準函數(shù)集關聯(lián)。


          3 Linux操作系統(tǒng)下應用程序開發(fā)
          采取在PC上編譯應用程序,運行測試通過后,再通過網(wǎng)絡或串口等方法下載到目標平臺/usr目錄下,對于較小的程序,使用串口下載比較方便,具體的步驟為


          (1) PC模擬環(huán)境下開發(fā)程序,交叉編譯;


          (2) 待ARM平臺下Linux正常運行后,進入usr目錄,然后選擇下載的程序;


          (3) 下載完成后,chmod +x filenam修改文件屬性為可執(zhí)行命令;


          (4) 執(zhí)行剛下載的文件命令為./filename。

          通用工控平臺人機交互通信機制
          嵌入式GUI為嵌入式系統(tǒng)提供了一種應用于特殊場合的人機交互接口。新一代嵌入式GUI的主要特征有:以用戶為中心、多通道、智能化、高帶寬。嵌入式Linux 系統(tǒng)中,幾乎所有的GUI 都建立在FrameBuffer設備上。


          MiniGUI 是一個根據(jù)嵌入式系統(tǒng)應用特點量身定做的完整的圖形支持系統(tǒng)。將現(xiàn)代窗口和圖形技術帶入到嵌入式設備,是一個非常適合于嵌入式設備的高效、可靠、可定制、小巧靈活的圖形用戶界面支持系統(tǒng),主要優(yōu)點可總結為支持多種嵌入式操作系統(tǒng),具備優(yōu)秀的可移植性;可伸縮的系統(tǒng)架構,易于擴展;功能豐富,可靈活剪裁;得到小體積高性能間的最佳平衡且具有廣泛的應用領域。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();