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