OMオン状態を追加した状態遷移表
1)初期状態 | 2)Mオン状態 | 3)Oオン状態 | 4)MOオン状態 | 5)OMオン状態 | |
---|---|---|---|---|---|
初期化 | -- | M出力1)へ | O出力1)へ | MO出力1)へ | OM出力1)へ |
文字(M)オン | Mセット2)へ | M出力 新Mセット2)へ |
Mセット5)へ | 処理A | OM出力 Mセット2)へ |
親指(O)オン | Oセット3)へ | Oセット4)へ | O出力 新Oセット3)へ |
MO出力 新Oセット3)へ |
OM出力 新Oセット3)へ |
文字(M)オフ | -- | M出力1)へ | -- | 処理B | OM出力1)へ | 親指(O)オフ | -- | -- | O出力1)へ | MO出力1)へ | 処理C |
処理A:最初の文字M1オンから親指Oオンまでの時間t1と,親指Oオンから次の文字M2
オンまでの時間t2とを比較して
t1≧t2 ならば M1出力,OM2出力,1)へ
t1<t2 ならば M1O出力,M2セット,2)へ
処理B:文字Mオンから親指Oオンまでの時間t1と,親指Oオンから文字Mオフまでの時間t2
とを比較して
t1>t2 ならば M出力,Oセット,3)へ
t1≦t2 ならば MO出力1)へ
処理C:親指Oオンから文字Mオンまでの時間t1と,文字Mオンから親指Oオフまでの時間t2
とを比較して
t1>t2 ならば O出力,Mセット,2)へ
t1≦t2 ならば OM出力,1)へ
参考) ニコラで考えた「JIS規格案」
追記
「OMオン状態」での「親指(O)オン」の時の処理も条件分岐した方がいいかも…