為了出差方便,筆者購置了筆記本電腦,由于筆記本電腦已淘汰了PS2接口,于是家中的PS2鼠標(biāo)就被閑置了起來,筆者突發(fā)奇想,USB鼠標(biāo)可以通過一個(gè)簡易的轉(zhuǎn)接器插到臺式機(jī)的PS2口中使用,反過來行不行呢?筆者做了試驗(yàn),結(jié)果卻很失望,根本不行。看來需要另辟蹊徑,于是,一不做二不休,用PDIUSBD12和51單片機(jī)設(shè)計(jì)了一個(gè)PS2轉(zhuǎn)USB的協(xié)議轉(zhuǎn)換器。原本其實(shí)并不抱太大的希望,結(jié)果卻神奇般地成功了,而且不需要另外編寫驅(qū)動(dòng),采用USB直接供電,識別為USB鼠標(biāo),十分好用,現(xiàn)將制作成果分享如下。
硬件設(shè)計(jì)
電路原理圖如圖1所示。
PDIUSBD12是應(yīng)用十分廣泛的并行接口USB控制芯片,作為實(shí)現(xiàn)USB接口的標(biāo)準(zhǔn)組件,D12使設(shè)計(jì)者能夠靈活選擇合適的MCU,用最經(jīng)濟(jì)最快的方式實(shí)現(xiàn)USB外設(shè)的解決方案。
S52主要完成PS2接口鼠標(biāo)的控制與數(shù)據(jù)獲取,并通過PDIUSBD12與PC完成鼠標(biāo)協(xié)議數(shù)據(jù)的傳輸。
為了精簡電路,S52使用D12的可編程時(shí)鐘源,通過編程輸出高達(dá)24MHz的時(shí)鐘,供S52使用;觀察調(diào)試輸出的Uart波特率需要為19200bps,便于快速輸出信息,不耽誤正常的USB枚舉。