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