女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

應(yīng)用環(huán)境中自動安裝無線網(wǎng)卡的問題及解決方案

電子設(shè)計 ? 來源:電子技術(shù)應(yīng)用 ? 作者:劉丹,李式巨 ? 2021-06-22 14:43 ? 次閱讀

討論了Windows CE環(huán)境下無線網(wǎng)卡的安裝,并提出了一種在系統(tǒng)斷電重啟時自動安裝無線網(wǎng)卡的解決方案。對Windows CE的系統(tǒng)定制、應(yīng)用程序的開發(fā)及系統(tǒng)封裝進行了介紹。

Windows CE是為多種嵌入式系統(tǒng)和產(chǎn)品而設(shè)計的緊湊、高效、可升級的操作系統(tǒng),并特別為有限的硬件資源設(shè)計了多線程、多任務(wù)和完全優(yōu)先的操作系統(tǒng)環(huán)境。在無線通信領(lǐng)域有很大的應(yīng)用前景。

本文重點討論了Windows CE環(huán)境下無線網(wǎng)卡的安裝,并提出了一種在系統(tǒng)斷電重啟時自動安裝無線網(wǎng)卡的解決方案;還對Windows CE的系統(tǒng)定制、應(yīng)用程序的開發(fā)及系統(tǒng)封裝進行了介紹。由于Windows CE與Windows的同源和相似,決定了學習Windows CE的簡易性,這樣就縮短了應(yīng)用者的開發(fā)周期。

1 Windows CE簡介

Windows CE包括四大基本模塊,它們提供了操作系統(tǒng)的關(guān)鍵特性,分別是:內(nèi)核(Kernel)模塊、對象存儲(Object Store)模塊、GWES(用戶、應(yīng)用程序和操作系統(tǒng)之間的圖形用戶界面)模塊和通信(Communication)模塊。圖1為Windows CE的模塊化結(jié)構(gòu)圖。

操作系統(tǒng)定制工具有Windows CE Platform Builder(簡稱PB),應(yīng)用程序開發(fā)工具有嵌入式開發(fā)工具包Embedded Visual Tools,包括Embedded Visual C++(簡稱EVC)和Embedded Visual Basic(簡稱EVB)。

2 特定硬件平臺Windows CE操作系統(tǒng)的開發(fā)

應(yīng)用環(huán)境中自動安裝無線網(wǎng)卡的問題及解決方案

有了具體的嵌入式硬件平中后,就可以為其開發(fā)滿足特定功能需要的Windows CE系統(tǒng)。總之,可以分成三個步驟:操作系統(tǒng)的定制、特定功能應(yīng)用程序模塊的開發(fā)、功能模塊封裝入操作系統(tǒng)。

2.1 操作系統(tǒng)的初步定制

圖2為在PB中定制Windows CE操作系統(tǒng)的一般流程。

首先,選擇操作系統(tǒng)的基本配置,并且為特定的平臺選擇相應(yīng)的微處理器和平臺支持包BPS(Board Support Packet)。PB提供的BSP有CEPC(基于PC機的WinCE硬件開發(fā)平臺)。開發(fā)者可以選擇其一或自己定制特定平臺的BPS。其次,制定平臺,在此階段可開發(fā)設(shè)備驅(qū)動,適當?shù)夭眉簟⑻砑咏M件,如有必要還需對某些配置文件進行修改。然后,封裝所需要的各功能模塊,編譯生成OS鏡像文件。若設(shè)備為自己定制的目標設(shè)備,則需開發(fā)OAL(OEM Adaptation Layer)、BPS和BootLoader。接著,把鏡像文件下載到目標設(shè)備,進行調(diào)試;需要的話,進行重復配置、封裝、下載及調(diào)試,需要的話,進行重復配置、封裝、下載及調(diào)試,直到滿足要求,完成平臺的創(chuàng)建。

最后導出相應(yīng)的SDK(Software Development Kit)軟件開發(fā)工具包,運行后加域到EVC中,使得可以進行特定硬件平臺上的應(yīng)用程序開發(fā)。SDK包含程序庫、頭文件、示例程序源代碼和庫函數(shù)使用文檔,同時還包括編程指導和API參與以及設(shè)備驅(qū)動工具包(DDK)。

2.2 特定功能應(yīng)用程序模塊的開發(fā)

開發(fā)特定功能的應(yīng)用程序模塊就是在EVC中編寫應(yīng)用程序,滿足系統(tǒng)功能擴充的需要。重點要做以下工作:

(1)為特定平臺選擇相應(yīng)的微處理器,如WCE THUMB或WCE x86em等。

(2)編寫應(yīng)用程序。方法上EVC與PC機上運行的VC差別不大。兩者的區(qū)別主要有:前者的API是后者API的子集,對不兼容的函數(shù)要做一些修改或者尋求可替代的函數(shù);前者為Unicode環(huán)境,所有字符都是兩個字節(jié),而后者為ANSI美國標準,每個字符一個字節(jié),因此必要時兩者間要作數(shù)據(jù)類型轉(zhuǎn)換;另外在用戶界面編程和內(nèi)存管理等方面也有些差異。

(3)對程序進行編譯和調(diào)試。編譯時一定要選擇特定的硬件平臺。調(diào)試時可用微軟件包提供的工具Microsoft Activesync建立PC機上與目標機的連接,把系統(tǒng)鏡像從PC機下載到目標機上進行調(diào)試;另外EVC中帶有模擬器,可以在PC機上模擬目標平臺上的大部分功能。

2.3 功能模塊封裝入系統(tǒng)

OEM開發(fā)者通常把必要的應(yīng)用程序和操作系統(tǒng)封裝在一起發(fā)布給使用者,因此要把應(yīng)用程序打包封裝入初步制定的操作系統(tǒng)中。需要做的工作主要有兩個:

(1)把編譯好的可執(zhí)行文件拷貝到Windows CE系統(tǒng)相應(yīng)的文件夾中。

(2)在PB中修改相應(yīng)的系統(tǒng)配置文件。PB所提供的配置文件包括四種文件類型:.bib,說明需要打包進鏡像文件的Windows CE文件;.dat,文件系統(tǒng)、目錄和文件分配表描述;.db,Windows CE對象存儲數(shù)據(jù)庫的描述;.reg,系統(tǒng)注冊表。在開發(fā)過程中最常用到的配置文件有:Platform.bib、Platform.reg、Platform.dat、Config.bib。Platform.bib定義打包到OS鏡像文件時所需要的文件(files)和模塊(modules);Platform.reg定義目標平臺冷啟動時所加載的注冊表鍵值;Platform.dat定義目標平臺冷啟動時所加載的系統(tǒng)文件、目錄和鏈接等;Config.bib定義可用的物理地址,并進行一些屬性設(shè)置。

做好以上兩步以后,對操作系統(tǒng)重新編譯、下載、調(diào)試,最終得到功能完整的系統(tǒng)鏡像。

3 開發(fā)實例——Windows CE環(huán)境下無線網(wǎng)卡的自動安裝

3.1 項目介紹

項目要求實現(xiàn)一個獨立的嵌入式無線通信模塊,通過現(xiàn)有的IEEE80211b無線網(wǎng)卡接入無線局域網(wǎng)進行通信。系統(tǒng)采用Samsung公司的S3C2410芯片開發(fā)嵌入式系統(tǒng)硬件平臺,需要在Windows CE環(huán)境驅(qū)勸PCMCIA無線網(wǎng)卡。

3.2 無線網(wǎng)卡安裝的問題和解決方案

Windows CE操作系統(tǒng)支持兩種類型的設(shè)備驅(qū)動程序:內(nèi)置式設(shè)備驅(qū)動程序和可安裝設(shè)備驅(qū)動程序。當目標朵與PC機相鏈,且目標機有顯示屏和鏈盤時,對于可安裝的設(shè)備驅(qū)動程序,其安裝步驟為:建立目標機與PC機的連接,將設(shè)備驅(qū)動程序的.dll文件復制到Windows CE的Windows目錄下;當系統(tǒng)檢測到設(shè)備時,顯示屏中會出現(xiàn)相應(yīng)的對話框,用鍵盤輸入驅(qū)動的名稱即可。

項目中要為現(xiàn)有的無線網(wǎng)卡安裝驅(qū)動程序。因為Windows CE系統(tǒng)運行時是基于RAM存儲的,ROM相當于只讀硬盤,一旦系統(tǒng)斷電或冷啟動后,RAM中的信息就會丟失,尤其是一些注冊表的信息,所以要對RAM持續(xù)供電。但由于本系統(tǒng)硬件電源不能保證持續(xù)供電,安裝了無線網(wǎng)卡的驅(qū)動程序后,信息存儲在RAM中,系統(tǒng)斷電或冷啟動后,相關(guān)的信息會丟失。而且,目標機在實際使用中無顯示屏和鍵盤。因此,斷電重啟時需要自動重新安裝無線網(wǎng)卡驅(qū)動程序。

解決方案為:從系統(tǒng)持久存儲SM卡中讀取網(wǎng)卡驅(qū)動程序xi825.dll和TCP/IP屬性配置文件config.txt,并按配置文件設(shè)備注冊表鍵值,然后為無線網(wǎng)卡安裝驅(qū)動程序。若需要根據(jù)具體應(yīng)用環(huán)境更新TCP/IP屬性值,可用新的配置文件覆蓋SM卡中的舊文件,冷啟動后,重新設(shè)備屬性值,在安裝網(wǎng)卡驅(qū)動即可。

用EVC編寫應(yīng)用程序完成自動安裝無線網(wǎng)卡驅(qū)動的功能,圖3為應(yīng)用程序的大體流程。

首先,把兩個文件從SM卡的storage card文件夾拷貝到Windows CE系統(tǒng)的Windows目錄下;拷貝成功后,按config.txt的內(nèi)容對注冊表進行操作,設(shè)置具體環(huán)境下的TCP/IP屬性值;系統(tǒng)檢測到無線網(wǎng)卡后,在彈出名為“Unidentified PCCard Adapter”的對話框中程序自動輸入網(wǎng)卡驅(qū)動程序名,完成無線網(wǎng)卡的自動安裝。

3.3 幾個具體問題的解決

下面,再討論一下本方案中幾個具體問題的解決辦法。包括對注冊表的操作、自動安裝功能的實現(xiàn)、程序流程的總體控制以及將程序打包封裝入操作系統(tǒng)的作法。

3.3.1 對注冊表的操作

Windows CE中有一系列API函數(shù)可以對注冊表進行操作,完成打開關(guān)閉注冊表、讀取或修改鍵值等功能。另外,Windows CE注冊表中值的類型為Unicode;而配置文件config.txt是在PC機上產(chǎn)生的,類別為ANSI。要按cogfing.txt中讀取的值設(shè)定注冊表值,就要進行數(shù)據(jù)類型的轉(zhuǎn)換,可以用函數(shù)MultiByteToWideChar()實現(xiàn)。關(guān)鍵代碼如下:

RegOpenKeyEx(HKEY_LOCAL_MACHINE, //根鍵TEXT(“Comm\xi8251\Parms\TcpIP”),

//打開根鍵下的子鍵

0, //預留值,必設(shè)為0

0, //不支持此項,必設(shè)為0

%26;amp;hKey //最終打開鍵的句柄指針

);

RegSetValueEx( hKey, //對鍵操作的句柄

TEXT(“IpAddress”),//鍵中的數(shù)據(jù)項名

0, //預留值,必設(shè)為0

REG_GZ, //數(shù)據(jù)項中值的類型

(CONST BYE*)((LPCTSTR)regData),//存有數(shù)據(jù)項值的緩沖區(qū)

dwDataSize //值的字節(jié)數(shù)

); //對“IpAddress”數(shù)據(jù)項的值作修改,即改變IP值

3.3.2 自動安裝功能的實現(xiàn)

用FindWindows()函數(shù)判斷對話窗口的出現(xiàn);用keybd_event()函數(shù)模擬鍵盤輸入。關(guān)鍵代碼如下:

TCHAR g_szTitle[80]=TEXT(“Unidentified PCCard Adapter”); //指定對話框的標題

HWND hWnd=。.FindWindows(NULL,g_szTitle); //判斷此標題名的窗口是否已出現(xiàn),不論是否為前臺窗口

if (hWnd! =NULL) //若窗口已出現(xiàn)

{。.SetForegroundWindows(hWnd); //將此窗口設(shè)置前臺窗口

keybd_event(0x58,0,0,0); //按下x鍵

keybd_event(0x58,0,KEYEVENTE_KEYUP,0); //抬起x鍵

//完成了按下和抬起x鍵的兩個動作,就模擬了鍵盤輸入字符x.

。..。..。..。..//用同樣的方法輸入 “i825.dll”

keybd_event(0x0d,0,0,0);

keybd_event(0x0d,0,KEYEVENTF_KEYUP,0); //最后輸入確認鍵

}

正確輸入后,可以看到無線網(wǎng)卡的顯示燈開始閃爍,說明網(wǎng)卡已經(jīng)安裝成功,等待進行無線通信。

3.3.3 程序流程的總體控制

為了保證程序流程的順序,整個程序中還需要有一個總體監(jiān)視控制的管理員。這種監(jiān)控功能,可以通過發(fā)送接收特定消息給主控函數(shù)的方法,也可以采用等待特定事件對象的方法,還可以采用開定時器查詢的方法等。鑒于方法簡單,而且對系統(tǒng)資源占用并不大,這里選用了開定時器查詢的方法,并設(shè)置了標志位flag區(qū)分不同階段工作,進行相應(yīng)的操作。下面列出部門關(guān)鍵代碼:

flag=0; //最初標志位設(shè)為0,即先拷貝所需要文件

m_nTimer=SetTimer(1,2000,NULL); //開啟定時器

KillTimer(m_nTimer); //時間到,先關(guān)閉定時器,進行相應(yīng)判斷和操作。

3.3.4 應(yīng)用程序封裝入系統(tǒng)

上文已經(jīng)講了將應(yīng)用程序封裝入操作系統(tǒng)的一般方法,分為應(yīng)用程序的拷貝和修改系統(tǒng)配置文件兩步。此項目最后要把開的應(yīng)用程序monitor.exe打包封裝入操作系統(tǒng)。這里重點介紹一下系統(tǒng)中幾個配置文件的具體修改情況。

(1) 在Platform.bib文件中的Files部門加入以下代碼

其中,monitor.lnk為monitor.exe的鏈接程序(快捷方式),制作方法很簡單,可以通過一個ASCII碼編輯器編寫,格式為:#20.exe。

此配置文件中的代碼表示,將monitor.exe和monitor.lnk加載到名為NK的內(nèi)存區(qū)中(NK的定義在config.bib文件中的memory部分完成),文件的屬性為U(非壓縮文件),這樣就完成了把自己所開發(fā)的應(yīng)用程序及其鏈接程序封裝進操作系統(tǒng)中的“聲明”。

(2) 在Platform.dat文件中加入以下代碼:

Directory (“):-File(”monitor.lnk“,“.lnk”)

由于Platform.bib做過聲明,這兩個文件在操作系統(tǒng)啟動后會映射到目錄下,這是默認的目錄。所以此外的代碼表示在Windows CE啟動時會自動運行monitor.exe。

做完了以上工作,再對操作系統(tǒng)進行編譯,把應(yīng)用程序封裝到了Windows CE操作系統(tǒng)中,而且系統(tǒng)啟動后會運行此應(yīng)用程序,完成自動安裝無線網(wǎng)卡的功能。

責任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 無線
    +關(guān)注

    關(guān)注

    31

    文章

    5533

    瀏覽量

    175381
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    7077

    瀏覽量

    124938
  • 應(yīng)用程序
    +關(guān)注

    關(guān)注

    38

    文章

    3322

    瀏覽量

    58713
收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    求USB網(wǎng)卡方案和USB無線網(wǎng)卡方案

    求購USB網(wǎng)卡方案和USB無線網(wǎng)卡方案[email protected]
    發(fā)表于 05-03 09:43

    細說無線上網(wǎng)卡無線網(wǎng)卡的區(qū)別

        隨著筆記本的普及,移動上網(wǎng)成了最為迫切的伴侶,不過很多讀者疑惑的是,目前市面上有一種無線網(wǎng)卡,還有一種無線上網(wǎng)卡,雖然只是相差一個字,但它們的功能卻大大的不同,兩者的價格
    發(fā)表于 06-23 13:37

    在Windows CE環(huán)境無線網(wǎng)卡如何自動安裝

    有誰來解釋一下在Windows CE環(huán)境無線網(wǎng)卡如何去自動安裝
    發(fā)表于 06-04 06:15

    ralink無線網(wǎng)卡驅(qū)動

    很小的ralink無線網(wǎng)卡驅(qū)動,ralink無線網(wǎng)卡驅(qū)動免費下載。
    發(fā)表于 03-16 00:28 ?43次下載

    Windows CE環(huán)境無線網(wǎng)卡自動安裝

    摘要:討論了Windows CE環(huán)境無線網(wǎng)卡安裝,并提出了一種在系統(tǒng)斷電重啟時自動安裝無線網(wǎng)卡
    發(fā)表于 03-11 12:39 ?1333次閱讀
    Windows CE<b class='flag-5'>環(huán)境</b>下<b class='flag-5'>無線網(wǎng)卡</b>的<b class='flag-5'>自動</b><b class='flag-5'>安裝</b>

    無線網(wǎng)卡有什么作用

    無線網(wǎng)卡有什么用 目前國內(nèi)所銷售的筆記本電腦,其標配的無線網(wǎng)卡,都是指wlan無線網(wǎng)卡,即wifi無線網(wǎng)卡,主要用于組建無線局域
    發(fā)表于 07-02 17:25 ?5768次閱讀

    Windows CE環(huán)境無線網(wǎng)卡自動安裝

    本文討論了Windows CE環(huán)境無線網(wǎng)卡安裝,并提出了一種在 系統(tǒng)斷電重啟時自動安裝無線網(wǎng)卡
    發(fā)表于 04-18 10:02 ?0次下載

    無線網(wǎng)卡怎么用

    第一步:把無線網(wǎng)卡插入USB接口后指示燈會亮起,計算機會自動識別該無線網(wǎng)卡,如果無線網(wǎng)卡沒有問題,會在右下角顯示“新硬件已安裝并可以使用”
    的頭像 發(fā)表于 12-10 15:01 ?9.2w次閱讀

    無線網(wǎng)卡有幾種

    無線網(wǎng)卡采用的接口劃分,有PCI無線網(wǎng)卡(包括ISA接口)、USB無線網(wǎng)卡和PCMCIA無線網(wǎng)卡(包括CF接口)。
    的頭像 發(fā)表于 01-04 16:16 ?2.1w次閱讀

    淺析無線網(wǎng)卡的原理與應(yīng)用

    在本文中,您將學習無線網(wǎng)卡如何與熱點通信以連接到Internet。您還將了解可用的各種無線網(wǎng)卡以及購買無線網(wǎng)卡時應(yīng)查找的內(nèi)容,以便您也可以一邊喝著拿鐵咖啡一邊檢查電子郵件。
    的頭像 發(fā)表于 09-30 11:30 ?7561次閱讀

    無線網(wǎng)卡怎么安裝_無線網(wǎng)卡怎么連接臺式電腦

    無線網(wǎng)卡怎么用?這一直是一個很多人都喜歡問的問題,盡管現(xiàn)在無線網(wǎng)卡設(shè)計上越來越方便靈活,但是不可避免的還是有很多人對其的使用表示困惑,例如筆記本無線網(wǎng)卡驅(qū)動是怎么安裝打開的卻并非所有人
    的頭像 發(fā)表于 12-22 17:01 ?2.4w次閱讀

    臺式電腦無線網(wǎng)卡怎么安裝

    臺式機裝無線網(wǎng)卡的方法:臺式電腦的無線網(wǎng)卡是那種類似U盤的東西接到電腦的USB接口上,也有那種插到PCI插槽里的。前者方便,體積較小,但是價格貴點,后者價格便宜,而且用起來比較方便。這種網(wǎng)卡可以通過
    的頭像 發(fā)表于 12-22 17:29 ?1.4w次閱讀

    選擇無線網(wǎng)卡的原則和方法

    選擇無線網(wǎng)卡的原則和方法 無線網(wǎng)卡是一種用于連接電腦或其他設(shè)備與無線網(wǎng)絡(luò)的設(shè)備,它可以通過Wi-Fi信號接收和發(fā)送數(shù)據(jù)。隨著無線網(wǎng)絡(luò)的廣泛應(yīng)用,選擇一款合適的
    的頭像 發(fā)表于 12-11 11:38 ?1633次閱讀

    什么是無線網(wǎng)卡?它是如何工作的?如何安裝無線網(wǎng)卡

    什么是無線網(wǎng)卡?它是如何工作的?如何安裝無線網(wǎng)卡無線網(wǎng)卡無線適配器)是一種設(shè)備,用于使計算機或其他設(shè)備能夠連接到
    的頭像 發(fā)表于 12-15 09:58 ?3769次閱讀

    無線網(wǎng)卡驅(qū)動怎么安裝 無線網(wǎng)卡怎么連接臺式電腦

    如今,隨著科技的不斷發(fā)展,無線網(wǎng)絡(luò)已經(jīng)成為了我們生活不可或缺的一部分。對于臺式電腦用戶而言,如果沒有內(nèi)置無線網(wǎng)卡,就需要通過安裝外置無線網(wǎng)卡
    的頭像 發(fā)表于 01-19 09:54 ?4386次閱讀