久久中文视频-久久中文网-久久中文亚洲国产-久久中文字幕久久久久-亚洲狠狠成人综合网-亚洲狠狠婷婷综合久久久久


曙海教育集團(tuán)論壇Win CE 專(zhuān)區(qū)WinCE系統(tǒng)定制與驅(qū)動(dòng)開(kāi)發(fā) → WinCE下驅(qū)動(dòng)開(kāi)發(fā)入門(mén)記錄(一)


  共有8460人關(guān)注過(guò)本帖樹(shù)形打印

主題:WinCE下驅(qū)動(dòng)開(kāi)發(fā)入門(mén)記錄(一)

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


加好友 發(fā)短信
等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
WinCE下驅(qū)動(dòng)開(kāi)發(fā)入門(mén)記錄(一)  發(fā)帖心情 Post By:2010-11-26 11:11:21

這兩天時(shí)間完全泡在CE的驅(qū)動(dòng)開(kāi)發(fā)中,學(xué)習(xí)學(xué)習(xí),感覺(jué)就是資料不好找,難入門(mén)難上手,象我這樣僅僅只有eVc4的更是沒(méi)法調(diào)試沒(méi)法跟蹤,困難還是挺多的。學(xué)習(xí)了兩天,現(xiàn)在感覺(jué)有那么點(diǎn)意思了,記錄一下與大家分享。
        首先說(shuō)明一下,我可能仍然是個(gè)門(mén)外漢,因?yàn)橐郧盎緵](méi)做過(guò)和硬件相關(guān)的東西,這方面知識(shí)缺乏的要命,現(xiàn)在公司要求做個(gè)驅(qū)動(dòng)出來(lái),也只有硬著頭皮上了,學(xué)習(xí)研究了兩天,基本掌握了一些有用的信息,所以認(rèn)為自己入門(mén)了,但僅從自己的感覺(jué)出發(fā)都可以說(shuō)我只是窺見(jiàn)了冰山之一角,還有很多很多都不懂。上次的帖子里面介紹了一些當(dāng)時(shí)收集到的比較有用的資料,那個(gè)PB我也試著下了,下了一兩天沒(méi)多少,公司網(wǎng)太破,那個(gè)ftp又不支持?jǐn)帱c(diǎn)續(xù)傳,可害苦了我了,一個(gè)個(gè)的文件包100多M,一掉線就得重來(lái),最后我干脆放棄了。那個(gè)弟兄有的,干脆打個(gè)包把代碼發(fā)給我好了,謝謝了先。
         好,怎們切入正題。首先介紹一下我的驅(qū)動(dòng)目標(biāo),目的是為了使在pda上運(yùn)行的應(yīng)用程序能夠通過(guò)USB口和我們這個(gè)外設(shè)通訊,可以發(fā)送指令給外設(shè),也要求從外設(shè)獲取數(shù)據(jù),因此我把它定位在流接口上,這就引出第一個(gè)概念,流接口,應(yīng)該說(shuō)這里所說(shuō)的流接口是Wince上驅(qū)動(dòng)的一種,象串口啊這樣的可以用CreateFile打開(kāi)的都屬于這個(gè)范疇。其關(guān)鍵在于1)實(shí)現(xiàn)xxx_系列的函數(shù)2)注冊(cè)表中定義Prefix和Dll。其中xxx就是注冊(cè)表中Prefix的值,比如串口就是“COM”。而注冊(cè)表中的DLL就是你的驅(qū)動(dòng)程序dll(wince下的驅(qū)動(dòng)就是一個(gè)dll),加載驅(qū)動(dòng)的時(shí)候,會(huì)到你的dll中去找xxx_系列的函數(shù),所以你的dll一定要導(dǎo)出這些函數(shù)符號(hào)。
XXX_Init
XXX_Deinit
XXX_Open
XXX_Close
XXX_Read
XXX_Write
XXX_Seek
XXX_IOControl
XXX_PowerDown
XXX_PowerUp
經(jīng)過(guò)測(cè)試,其中前六個(gè)是必須實(shí)現(xiàn)且導(dǎo)出的,否則是不能夠成功加載的。

         好,先介紹了一些關(guān)于流接口驅(qū)動(dòng)的相關(guān)知識(shí),這部分在網(wǎng)上還是能夠找到不少資料的,我就不多說(shuō),回到我要開(kāi)發(fā)的驅(qū)動(dòng)上,說(shuō)到底我這個(gè)還首先是個(gè)USB設(shè)備,被識(shí)別之后才能將它驅(qū)動(dòng)成一個(gè)流設(shè)備
        說(shuō)到USB驅(qū)動(dòng),就要先介紹一下USB驅(qū)動(dòng)加載過(guò)程了。當(dāng)usb設(shè)備接到主機(jī)(usb host,因此你的pda必須是能夠作為usb host使用的)上時(shí),系統(tǒng)就會(huì)根據(jù)它的信息去從注冊(cè)表里查找它的驅(qū)動(dòng)相關(guān)信息,在HKLM\Drivers\Usb\LoadClients下面會(huì)有一些主鍵Group1_ID\Group2_ID\Group3_ID\DeviceID,而DeviceID下面有一個(gè)字符串Dll=DriverFile.dll
注意,其中Group1_ID,Group2_ID,Group3_ID分別表示什么,以及其匹配的優(yōu)先級(jí)別,可以在《WindowsCE 驅(qū)動(dòng)開(kāi)發(fā)指南》一書(shū)中USB驅(qū)動(dòng)開(kāi)發(fā)一章去詳細(xì)研究。
         如果找到匹配的注冊(cè)表信息,系統(tǒng)就會(huì)加載DriverFile.dll,否則就會(huì)提示用戶輸入一個(gè)驅(qū)動(dòng)名稱。
         那么加載dll的時(shí)候會(huì)有些什么動(dòng)作呢?驅(qū)動(dòng)程序DLL和普通的DLL是否具備不同的入口點(diǎn)呢?
         先回答第二個(gè)問(wèn)題,答案是否定的,其入口點(diǎn)和普通的dll沒(méi)有區(qū)別。但是加載的過(guò)程就不那么簡(jiǎn)單了。你可以理解系統(tǒng)已經(jīng)作了一些事情,使得你可以用一個(gè)普通的dll來(lái)作為驅(qū)動(dòng)程序,但是顯然,你必須實(shí)現(xiàn)系統(tǒng)所要求的接口函數(shù)。
         對(duì)于USB驅(qū)動(dòng)程序來(lái)說(shuō),有這么幾個(gè)接口函數(shù)是必須實(shí)現(xiàn)且導(dǎo)出的:
BOOL USBDeviceAttach(USB_HANDLE hDevice,
                                    LPCUSB_FUNCS lpUsbFuncs, 
                                    LPCUSB_INTERFACE lpInterface,
                                    LPCWSTR szUniqueDriverId, 
                                    LPBOOL fAcceptControl,
                                    LPCUSB_DRIVER_SETTINGS lpDriverSettings,
                                     DWORD dwUnused);
BOOL USBInstallDriver(LPCWSTR szDriverLibFile);
BOOL USBUnInstallDriver();
          建議大家先讀一下sdk的include目錄下的usbdi.h頭文件,這里面定義了很多usb驅(qū)動(dòng)相關(guān)的結(jié)構(gòu)、函數(shù)接口,包括注釋

支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

WinCE下驅(qū)動(dòng)開(kāi)發(fā)入門(mén)記錄(一)








簽名
主站蜘蛛池模板: 亚洲欧美日本人成在线观看 | 一级毛片视频免费 | 国产日韩精品欧美一区视频 | 欧美色视频日本片高清在线观看 | 国产欧美日韩在线 | 欧美日韩另类在线观看视频 | 偷拍小视频99在线 | 两性免费视频 | 在线观看欧美亚洲日本专区 | 精品国产成人系列 | 美女视频黄的免费看网站 | 日本精品夜色视频一区二区 | 国产成人啪精品视频免费软件 | 成人免费国产欧美日韩你懂的 | 日韩欧美久久一区二区 | 怡红院在线a男人的天堂 | 成人影院午夜久久影院 | 国产精品成人aaaaa网站 | 美女黄页网站 | 午夜无遮挡怕怕怕免费视频 | 久久久免费观看 | 欧美成人怡红院在线观看 | 亚洲99久久久久综合 | 97操碰 | 精品精品国产自在久久高清 | 久久久国产99久久国产久 | 国产福利精品在线观看 | 国产情侣无套精品视频 | 成人免费午夜性视频 | 亚洲精品自产拍在线观看 | 91精品在线免费 | 久久久久在线视频 | 免费看一级欧美毛片视频 | 亚洲一区成人 | 久久久久久在线 | 久久99国产乱子伦精品免费 | 久久国产成人精品麻豆 | 4438全国最大成人网视频 | 国内精品久久久久久久星辰影视 | 性刺激久久久久久久久 | 精品国产一级毛片 |