采用滾動數碼鼠標概念的防窺視密碼鍵盤設計
隨著信息技術的發展,各種交易卡、身份卡也越來越多地進入到人們的日常生活。在這些活動中,經常需要輸入幾位數碼的口令或密碼即個人身份碼(Personal Identify Number/PIN)以確認身份。
本文介紹一種在鼠標概念基礎上研究開發的密碼輸入方法,或者稱為密碼鼠標。這種密碼鼠標采用滾動的數碼輸入方式,只有3~4個鍵,其輸出編碼結構、數碼傳輸方法和傳輸率等與現行密碼鍵盤完全相同,最大的不同是它可以完全防止輸入密碼時被他人窺視。
1 鍵盤的整體結構和工作原理
從外部看本鍵盤包括兩部分:一部分是選碼與操作部分;另一部分是數碼顯示部分,圖1(a)、(b)分別給出了這種鍵盤的兩種外型圖。
圖1 兩種外型圖
選碼與操作部分包括功能電路和若干個操作鍵,除了有與原來鍵盤相同的功能鍵外,還有一個選碼鍵(或選碼轉輪),用該鍵取代原來鍵盤的0~9 10個數字,通過“+”或“-”的方式滾動選定0~9其中之一,然后再選定輸入。圖2是其結構框圖。
圖2 結構框圖
顯示部分是一個一位的數碼顯示管,該部分即時顯示選碼鍵(或選碼轉輪)選中的數碼。顯示部分利用光學原理和光學材料限制數碼顯示視角。
上述兩部分組合,完成密碼的輸入過程。工作原理如下:開始時鍵盤的顯示部分會顯示一個0~9之間的隨機數。通過轉動轉輪改變BCD可逆計數器的數值,當轉輪正向轉動時,計數器正向計數,即按0-1-2-3-4-5-6-7-8-9-0的規律計數;轉輪逆向轉動時,計數器逆向計數,即按0-9-8-7-6-5-4-3-2-1-0的規律計數。在該BCD碼計數器計數的同時,顯示部分即時顯示該計數器的數值。當選中要輸入的數字時,按動“選定”鍵,該BCD碼并行地存儲到鎖存器中,然后該BCD碼按設定的傳輸率輸出。按順序全部輸入完若干位密碼后,按“確認”鍵。通過加入其它的聲光提示信息還可以提高鍵盤的操作靈活性。
2 鍵盤的實現電路和關鍵技術
2.1 硬件構成
實現上述功能可以采用分立電子元件也可以用單片機實現,還可以用可編程邏輯器件實現。根據現在的技術條件,采用單片機實現上述功能比較方便。利用8051單片機的緊湊結構芯片AT89C2051可以在很小的面積上布線,并完成圖2的功能。由于AT89C2051的外部輸入/輸出引線有限,利用軟件譯碼會占用7條輸入/輸出線,所以在 AT89C2051和7段LED數碼管之間接一個BCD碼到7段顯示碼譯碼器CD4056。
從外部看,用P1.0、P1.1、P1.2、P1.3和P3.7作為五個熱鍵(鼠標式的只用三個)的輸入3.2、P3.3作為選碼轉輪的輸入接口;由P1.4、P1.5、P1.6、P1.7共4位即時傳送BCD碼到CD4056;CD4056的輸出直接驅動7段LED數碼管。P3.5為串行通信口,用于傳送經確定后的BCD碼。
評論