嵌入式操作系統(tǒng)中設(shè)備管理和驅(qū)動程序的開發(fā)
點(diǎn)擊:1991
A+ A-
所屬頻道:新聞中心
隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,嵌入式操作系統(tǒng)廣泛用于航空航天、工業(yè)控制、通訊等領(lǐng)域。其主要通過對計(jì)算機(jī)及機(jī)電系統(tǒng)接口的管理來實(shí)現(xiàn)對其它設(shè)備的控制、監(jiān)視和管理功能。本文介紹了中斷技術(shù)、緩沖技術(shù)、通道技術(shù)以及DMA 技術(shù)等四種嵌入式操作系統(tǒng)設(shè)備管理。并通過虛擬儀器labview 程序設(shè)計(jì)對嵌入式操作系統(tǒng)驅(qū)動程序進(jìn)行了開發(fā)設(shè)計(jì)。
1 嵌入式操作系統(tǒng)及其硬件設(shè)備
嵌入式操作系統(tǒng)(Embedded Operating System,簡稱:EOS),是指在嵌入式系統(tǒng)中包含有操作系統(tǒng)的計(jì)算機(jī)系統(tǒng),它是嵌入式系統(tǒng)設(shè)計(jì)的核心,是控制、輔助系統(tǒng)運(yùn)行的重要單元。其主要包括軟件層和硬件層。典型的嵌入式系統(tǒng)如圖1 所示;
圖1
EOS 常見主要有Windows Embedded 操作系統(tǒng)。嵌入式Linux 操作系統(tǒng)。VxWorks 操作系統(tǒng)。手機(jī)類的Android操作系統(tǒng)、手機(jī)類iOS 操作系統(tǒng)、uClinux 系統(tǒng)等。EOS可以分為實(shí)時(shí)性嵌入式操作系統(tǒng)以及非實(shí)時(shí)性嵌入式操作系統(tǒng)。實(shí)時(shí)性主要是針對通信領(lǐng)域以及控制方面來進(jìn)行的,非實(shí)時(shí)性則主要是針對消費(fèi)類進(jìn)行的。硬件層主要包括嵌入式處理器以及嵌入式外圍設(shè)備,嵌入式處理器主要包括微處理器、微控制器、DSP 處理器(即數(shù)字信號處理器)、嵌入式片上系統(tǒng)芯片等具有控制功能的硬件設(shè)備。
嵌入式外圍設(shè)備則是指除了嵌入式微處理器之外的硬件設(shè)備,主要包括用于存儲功能的存儲設(shè)備。用于通信連接功能的通訊設(shè)備以及顯示類設(shè)備等。
2 嵌入式操作系統(tǒng)中設(shè)備管理
EOS 中設(shè)備管理主要是指對嵌入式操作系統(tǒng)中的嵌入式處理器(包括微處理器。微控制器。DSP 處理器以及嵌入式片上系統(tǒng)芯片)以及嵌入式外圍設(shè)備進(jìn)行管理。嵌入式外圍設(shè)備具體包括:ROM 存儲器、RAM 存儲器、SRAMDRAM 存儲器、FLASH 存儲器、EPROM 存儲器、嵌入式計(jì)算機(jī)與機(jī)電系統(tǒng)接口(如串口、以太網(wǎng)接口、I2C接口、USB 接口以及紅外接口等)、觸摸屏幕、LCD 顯示屏幕等。嵌入式微處理器的設(shè)計(jì)是基于計(jì)算機(jī)系統(tǒng)的處理器進(jìn)行的,主要包括Power PC、Aml86/88、ARM 等;嵌入式微控制器多用于工業(yè)方面的控制,實(shí)現(xiàn)嵌入式微控制器擴(kuò)展功能的模塊主要包括I/O 接口、D/A 與A/D 轉(zhuǎn)換接口等。嵌入式片上系統(tǒng)芯片主要包括CPU 單元(中央處理器)、外部電路、外部接口、存儲模塊等。
對設(shè)備進(jìn)行管理的目的主要有兩方面:第一是通過對設(shè)備的管理使設(shè)備的利用率得到提高;第二是通過對設(shè)備的管理使得操作系統(tǒng)更簡潔。友好,有利于操作方式簡便、統(tǒng)一。首先關(guān)于設(shè)備的利用率,是通過中斷技術(shù)。緩沖技術(shù)。通道技術(shù)以及DMA技術(shù)等對系統(tǒng)各種設(shè)備統(tǒng)一管理,可以提高I/O 接口以及CPU 等運(yùn)行效率。
在計(jì)算機(jī)應(yīng)用中,EOS 的設(shè)備管理即是對計(jì)算機(jī)進(jìn)行控制,本文主要從計(jì)算機(jī)控制角度介紹EOS 的設(shè)備管理。
計(jì)算機(jī)設(shè)備控制管理技術(shù)是一種主要作用于嵌入式計(jì)算機(jī)及機(jī)電系統(tǒng)接口應(yīng)用中的技術(shù),主要包括中斷技術(shù)、緩沖技術(shù)、通道技術(shù)以及DMA 技術(shù)等。中斷技術(shù)是指在嵌入式系統(tǒng)中,通過中斷驅(qū)動的方式對I/O 接口進(jìn)行管理控制,流程是檢測I/O 接口控制器所處狀態(tài),或出錯(cuò)或準(zhǔn)備就緒。讀取指令,然后向RAM 寫入指令,或傳送完成或沒有完成,沒有完成便向I/O 接口控制器發(fā)送一條指令;緩沖技術(shù)可以用來減少CPU 與I/O 接口匹配不符的矛盾,緩沖系統(tǒng)主要分為硬件緩沖以及軟件緩沖,硬件緩沖是指用作緩沖器功能的專用寄存器,軟件緩沖是指EOS 中劃出的用于緩沖的區(qū)域,緩沖也可分為循環(huán)緩沖。單緩沖以及雙緩沖等;通道技術(shù)是指與設(shè)備控制器一起,通過通道程序?qū)崿F(xiàn)對I/O 接口的控制管理,其特點(diǎn)是指令中含有的信息量較大,對I/O 接口的指令主要分為I/O 指令和通道指令;DMA 技術(shù)即直接存儲器訪問模式,可以進(jìn)一步使CPU 對I/O 接口干預(yù)減少,主要包含數(shù)據(jù)預(yù)處理。傳送數(shù)據(jù)。數(shù)據(jù)后處理等階段。
3 嵌入式操作系統(tǒng)中設(shè)備驅(qū)動程序的開發(fā)
關(guān)于EOS 中設(shè)備驅(qū)動程序的開發(fā),本文主要基于的驅(qū)動程序開發(fā)環(huán)境是虛擬儀器labview 程序設(shè)計(jì),并且涉及DSP 應(yīng)用以及捷聯(lián)慣導(dǎo)系統(tǒng)(SINS)中陀螺儀信號的檢測和分析等。
Lab view 是程序開發(fā)環(huán)境的一種,由美國國家儀器公司(NI 公司)研發(fā), Lab view 編程系統(tǒng)的函數(shù)庫主要包括采集數(shù)據(jù)、分析數(shù)據(jù)、顯示數(shù)據(jù)、存儲數(shù)據(jù)、GPIB 以及串口控制等。與C、Basic 等開發(fā)環(huán)境相比較,Lab view的不同之處在于其所使用的計(jì)算機(jī)開發(fā)語言為基于圖形化編輯的G 語言,其產(chǎn)生的驅(qū)動程序形式為框架圖形式,而其他計(jì)算機(jī)語言如C 語言等,大部分是基于文本格式。
虛擬儀器即virtual instrument 是一種數(shù)據(jù)采集系統(tǒng),它的組織依據(jù)是儀器的需求。虛擬儀器主要應(yīng)用于Lab view編程系統(tǒng),主要依據(jù)的理論原理是DSP 以及計(jì)算機(jī)數(shù)據(jù)采集。
在lab view 中開發(fā)設(shè)備驅(qū)動主要有三種方法:直接對端口進(jìn)行讀寫。通過CLF(Call Library Function)節(jié)點(diǎn)調(diào)用DLL 函數(shù),以及通過CIN 節(jié)點(diǎn)調(diào)用由C 語言編寫的程序,基于EOS 中設(shè)備驅(qū)動程序開發(fā)的lab view 程序設(shè)計(jì)步驟主要包括:分析EOS 設(shè)備驅(qū)動程序開發(fā)任務(wù)(包括分析開發(fā)最終目標(biāo)。會出現(xiàn)的問題以及解決方案等),將虛擬儀器嵌入Lab view 編程系統(tǒng)(DSP 應(yīng)用以及捷聯(lián)慣導(dǎo)系統(tǒng)中陀螺儀信號的檢測和分析),對算法進(jìn)行設(shè)計(jì)(主要包括選擇程序開發(fā)過程中的算法以及詳細(xì)步驟等),進(jìn)行編程程序(將算法編寫成為計(jì)算機(jī)G 語言,并編輯。翻譯。連接源程序),調(diào)試程序(對編寫出來的EOS 設(shè)備驅(qū)動程序進(jìn)行試運(yùn)行,并分析其結(jié)果,如果有不符合要求的地方,對其進(jìn)行調(diào)試),記錄程序設(shè)計(jì)步驟并編制說明書。
捷聯(lián)慣導(dǎo)系統(tǒng)中陀螺儀信號的檢測和分析主要是指對陀螺儀表等慣性元件的原始信號進(jìn)行傳感。測試度量、數(shù)據(jù)采集、數(shù)據(jù)分析的步驟、DSP 是用數(shù)字形式對信號進(jìn)行處理的技術(shù),處理方式主要包括分析處理、濾波處理、變換處理、檢測處理、解調(diào)處理、快速計(jì)算以及調(diào)試處理等。DSP 設(shè)計(jì)包括預(yù)設(shè)數(shù)據(jù)以及信號指標(biāo)、語言模擬、DSP 硬件設(shè)計(jì)、DSP 軟件設(shè)計(jì)等。DSP 主要應(yīng)用于處理信號、處理語音、處理圖像、儀器儀表信號處理、軍事、醫(yī)療等方面,DSP 技術(shù)也可以應(yīng)用于儀器儀表的信號檢測和分析中。
4、結(jié)論
本文通過對嵌入式操作系統(tǒng)硬件設(shè)備以及驅(qū)動程序的研究,深入淺出地闡述了嵌入式操作系統(tǒng)中設(shè)備的機(jī)制、類型;管理的對象、目的以及控制技術(shù);重點(diǎn)介紹了虛擬儀器lab view程序?qū)υO(shè)備驅(qū)動程序開發(fā)的概念、特點(diǎn)、通用設(shè)計(jì)方法、流程以及在航空、航天等軍事慣性導(dǎo)航領(lǐng)域的應(yīng)用。
(審核編輯: 智匯李)
分享