基于μC/OS-II的Modbus協(xié)議測試系統(tǒng)
串口處理任務(wù)Uart_Task、IO 口處理任務(wù)PE24_Task、串口中斷程序Uart_ISR 和IO 口中斷程序PE24_ISR 的部分代碼如下所示:
由于μC/OS-II是一種可剝奪型實時內(nèi)核,因此當中斷程序結(jié)束后要重新進行任務(wù)的調(diào) 度。任務(wù)的調(diào)度工作是由調(diào)度器完成的,μC/OS-II任務(wù)調(diào)度所花的時間是常數(shù),與應用程序 中建立的任務(wù)數(shù)無關(guān),因此串中中斷和IO口中斷后的中斷恢復時間是相同的,如果將通過 優(yōu)化編程使兩個中斷的響應時間相等,則時間間隔Δt的測量結(jié)果將更加精確。
4 結(jié)語
做為一種源碼開放的實時操作系統(tǒng),μC/OS-II在計算機檢測與控制等領(lǐng)域得到了廣泛應 用。本文提出并實現(xiàn)了基于ARM嵌入式處理器和μC/OS-II的Modbus協(xié)議測試系統(tǒng)。實驗結(jié) 果表明,測試系統(tǒng)實時性好、可靠性高,能很好地滿足Modbus設(shè)備的開發(fā)調(diào)試以及Modbus 設(shè)備運行過程中的在線檢測需求。
評論