US配列と日本語配列の対応について作ってみた。今回はそのままタイプした場合とシフトキーを押した場合で対応づけている。
SHIFTキーを押している状態をマイコン側で保持して、ダマすことになる。ALTキーやCNTLキーを併用した場合も考慮する必要があるかも。
キートップとスキャンコード
和 英 code 英→和 変換後
漢 ~` 0x0E SHIFT+0x55/SHIFT+0x54
1! 1! 0x16 -
2" 2@ 0x1E 0x1E/0x54
3# 3# 0x26 -
4$ 4$ 0x25 -
5% 5% 0x2E -
6& 6^ 0x36 0x36/0x55
7' 7& 0x3D 0x3D/SHIFT+0x36
8( 8* 0x3E 0x3E/SHIFT+0x52
9) 9( 0x46 0x46/SHIFT+0x3E
00 0) 0x45 0x45/SHIFT+0x46
-= -_ 0x4E 0x4E/0x51
^~ =+ 0x55 SHIFT+0x4E/SHIFT+0x4C
\| 無 0x6A -
@` [{ 0x54 0x5B/SHIFT+0x5B
[{ ]} 0x5B 0x5D/SHIFT+0x5D
;+ ;: 0x4C 0x4C/0x52
:* '" 0x52 SHIFT+0x3D/SHIFT+0x1E
]} |\ 0x5D SHIFT+0x6A/0x6A
__ 無 0x51 -
以下は対応なし
無変換 - 0x67
前候補 - 0x64
カタカナ - 0x13
参考文献:PC周辺機器オリジナル設計ガイド2 Interface2005年12月号別冊付録