《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于μC/OS-II的Modbus協議測試系統
基于μC/OS-II的Modbus協議測試系統
維庫電子
摘要: 基于μC/OS-II的Modbus協議測試系統, 1 引言  Modbus 協議最初由Modicon 公司開發出來,1979 年末該公司成為施耐德自動化 (Schneider Automation)部門的一部分。現在Modbus 協議已經是工業領域全球最流行的協 議。Modbus 協議為應用層報文傳輸協議
Abstract:
Key words :

 1 引言

  Modbus 協議最初由Modicon 公司開發出來,1979 年末該公司成為施耐德自動化 (Schneider Automation)部門的一部分。現在Modbus 協議已經是工業領域全球最流行的協 議。Modbus 協議為應用層報文傳輸協議,僅定義了通訊消息結構,一個Modbus 信息幀包 括從機地址、功能碼、數據區和數據校驗碼。Modbus 協議支持傳統的RS-232、RS-422、 RS-485 和以太網設備。許多工業設備,包括PLC、DCS、智能儀表等都在使用Modbus 協 議作為它們之間的通訊標準。 為適應當前開發Modbus 設備過程中協議測試的需求以及Modbus 設備在線測試的需 要,本文提出并實現了基于ARM 嵌入式處理器、μC/OS 實時操作系統的Modbus 協議測試 系統,并給出了系統的軟硬件設計。

  2 系統結構

  Modbus 協議測試系統硬件設計采用了工業級嵌入式處理器HMS30C7202 。 HMS30C7202 是Hynix 公司的高性能、低功耗32 位RISC 微處理器,它由ARM720T 內核 和其他一些外圍接口電路組成,工作頻率為70MHz,支持8KB 的數據與指令Cache、2KB 的SRAM、支持段式和頁式存儲的MMU、寫緩沖器及AMBA 接口。

  HMS307202 采用0.25μm 低功耗CMOS 工藝,片內電壓2.5V,I/O 支持3.3V 電壓,采用了256 管腳QFP/BGA 封裝。 HMS30C7202 片上資源十分豐富,具有極高的集成度,非常適用于嵌入式系統應用,主要 應用于PDA、智能電話、個人音頻設備等場合。 測試系統提供了RS-232 和以太網接口,用于實現和被測Modbus 設備的聯接。系統 RS-232 接口芯片采用MAX3232。在嵌入式系統內部,將MAX3232 的接收輸出端與 HMS30C7202 的通用IO 端口E24 相連。工作時,使用串行電纜將測試系統RS-232 串口和 被測設備的串口聯接起來,在測試系統中通過運行測試軟件實現對Modbus 協議的測試。系 統結構如圖1 所示。

  測試系統的系統軟件采用μC/OS-II 實時操作系統,μC/OS-II 的前身是μC/OS,由美國 人Jean Labrosse 編寫。μC/OS-II 是一種可剝奪型的實時多任務操作系統,其特點是可固化,可裁減,移植性好。μC/OS-II 功能強大,最多支持56 個用戶任務,支持信號量、消息郵箱、 消息隊列等多種常用的進程間通信機制。

  現已成功移植到幾乎所有知名的MCU 上,其穩定 性與可靠性已經得到檢驗[1]。 μC/OS-II 是一個可剝奪型搶占式實時多任務內核。μC/OS-II 大部分代碼是用ANSI C 語 言編寫的,僅包含一小部分匯編語言代碼,使之可以提供給不同架構的微處理器使用。至今, 從8 位到64 位,μC/OS-II 已經在40 多種不同架構的微處理器上使用。

  世界上已經有成千上 萬的人在各個領域中使用μC/OS,這些領域包括:照相機行業、航空業、醫療器械、網絡設 備、自動提款機以及工業機器人等。 由于μC/OS-II 僅僅是一個實時多任務的內核,移植μC/OS-II 到處理器平臺以后,離實 際的應用還有一段距離。因此必須對μC/OS-II 進行必要的擴充,才能建立一個實用的實時 操作系統。擴充工作主要包括:建立文件系統、為外部設備建立驅動程序并規范相應的API 函數、創建圖形用戶接口(GUI)函數、建立其他實用的應用程序接口(API)函數等[2]。

  圖1 測試系統結構圖

  3 軟件設計

  μC/OS-II下應用程序設計主要是根據系統的功能需要劃分不同的任務和中斷,并為每個 任務分配不同的優先級。一個任務通常是一個無限的循環,看起來像其它C的函數一樣,有 函數返回類型,有形式參數變量,但任務是決不會返回的,因此返回參數類型必須定義為 void。為了使μC/OS-II能管理用戶任務,用戶必須在建立一個任務的時候,將任務的起始地 址與其它參數一起傳給OSTaskCreate()或OSTaskCreateExt()。

  中斷和任務以及任務與任務之間的同步可通過信號量實現。下面以Modbus協議測試程 序中RTU模式下字符時間間隔的測量為例介紹μC/OS-II程序設計中任務和中斷的劃分。 Modbus的RTU模式中規定[3]:RTU模式下必須以連續的字符流發送整個報文幀,同一個 幀中兩個字符之間的空閑時間Δt不能大于1.5個字符時間(稱為t1.5),否則就認為報文幀不完 整;不同報文幀之間需要時長至少為3.5個字符的空閑時間,這個時間區間被稱為t3.5。RTU 模式下的信息幀如圖2所示。

  圖2 RTU模式的信息幀

  為了記錄RTU 幀中一個字符結束時間和另一個字符的起始時間,系統分別使用串口中 斷Uart_ISR 和IO 中斷PE24_ISR 分別對這兩個時刻進行捕捉。這需要將HMS30C7202 的串 口中斷時機設置為接收完一個字符后,將通用I/O 端口線PE24 設為允許中斷、下降沿觸發。

  為了縮短關中斷時間和中斷處理時間,可將中斷的處理放在任務中進行。在主任務中調 用OSTaskCreate函數分別建立串口接收處理任務Uart_Task和IO口處理任務PE24_Task。在 μC/OS-II中,有一個全局的系統時鐘,維護著一個全局時間變量。在Uart_Task和PE24_Task這兩個任務中分別通過讀取當前全局時間變量來實現對字符起始時間和結束時間的連續測 量。系統利用μC/OS-II中信號量機制實現中斷與任務之間的同步[3][4],信號量必須在系統啟 動的時候初始化,利用信號量實現任務與中斷同步的過程如圖3所示。

 

  圖 3 利用信號量實現任務與中斷同步

  串口處理任務Uart_Task、IO 口處理任務PE24_Task、串口中斷程序Uart_ISR 和IO 口中斷程序PE24_ISR 的部分代碼如下所示:


  由于μC/OS-II是一種可剝奪型實時內核,因此當中斷程序結束后要重新進行任務的調 度。任務的調度工作是由調度器完成的,μC/OS-II任務調度所花的時間是常數,與應用程序 中建立的任務數無關,因此串中中斷和IO口中斷后的中斷恢復時間是相同的,如果將通過 優化編程使兩個中斷的響應時間相等,則時間間隔Δt的測量結果將更加精確。

  4 結語

  做為一種源碼開放的實時操作系統,μC/OS-II在計算機檢測與控制等領域得到了廣泛應 用。本文提出并實現了基于ARM嵌入式處理器和μC/OS-II的Modbus協議測試系統。實驗結 果表明,測試系統實時性好、可靠性高,能很好地滿足Modbus設備的開發調試以及Modbus 設備運行過程中的在線檢測需求。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲性人人天天夜夜摸| 午夜欧美不卡精品aaaaa| 国产精品亚洲人在线观看| 欧美精品一区二区三区蜜桃| 麻豆91精品91久久久的内涵| 午夜精品一区二区三区在线播放| 一区二区三区高清视频在线观看| 亚洲精品国产视频| 亚洲电影免费观看高清完整版 | 亚洲美女中文字幕| 欧美激情中文不卡| 欧美电影免费观看大全| 蜜桃伊人久久| 欧美jizzhd精品欧美喷水| 久久漫画官网| 浪潮色综合久久天堂| 久久综合色天天久久综合图片| 久久精品91| 久久久久久久久岛国免费| 久久精品国产一区二区三区| 欧美一区在线看| 欧美一级大片在线观看| 午夜一级久久| 久久av老司机精品网站导航| 欧美与欧洲交xxxx免费观看| 校园春色国产精品| 欧美一区二区三区四区在线观看| 亚洲福利视频专区| 最新精品在线| 99精品欧美| 亚洲免费视频网站| 欧美伊人久久久久久久久影院| 欧美伊人久久久久久久久影院 | 国产人久久人人人人爽| 国产视频在线观看一区| 国内精品久久久久久久97牛牛| 精品动漫一区| 久久综合久久综合久久综合| 亚洲日本乱码在线观看| 最新成人在线| 在线一区免费观看| 久久爱www久久做| 亚洲精品欧美极品| 亚洲午夜激情网页| 久久国产福利| 免费成人高清视频| 欧美日韩一区综合| 国产欧美日韩麻豆91| 一区二区三区在线不卡| 国产亚洲精品久久久久婷婷瑜伽| 136国产福利精品导航网址应用| 亚洲精品社区| 亚洲欧美日韩天堂| 亚洲日本电影在线| 亚洲欧美另类久久久精品2019| 久久九九久久九九| 欧美日韩另类在线| 国产手机视频一区二区| 91久久精品美女| 亚洲一区二区三区四区视频| 亚洲国产精品va在看黑人| 亚洲手机在线| 久久日韩精品| 欧美天堂亚洲电影院在线播放| 国产一区二区视频在线观看| 日韩视频在线观看| 久久精品国产96久久久香蕉| 在线亚洲免费视频| 久久久久久欧美| 欧美日韩一区二| 国内精品久久久久影院优| 日韩一级精品视频在线观看| 欧美在线看片| 亚洲一级黄色av| 欧美**字幕| 国产欧美精品在线播放| 亚洲精品少妇30p| 久久精品国产一区二区三区免费看| 一区二区高清| 榴莲视频成人在线观看| 国产精品美女xx| 亚洲人体1000| 久久精品国产免费观看| 亚洲欧美区自拍先锋| 欧美成熟视频| 红桃视频亚洲| 亚洲欧美日韩第一区 | 日韩亚洲精品电影| 久久精品三级| 欧美三日本三级少妇三2023| 影音先锋中文字幕一区| 午夜国产精品视频| 亚洲已满18点击进入久久| 欧美成人激情视频免费观看| 国产视频在线观看一区二区| 亚洲色图制服丝袜| 夜夜嗨av一区二区三区| 乱人伦精品视频在线观看| 国产精品亚洲视频| 一本大道久久a久久精品综合| 亚洲精品一区二区三区婷婷月| 久久久91精品国产一区二区三区 | 一区二区三区久久精品| 亚洲美女精品久久| 免费日韩一区二区| 狠狠做深爱婷婷久久综合一区 | 亚洲视频在线观看网站| 欧美激情aⅴ一区二区三区| 国产主播一区二区| 篠田优中文在线播放第一区| 亚洲欧美在线播放| 国产精品高精视频免费| 99视频超级精品| 一本大道久久a久久综合婷婷 | 亚洲高清不卡av| 亚洲第一精品福利| 久久精品91久久久久久再现| 国产精品一区二区三区免费观看| 一本大道久久a久久综合婷婷| 99在线精品视频在线观看| 欧美电影在线观看完整版| 永久91嫩草亚洲精品人人| 亚洲大胆av| 鲁大师影院一区二区三区| 国内精品视频在线观看| 久久精品国产一区二区三| 久久阴道视频| 亚洲电影激情视频网站| 亚洲久色影视| 欧美日本中文字幕| 9l视频自拍蝌蚪9l视频成人| 在线亚洲电影| 欧美图区在线视频| 亚洲免费网址| 久久久久99| 在线观看国产精品网站| 亚洲人体影院| 欧美日韩免费观看一区三区| 夜夜夜久久久| 欧美一区二区三区成人| 国产一区二区三区的电影 | 日韩一区二区精品视频| 亚洲视频免费看| 国产精品乱码一区二三区小蝌蚪 | 亚洲国产日韩欧美在线图片| 欧美xxxx在线观看| 亚洲高清自拍| 亚洲作爱视频| 国产精品久久久久久久浪潮网站 | 伊人成人开心激情综合网| 欧美在线看片| 久久资源在线| 亚洲成人自拍视频| 国产精品99久久久久久久vr| 欧美日韩精品免费在线观看视频| 日韩一级不卡| 亚洲欧美激情视频在线观看一区二区三区| 国产欧美一区二区三区另类精品 | 亚洲大片在线| 免费久久99精品国产自| 在线不卡中文字幕播放| 在线视频精品一| 欧美天天视频| 午夜欧美理论片| 久久蜜桃资源一区二区老牛 | 午夜精品在线观看| 久久国产精品久久精品国产 | 在线精品国产成人综合| 亚洲区在线播放| 欧美色另类天堂2015| 亚洲在线免费| 欧美在线91| 亚洲精品无人区| 午夜精品久久久久影视 | 久久精精品视频| 欧美日韩在线视频一区| 亚洲综合电影一区二区三区| 久久免费国产| 亚洲国产欧美精品| 欧美一级二区| 尤物九九久久国产精品的特点 | 欧美成人一品| 亚洲精品欧洲精品| 久久久久久久久久看片| 在线电影一区| 亚洲网站在线观看| 国产欧美日韩91| 亚洲视频久久| 国产日韩欧美一区| 亚洲美洲欧洲综合国产一区| 欧美性猛交xxxx乱大交退制版 | 亚洲精选一区| 久久亚洲影音av资源网| 亚洲三级电影全部在线观看高清| 午夜精品久久久久久久蜜桃app| 黑人极品videos精品欧美裸| 亚洲少妇在线| 好吊视频一区二区三区四区| 一区二区三区回区在观看免费视频| 国产麻豆91精品|