<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于嵌入式的故障診斷專(zhuān)家系統驅動(dòng)程序設計

基于嵌入式的故障診斷專(zhuān)家系統驅動(dòng)程序設計

作者: 時(shí)間:2010-09-10 來(lái)源:網(wǎng)絡(luò ) 收藏

電子設備的系統大多采用由傳感器、工業(yè)PC、工業(yè)以太網(wǎng)、遠程專(zhuān)家組成的模式?,F有現場(chǎng)儀器眾多、連接復雜,使得系統可靠性和穩定性難以得到保證。另一方面,要求診斷人員具備專(zhuān)業(yè)知識,其中包括各類(lèi)傳感器的固定、連接與信號處理,難以實(shí)現“現場(chǎng)無(wú)人,遠程診斷”目標。因此有必要從現有的硬件和軟件組成模式的角度出發(fā),探索一種新的診斷系統組成模式。本文設計了診斷,使得對電子設備的檢測及維修變得更為方便有效。
本文根據實(shí)際需要選取Windows CE.Net作為本系統的操作系統平臺。在Windows CE系統的平臺開(kāi)發(fā)中,設備程序的開(kāi)發(fā)是其很重要的一部分,它們用于系統硬件平臺上的各個(gè)設備接口。根據定制的硬件系統,本文對操作系統的鍵盤(pán)程序、觸摸屏、LCD驅動(dòng)、電源管理及其它的相關(guān)驅動(dòng)程序進(jìn)行了開(kāi)發(fā)。

1 Windows CE.Net操作系統
Windows CE.Net是微軟公司在嵌入式操作系統市場(chǎng)上一個(gè)重要產(chǎn)品,第1個(gè)版本于1996年發(fā)布。Windows CE.Net是針對有限資源的平臺而設計的32位、多線(xiàn)程、完整優(yōu)先權、多任務(wù)的嵌入式操作系統。
Windows CE.Net一個(gè)突出的特點(diǎn)——模塊化。利用這個(gè)特點(diǎn),選擇、組合和配置Windows CE.Net的各個(gè)模塊和組件來(lái)創(chuàng )建用戶(hù)版的操作系統,即Windows CE.Net的模塊化設計使得它能夠在大量的平臺上定制使用,從客戶(hù)電子設備到專(zhuān)用的工業(yè)控制器。
Window CE.Net操作系統的基本內核需要至少200 kB的ROM,它支持Win32 API子集、多種用戶(hù)界面硬件、多種的串行和網(wǎng)絡(luò )通訊技術(shù)、COM/OLE和其他的進(jìn)程間通訊的先進(jìn)方法,借助Windows CE開(kāi)發(fā)者就能利用大量其他的編程資源、工具、軟件例子以及文檔來(lái)進(jìn)行Windows CE.Net開(kāi)發(fā)工作。Micmsoft公司為Windows CE.Net提供了PlatformBuilder和Embedded Visual Studio開(kāi)發(fā)工具。
Windows CE.Net有五個(gè)主要的模塊:內核模塊、內核系統調用接口模塊、文件系統模塊、圖形窗口和事件子系統模塊、通訊模塊。其最大的特點(diǎn)是能提供與PC機類(lèi)似的圖形界面和主要的應用程序。Windows CE.Net嵌入式操作系統的界面顯示大多數在Windows里出現的標準部件,包括桌面、任務(wù)欄、窗口、圖標和控件等。這樣只要是對PC機上的Windows比較熟悉的用戶(hù),可以很快地使用Windows CE.Net嵌入式操作系統的嵌入式設備。

2 WindOWS CE.Net平臺下的驅動(dòng)開(kāi)發(fā)
Windows CE.Net的分層結構給驅動(dòng)程序的開(kāi)發(fā)帶來(lái)極大的方便,使得驅動(dòng)開(kāi)發(fā)只需要針對不同的BSP進(jìn)行修改,很大程度上減少了開(kāi)發(fā)的工作量。而完成這一工作需要了解兩部分的內容,分別是:Windows CE.Net的中斷機制和Windows CE.Net.的層次模型。
2.1 Windows CE.Net的中斷機制
Windows CE.Net系統的大多數外圍設備都是通過(guò)產(chǎn)生中斷從操作系統獲得服務(wù)的,如PC卡、板上定時(shí)器、鍵盤(pán)、觸摸屏等。當設備需要驅動(dòng)程序服務(wù)時(shí),Windows CE.Net的平臺使用中斷信號通知操作系統。
Windows CE.Net把中斷處理分成兩部分:內核模式的中斷服務(wù)程序(Interrupt Serice Routine,ISR)和用戶(hù)模式的中斷服務(wù)線(xiàn)程(Int-errupt Setice Thread,IST)。ISR通常都比較短,是快速的匯編代碼,一般在0AL層代碼中,能夠直接訪(fǎng)問(wèn)硬件注冊表。ISR的唯一任務(wù)就是向操作系統返回邏輯中斷標志符。中斷服務(wù)線(xiàn)程(IST)是用戶(hù)模式線(xiàn)程,在IST中完成大多數中斷處理。IST在大多數時(shí)間里是空閑的,只有當從函數WaitForSingeObiect()得到中斷已經(jīng)發(fā)生的信號后,IST被喚醒去處理它需要處理的中斷。通過(guò)相關(guān)聯(lián)的帶有中斷標志的事件可以完成這些。IST需要首先創(chuàng )建一個(gè)事件并且用邏輯中斷與它相聯(lián)系。當中斷過(guò)程完成時(shí),IST應該通知內核重新使能中斷。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>