鼠標(biāo)控制芯片Mouse Warrior及其應(yīng)用
關(guān)鍵詞:MouseWarrior;鼠標(biāo);USB
1 引言
鼠標(biāo)使用簡單、操作方便,作為計算機(jī)的標(biāo)準(zhǔn)配置已有多年歷史?,F(xiàn)今一款普通鼠標(biāo)的開發(fā)已經(jīng)不存在技術(shù)難題,但隨著科技的發(fā)展,人們對計算機(jī)外圍設(shè)備的要求越來越高,鼠標(biāo)的功能也在不斷增強(qiáng)。Code Mercenaries是德國一家專門生產(chǎn)計算機(jī)外設(shè)芯片的廠商,MouseWarrior作為其主要產(chǎn)品之一,為快速開發(fā)、設(shè)計新型鼠標(biāo)提供了良好的基礎(chǔ)。
2 主要特點(diǎn)
MouseWarrior系列芯片主要包括MouseWarrior20 O、MouseWarrior20 V、MouseWarrior24 Wheel和Mouse-Warrior24 EyeII四個產(chǎn)品。其主要性能特點(diǎn)如下:
●支持USB、ADBTM、PS/2和串行接口。
●自動檢測激活的接口。
●支持三鍵(MouseWarrior20 O)、四鍵(MouseWarrior20 V、 MouseWarrior24 Wheel)和五鍵(MouseWarrior24 EyeII)。
●完全支持USB1.1人工接口設(shè)備規(guī)范。
●兼容ADBTM光標(biāo)設(shè)備規(guī)范。
●分別采用光積分編碼傳感器(MouseWarrior20 O, MouseWarrior24 Wheel)、VersaPointTM傳感器(MouseWarrior20 V)和光運(yùn)動傳感器(MouseWarrior24 EyeII)。
●支持用于滾動的光電滾輪或雙鍵(MouseWarrior24 Wheel、MouseWarrior24 EyeII)。
●擴(kuò)展的串口協(xié)議以支持4個按鍵。
●與標(biāo)準(zhǔn)驅(qū)動程序兼容無需編寫專用的驅(qū)動。
●采用低成本陶瓷振蕩器。
●單5V供電。
圖1
3 引腳功能
MouseWarrior系列芯片的引腳排列如圖1所示,各引腳功能如下:
D+、D-:USB接口的差動數(shù)據(jù)線,不使用USB接口時D+拉高,D-接低。
PS2CLK/Ser、PS2Data(MouseWarrior20 O、Mouse-Warrior20 V、Mouse Warrior24 Wheel):PS/2鼠標(biāo)接口線,與主機(jī)接口相連。PS2CLK可作為串口的輸出,連接到RS232驅(qū)動芯片上可驅(qū)動串口鼠標(biāo)TXD線。不使用時必須懸空(內(nèi)部上拉)。
PS2CLK、 PS2Data(MouseWarrior24 EyeII):PS/2鼠標(biāo)接口線,與主機(jī)接口相連。不使用時必須懸空(內(nèi)部上拉)。
RTS(MouseWarrior20 O, MouseWarrior20 V,MouseWarrior24 Wheel):串口RTS信號輸入,需要外部輔助電路。當(dāng)該引腳拉低時停止串口數(shù)據(jù)傳遞,從低變高時復(fù)位芯片。不使用串口時該引腳必須拉低。
ADB:ADB接口數(shù)據(jù)線,不使用時必須懸空(內(nèi)部上拉)。
North、South、 East、 West(MouseWarrior20 V):與Interlink Electronics VersaPointTM傳感器相連。當(dāng)最大外力作用于傳感器時,應(yīng)在該引腳上連接一電阻?用于雙積分電路中來給電容放電(詳見實例介紹)。
X1、X2、Y1、Y2(MouseWarrior20 O,MouseWarrior24 Wheel):光積分編碼或鼠標(biāo)機(jī)械部分的信號輸入,X1下降沿先于X2下降沿表示右移,Y1下降沿先于Y2下降沿表示上移。內(nèi)部通過電阻上拉,光電轉(zhuǎn)換器必須有下拉電阻或采用施密特觸發(fā)型光探測器。
PD、SDIO、SCLK(MouseWarrior24 EyeII):這些引腳可直接與ADNS2051傳感器的相應(yīng)引腳相連(內(nèi)部上拉)。
Z1/Down, Z2/Up(MouseWarrior24 Wheel,MouseWarrior24 EyeII):滑動滾輪或按鍵的光積分編碼輸入。可通過Buttons引腳激活該功能。Z1下降沿先于Z2下降沿表示向上滑動。內(nèi)部通過電阻上拉,光電轉(zhuǎn)換器或按鍵必須下拉接地。
Buttons(MouseWarrior24 Wheel,Mouse-Warrior24 EyeII):使用滾輪功能時該引腳懸空。使用按鍵產(chǎn)生滑動功能時該引腳接地,并把滑動按鍵分別接至Z1/Down, Z2/Up引腳(內(nèi)部上拉)。
En(MouseWarrior20 O,MouseWarrior24 Wheel):光積分編碼器的LED使能信號。漏極開路輸出,可吸收24mA電流,需外接電阻。
En(MouseWarrior24 EyeII):HDNS2000(光學(xué)感測芯片)的電源使能信號。 漏極開路輸出,內(nèi)部通過電阻上拉,需外部輔助電路。
Left、Right、Center:鼠標(biāo)左、右、中按鍵輸入。內(nèi)部上拉,輸入信號必須接近于地。
4th(MouseWarrior20 V, MouseWarrior24Wheel, MouseWarrior24 EyeII):鼠標(biāo)第4鍵輸入。內(nèi)部上拉,輸入信號必須接近于地。
5th(MouseWarrior24 EyeII):鼠標(biāo)第5鍵輸入。內(nèi)部上拉,輸入信號必須接近于地。
CExt:當(dāng)USB掛起以檢查喚醒條件時,該引腳用來周期性的喚醒處理器。需外接RC電路。
Pull to GND:該引腳用于將MouseWarrior最終產(chǎn)品接地。
XOut、XIn:外接6MHz陶瓷振蕩器(石英振蕩器可能導(dǎo)致不穩(wěn)定),無須其它輔助器件。也可在XIn引腳輸入外部6MHz時鐘信號,此時需將XOut引腳懸空。
GND:電源地。
Vcc:電源正極。
圖2
4 工作特性與接口描述
MouseWarrior芯片在上電時執(zhí)行一系列復(fù)位操作。剛上電時,所有內(nèi)部上拉被禁止,在復(fù)位操作中被使能。初始化完畢后,MouseWarrior檢測哪個鼠標(biāo)接口是激活的,如果在5s內(nèi)沒有檢測到任何激活的接口,則MouseWarrior默認(rèn)采用PS/2接口方式。
采用USB通用串行接口方式時,MouseWarrior作為標(biāo)準(zhǔn)人機(jī)接口設(shè)備(HID),與標(biāo)準(zhǔn)驅(qū)動兼容,國家代碼是0。MouseWarrior20 O定義了3個鼠標(biāo)鍵,MouseWarrior 20V定義了4個鼠標(biāo)鍵,MouseWarrior24 Wheel和MouseWarrior24 EyeII定義了4個鼠標(biāo)鍵和滾輪。
采用PS/2接口方式時,MouseWarrior設(shè)備標(biāo)示為0,定義了左、中、右三個鍵與系統(tǒng)標(biāo)準(zhǔn)驅(qū)動兼容。MouseWarrior24 Wheel和MouseWarrior24 EyeII與Microsoft Intellimouse ExplorerTM協(xié)議的PS/2接口設(shè)備兼容。他們的設(shè)備號可定義為3——附加了滾輪設(shè)備,或定義為4——附加第4個按鍵。
由于ADB(蘋果電腦桌面總線Apple Desktop Bus)與串口鼠標(biāo)目前在國內(nèi)使用較少,因此不再贅述,有興趣者可參閱有關(guān)文獻(xiàn)。
5 應(yīng)用電路
圖2為用MouseWarrior20 V設(shè)計的鼠標(biāo)電路,圖中標(biāo)出了傳感器接口電路。該電路支持USB、ADB、PS/2 和串行接口,讀者可根據(jù)需要有所取舍,也可讓終端用戶選擇合適的接口。