法人向けのETC専用カード

はじめに

日本語を入力するとき、必ずIMEを使用します。

ところが日本語を入力しようとしたらIMEがOFFだったり、逆に英文字を入力しようとしたらIMEがONになっていたりして、誤入力の修正でイライラしてきます(私だけ?)
IMEの状態は、小さなIMEのツールバーを確認しなければならないので面倒です。

そこで、PCにLEDを接続して、IMEの状態を光でお知らせするものを作りました。
LEDが光っていると必ず視界に入るため、視認性が非常に良くなります。

基本的に、下記の組み合わせで使います。
・LEDのON/OFFを制御するWindows側ソフトウェア
・LEDをシリアルポートに繋ぐハードウェア
Windows側ソフトはタスクトレイにもIMEの状態を表示しますので、とりあえずハードウェアを作らなくてもソフトウェアだけで使うこともできます。

接続イメージ

完成イメージ (DSUBシェルに組み込んでみた)


注意

もし何らかの損害が発生しても当方は一切責任を負いませんので、あくまでも自己責任でお願いします。


回路図

回路図と言えるものではありませんが(汗
クリックで拡大します。

シリアルポートのDTRとRTSをHighにすると、そこから数mA程度の電源を取ることができます。
回路図中のダイオードは、できればショットキーダイオードを使うと電圧降下が少なく済みます。

シリアルポートから出力される電圧は、マザーボードは12V、USB-シリアル変換器は6V程度が多いようです。
あまり多くの電流を消費するとマザーボードやUSB-シリアル変換器を壊す可能性もありますので、電流制限抵抗は大きめにしました。
電流制限抵抗が2.2kΩあれば、大抵のLEDは12Vをかけても最大4mA程度で済みますので問題ないかと思います。
超高輝度のLEDなら4mA程度でもかなり明るいです。

1uFのセラミックコンデンサは念のため入れています。


Windows用ソフト

ImeState100.zip Version1.00 11KBytes

Visual C++で作成しました。XPで動作確認しています。

ImeState.exeを起動すると、タスクトレイに下のようなアイコンが表示されます。
IMEがOFFの状態 (シリアルポート未接続のとき)
IMEがONの状態 (シリアルポート未接続のとき)
IMEがOFFの状態 (シリアルポート接続中のとき)
IMEがONの状態 (シリアルポート接続中のとき)

タスクトレイのアイコンを右クリックすると、メニューが表示されます。

接続 シリアルポート番号を選択して接続します。
設定 後述の設定画面が表示されます。
このプログラムについて 著作権などが表示されます。
終了 このプログラムを終了します。

設定画面では、いくつかの項目が設定できます。

IME状態の監視間隔 IME状態を監視する間隔を設定します。
短い間隔にすると反応が良くなりますが、スペックが低めのPCだと処理が重くなるかもしれません。
LED接続ポート番号 ここでデフォルトのシリアルポートが設定できます。
起動と同時にポートを開く プログラムの起動時に、上記で設定したシリアルポートに自動で接続します。

ひとまずメモ帳などを起動して、IMEをON/OFFしてみてください。それに合わせてLEDもON/OFFします。
メモ帳のIMEをONにしたまま、他のウインドウに切り替えるとLEDがOFFになります。
最前面にあるウインドウの状態によってLEDがON/OFFすることを確認してください。

マザーボードのシリアルポートに接続している場合、Windowsの起動時に点滅する場合があります。
これは恐らくシリアルマウスなどが接続されているかOSが検出するためのものですので、防ぐことはできません。

当サイト内の検索