最近公司項(xiàng)目的需求發(fā)生變化,要把一個PC上的項(xiàng)目移植到PDA上,而該項(xiàng)目中有一外設(shè),在PC上的驅(qū)動是有的,PDA上可就沒有了,這個外設(shè)是公司知識產(chǎn)權(quán)的,故而硬件信息都是有的,所以上面決定要開發(fā)該外設(shè)在PDA上通過USB口連接的驅(qū)動程序。
WinCE下的驅(qū)動開發(fā)一直沒有接觸過,零零碎碎地看過一些資料,有那么一個概念,個人認(rèn)識是wince下的驅(qū)動程序和Windows 2000/XP下的驅(qū)動程序最大的不同就是,它只是一個普通的dll,但是要求是能夠被DeviceMgr加載的dll(個人理解,不知正確與否,希望不要誤導(dǎo)他人)。
沒辦法,只有先學(xué)習(xí)咯,網(wǎng)上搜索資料,實(shí)在是很艱難,注冊了好幾個地方。由于公司要求開發(fā)的是一個USB的驅(qū)動程序,所以感覺入手的話還是從這個單一的方向比較好,但是由于我沒有Platform Builder,所以也沒機(jī)會讀到其中的一些驅(qū)動程序源代碼,網(wǎng)上的文章到處都是說PB中的哪個目錄下有驅(qū)動源代碼,要學(xué)習(xí)者好好研究,可惜啊,沒有PB怎么辦呢?這時候在網(wǎng)上碰到了付林林,相信搞wince開發(fā)的很多人都讀過他的文章,他確實(shí)是個前輩了,我像抓住了救命稻草一樣向他求助,希望他能夠把usb的幾個驅(qū)動打包發(fā)給我學(xué)習(xí)學(xué)習(xí),結(jié)果只換來他冷冷的一句“我很忙,沒空。你找別人吧。”唉~~太無語了,心里真不是個味,區(qū)區(qū)幾k的驅(qū)動傳給我會浪費(fèi)您很多時間嗎?虧我一直把您當(dāng)前輩一直用“您”稱呼,不過想想別人也沒義務(wù)要幫咱,或許別人真的很忙,要是每個學(xué)習(xí)者都問他要這區(qū)區(qū)幾K的東西,他有求必應(yīng)的話也不用干事了。那還能怎么辦呢,去下載PB咯,不過這個東西我是知道的,因?yàn)楹脦啄昵皠傞_始研究嵌入式windows的時候就認(rèn)識它了,那個時候下載過,依稀記得是好幾張光碟,就公司這破網(wǎng)絡(luò),估計下幾天也下不完。
也許有朋友需要下載這個東西的,我把我找到的一個地址共享出來吧:
http://cevx.com/bbs/dispbbs.asp?boardID=4&ID=1683&page=1這個帖子里面有好幾個地址可以下載,自己選吧。唉,沒想到要為了區(qū)區(qū)幾十k的例子代碼下載好幾G的東東,郁悶ing....
沒有PB咱們也不能不干活啊,繼續(xù)搜索資料咯,看來看去,算是找到一片比較有用的入門級的驅(qū)動例子,是開發(fā)鼠標(biāo)驅(qū)動的,不過鼠標(biāo)只用一個中斷管道,和我們項(xiàng)目的外設(shè)區(qū)別還是很大的,估計要看到一個打印機(jī)的驅(qū)動例子,可能對我會有更大幫助。這個鼠標(biāo)驅(qū)動例子的地址我也共享出來:
如何編寫Windows CE.Net的usb驅(qū)動程序(1)
http://61ic.com/MCU/WINCE/yn/200611/8268.html如何編寫Windows CE.Net的usb驅(qū)動程序(2)
http://61ic.com/MCU/WINCE/yn/200611/8267.html(1)中是一些基礎(chǔ)知識介紹,(2)是鼠標(biāo)驅(qū)動的例子
最后再說一點(diǎn),有時間的話,還可以看看
www.usb.org 上的usb規(guī)范文檔。