<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>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > Windows CE6.0的DM9000A流接口驅動(dòng)開(kāi)發(fā)

Windows CE6.0的DM9000A流接口驅動(dòng)開(kāi)發(fā)

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

發(fā)送函數dm9000_send(pInBuf,nInBufSize)獲取流接口函數傳入的發(fā)送數據指針和相應數據長(cháng)度,然后驅動(dòng)DM發(fā)送數據,其工作流程如圖4所示。

g.JPG

4 CE 6.0系統下流驅動(dòng)程序的使用

4.1 流驅動(dòng)程序的加載

流接口驅動(dòng)程序需要按一定的方式配置后才能被系統識別并編譯。其配置的主要流程如圖5所示。

h.JPG

將流驅動(dòng)程序加入定制系統之后還需要添加相應的注冊表啟動(dòng)信息,在platform.reg文件中添加以下內容:

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\DM9]

“Index”=dword:1

“Order”=dword:30

“Prefix”=“DM9”

“DLL”=“DM9.dll”

為使生成的DLL文件能夠被包括在燒寫(xiě)文件中并下載到開(kāi)發(fā)板上,還需在platform.bib文件中加入相應代碼,內容如下:

IF BSP_NODM91

DM9.dll $(FLATRELEASEDIR)\DM9.dll NK SHK

ENDIF BSP_NODM9 !

經(jīng)過(guò)以上的配置之后,流接口驅動(dòng)程序已經(jīng)配置完成,只需要對 CE 6.0的系統定制工程重新編譯,并將生成的鏡像文件下載到開(kāi)發(fā)板上,即可通過(guò)文件API操作DM的數據收發(fā)。

4.2 應用程序對流驅動(dòng)程序的調用

CE啟動(dòng)時(shí)會(huì )自動(dòng)枚舉注冊表HKEY_LOCAL_MACHINE\Drivers\BuiltIn目錄下的驅動(dòng)信息,并加載相應驅動(dòng)程序的動(dòng)態(tài)鏈接庫,然后執行初始化接口函數——DM9_Init()。在驅動(dòng)程序成功加載之后,應用程序對硬件的操作就只需調用文件API便可實(shí)現,但前提是相應的操作必須在驅動(dòng)程序中有定義,并且分配了操作碼。對于DM的數據發(fā)送,其文件API代碼如下:

……

hDm9=CreateFile(TEXT(“DM91:”),GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL);

該代碼調用文件API打開(kāi)設備進(jìn)行讀寫(xiě)操作,得到文件操作的句柄名hDm9。

DeviceIoControl(hDm9,DM9_SendFrame,&SendData,sizeof(SendData),NULL,0,&dwReturn,Null);

……

該代碼調用文件API對設備發(fā)送操作命令。其中,hDm9告訴系統要操作的設備為DM9000A;DM9 SendFrame為發(fā)送數據的操作碼,這必須與驅動(dòng)程序中定義的相一致,也就是讓系統知道進(jìn)行的是什么操作;&SendData為發(fā)送的數據幀首地址;sizeof(SendData)為發(fā)送數據的長(cháng)度……



關(guān)鍵詞: Windows 9000A CE6

評論


相關(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>