SH69P04單片機實現(xiàn)USB和PS2端口的MOUSE設(shè)計_第1頁
SH69P04單片機實現(xiàn)USB和PS2端口的MOUSE設(shè)計_第2頁
SH69P04單片機實現(xiàn)USB和PS2端口的MOUSE設(shè)計_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、【W(wǎng)ord版本下載可任意編輯】 SH69P04單片機實現(xiàn)USB和PS2端口的MOUSE設(shè)計 引言: USB低速設(shè)備的設(shè)計發(fā)展到現(xiàn)在已經(jīng)有了相當?shù)某墒於取?各家IC公司都推出了USB DEVICE端的解決方案, 一般以8 BIT CPU CORE + USB SIE為主流構(gòu)架。 SH69P04是中穎電子(Sinowealth)本著豐富USB產(chǎn)品應(yīng)用,降低USB IC成本而設(shè)計的4BIT OTP單片機, 用以開發(fā)USB DEVICE設(shè)備。 SH69P04的功能及特點 圖1 1. USB和PS2端口共用 通過存放器實現(xiàn)USB端口和PS2端口的切換 PS2PU = 1: 如果PS2IS = 1, 則內(nèi)

2、部PS2專用上拉電阻起作用。當需要使用USB端口時, 只要讓PS2IS = 0即能關(guān)閉PS2端口及其上拉電阻。 2. 1.5K可控上拉電阻 如圖2, 有了這個1.5K可控上拉電阻一方面可以節(jié)約成本, 另一方面可以實現(xiàn)軟開關(guān), 確保PC認出DEVICE。 當USB DEVICE和PC相連后由于內(nèi)部1.5K上拉電阻并未打開, 所以PC不認為有新的設(shè)備連接。 在打開上拉電阻前用戶可以放心的完成程序初始化及其它客戶程序, 而不必擔心需要及時響應(yīng)USB總線上的信號。 這是因為如果沒有可控的上拉電阻而是直接外加, 那么當DEVICE和PC相連后, PC馬上就會知道有新的設(shè)備連接, 在一定時間后就會向DEV

3、ICE發(fā)送信號, 如果DEVICE連續(xù)幾次通訊失敗的話, PC就認為該DEVICE出錯而不會再和它通訊。 另外結(jié)合Watch Dog可以進一步確保DEVICE的連接。 用戶可以事先計算一下整個USB初始化過程所需的時間, 并設(shè)置Watch Dog。 萬一USB初始化出錯就可以產(chǎn)生Watch Dog Reset, 1.5K上拉就被關(guān)閉, 程序重新開始。 PC就會認為DEVICE有了插拔動作。程序死鎖也可以用這種方法來解決。 圖 3 3. 專為MOUSE設(shè)計的I/O端口 如圖3, 原理分析時Q1.1和Q1.3是輸出方波。 實際上由于Photo Transistors是采用光敏三極管, 當光柵轉(zhuǎn)動時

4、, 光敏三極管受到的光線也是連續(xù)變化的, 所以輸出的波形也是連續(xù)變化的。 又因為光柵無法完全阻隔光線, 所以會產(chǎn)生一個OFFSET電平。 實際波形如圖4。 圖中VIH表示一旦輸入電平高于VIH, 那么MCU就認為是高電平。 VIL表示一旦輸入電平低于VIL, 那么MCU就認為是低電平。 在圖4所示的這種狀態(tài)下MCU可以很方便的讀到光柵轉(zhuǎn)動的情況。 但是由于干擾或者元器件老化等原因造成OFFSET電平發(fā)生變化, 使得輸入信號的電平無法和VIH、VIL相交(如圖5), MCU就會認為輸入的信號一直為高或一直為低。 SH69P04為每一個MOUSE的端口提供三檔下拉電阻(如圖4)來控制OFFSET電

5、平。 通過存放器來選擇下拉電阻的阻值, 用以解決由于OFFSET電平的變化而引起的錯誤。 軟件設(shè)計 USB協(xié)議雖然很復(fù)雜, 但是MOUSE端需要編寫的程序卻十分有限。 用戶很容易就能和PC建立聯(lián)系。(Windows端HID驅(qū)動程序由操作系統(tǒng)提供) 1. USB/PS2端口的監(jiān)測 步: 上電, delay 50ms 第二步: 在2ms的時間內(nèi)監(jiān)測D-的電平, 如果有4次為高電平, 就是PS2接口。 否則進入第三步第三步: 打開USB上拉電阻, delay500us, 反復(fù)監(jiān)測D+和D-的電平, 直到其中有一個出現(xiàn)高電平。 如果D+是高電平, 則為PS2接口。 如果D-是低電平, 則進入第4步。第四步: 關(guān)閉USB上拉電阻, delay 100us。 如果D+/D-都為低電平, 則為USB接口。 否則就是PS2接口。 2. USB Enumeration過程 整個過程有點像做測試題。 PC問, MOUSE答復(fù)。 其中關(guān)鍵是要告訴PC, 自身是一個MOUSE, 支持HID協(xié)議。 由于篇幅有限, 就不詳細列出了。 3. 把MOUSE的信息傳給PC 在Enumeratio

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論