■ グラフィックLCDで、RS-232Cターミナルの製作 ■


 グラフィックLCDの応用回路、第3作。
 PS/2キーボードとグラフィック液晶をAVRで制御し、RS-232Cシリアル・インターフェースの端末を製作しました。
 
 表示文字数は、21文字×8行と少ないですが、演算結果の出力や、BASCOM-AVRのデバッグ時に、変数の値等を簡単に表示することができます。
 (1行が21文字以上の場合は、折り返して表示されます)
 
 コンパクトに仕上げることと、安価なキーボードの使用で、製作費が5,000円程度になるように、目指しました。


 
LCDパネルをチルドアップできるケース

 

 
メイン基板にLCDを取り付けた形の例


回路の概要
 
1.電源回路

 
 ・5VのACアダプターから電源を供給します。

2.AVRとクロック
 
 ・AVRマイコンは、ATmega88-20を使用し、動作クロックは、8MHzの内蔵RC発振器を使用して
  います。

3.グラフィックLCD回路
 
 ・128x64ドット表示の、秋月電子「SG12864ASLB-GB」や「TG12864B-02WWBV」が使用できます。
 ・液晶により、バックライト用電圧と電流が違うため、抵抗で調整して下さい。
 ・液晶のコントラストは、半固定ボリュームで調整して下さい。

4.PS/2キーボード接続回路
 
 ・パソコン用に市販されている、PS/2キーボードが接続できます。
 ・コネクターは、ミニDIN6ピンです。
  (USB接続タイプのキーボードは、変換アダプターを使用して下さい)
 ・ユニバーサル基板で製作する場合は、「サンハヤト」から、コネクタ付きの変換基板「CK-27」が
  発売されているので、2.54mmピッチ基板にも取り付けができます。

5.シリアル インターフェイス(RS-232C)回路
 
 ・電源電圧が5V単一なので、定番のMAX3232でレベル変換を行っています。
 ・ホストとの接続は、RS-232C 9ピン メス-メス クロスケーブルを使用します。
 ・ユニバーサル基板で製作する場合は、「サンハヤト」から、変換基板「CK-10」が発売されて
  いるので、2.54mmピッチ基板にも取り付けができます。

6.マイコン用ピンと、スイッチ回路
 
 ・RS-232Cインターフェースを搭載していない回路でも、マイコンのTXDとRXDピンに、5Vレベルで
  接続できる端子を用意しました。
 ・デバッグ時に、テスト・クリップで接続して、出力や試験ができます。
 ・この装置からのシリアル出力は、5VレベルとRS-232Cで同じ物が出力されますが、入力は
  切り換える必要があるので、スイッチが付いています。



回 路 図  GIF版 PS2R232Cir.gif (96KB)  PDF版 PS2R232Cir.pdf (192KB)

部品配置図  GIF版 PS2R232Pcb.gif (108KB)
アートワーク  GIF版 PS2R232AW.gif (192KB)
   注意! この図面を使用した、いかなる損害にも責任を負いません。

プログラム  テキスト形式 ソースファイル  PS2R232C102.TXT (31KB)
 BASCOM-AVR用 ソースファイル
 (KS0108チップ用ライブラリが必要です)
 PS2R232C102.bas (31KB)
 インテルHEX形式 オブジェクトファイル  PS2R232C102.HEX (12KB)
 
注意! 著作権は放棄しておりませんので、販売や配布目的での使用は絶対にしないで下さい。

       (記事の無断転載を除き、個人での使用は可能です。 改変、自作品の掲載、リンクもご自由に。)



 
 右側面

 
 前面

 
マイコン用ピンケーブル

 
 後面

 
チルドアップ構造

 
内部 上面

 
内部 側面

 
プリント基板

 
基板 部品面

 
基板 ハンダ面


AVRマイコン ATmega88の、ヒューズ ビット書き換え
 
AVR ATmega88のシステム クロックは、工場出荷時に1/8前置分周器が有効に設定されているので、これを無効にするため、AVRのヒューズ ビットを書き換える必要があります。

◎BASCOM-AVRで「AVRISPmkII」の書き込みウィンドウを使用する場合は、ヒューズ ビットが自動で
 変更されますから、以下の操作は不要です。


下記ページの書き換え方法 「6.」を、以下の様に変更して、ヒューズ ビットの書き換えを行います。

    ヒューズ ビット書き換え

 6.[ FusebitC ] の右欄 [ 0:Divide Clock by 8 Enabled ] をクリックすると、右側にプルダウン
   メニューが現れますから、 [ 1:Divide Clock by 8 Disabled ] を選択します。
 
   [ Fusebit DEF ] の右欄 [ 111:BOD disabled ] をクリックすると、右側にプルダウン
   メニューが現れますから、 [ 100:BODLEVEL 4.3 V ] を選択します。

「AVRWRT」 ライターの場合は、AWRTf_PS2RS232.gif



操作方法
 
1.電源投入
 
  ・電源が投入されると、現在のプログラム・バージョンと、現在のボーレートを表示し、ターミナル
   動作に入ります。

 
2.ボーレートの設定
 
 ・初期状態では、9,600ボーに設定されています。
 
 ・ファンクション [F9] キーを押すと、ボーレートの設定
  モードに入ります。
 ・左画面のように、ボーレートを数値で入力し、[Enter]
  キーを押して下さい。
 ・設定されたボーレートは、内部EEPROMに記憶されます
  ので、電源をオフにしても、値は変わりません。
 ・76,800ボー以上では、文字化けが発生しました。

 ・ファンクション [F9] キーを押し、数値を入力せずに
  [Enter]キーを押すと、現在のボーレート値が反転
  表示されます。

 ・UARTの通信パラメータは、下記の値で固定です。
   パリティー無し
   データ・ビット 8
   ストップビット 1

 
3.機能キーの扱い
 
 
 ・機能キーで有効なのは、[Enter]、[Space]、[Backspace]、[Shift]、[Ctrl]のみです。
  ・他のキーを送信する場合は、プログラム内の、「キー・スキャンコード → ASCIIコード
   変換テーブル」を修正して下さい。
 
      「JIS配列PS/2 キーボードスキャンコード表」 を参照。



○パーツの参考資料
 ・基板  「サンハヤト」 感光基板 12K 紙フェノール 片面 1.6tx100x150mm
 ・ケース  「TAKACHI」 OP型開閉プラスチックボックス OP-125G 100×125×45mm
 ・ACアダプター  「秋月電子通商」 超小型スイッチングACアダプタ 5V 1A
 ・PS/2 キーボード  「SANWA SUPPLY」 超ミニキーボード SKB-SL10BK






● バージョン・アップ

 ・基板上のフリースペースにDIPスイッチを追加して、キーボードを接続しない状態でも
  汎用のボーレートを7種類選択できるようにしました。
  (回路図と部品配置図は、上記を参照)
 
 ・[Ctrl]キーによる制御コード(&H00〜&H1F)を送信できるようにしました。
  (例.[Ctrl]+[Enter]または[Ctrl]+[J]で、[LF]を送信)

プログラム  テキスト形式 ソースファイル  PS2R232C111.TXT (33KB)
 BASCOM-AVR用 ソースファイル
 (BASCOM-AVR(製品版)が必要です)
 PS2R232C111.bas (33KB)
 
注意! 著作権は放棄しておりませんので、販売や配布目的での使用は絶対にしないで下さい。

       (記事の無断転載を除き、個人での使用は可能です。 改変、自作品の掲載、リンクもご自由に。)


 
DIPスイッチを追加

 
ハンダ面


操作方法
 
DIPスイッチによるボーレートの設定

 ・DIPスイッチによるボーレートの選択は、電源投入時のみ有効です。
  (通電中にDIPスイッチを切り換えても、変更されません)
 
 ・通電中は、ファンクション [F9] キーにより変更が可能です。

DIPスイッチ ボーレート 備    考
 -
OFF OFF OFF  固定設定無し   電源投入以前のボーレートを継続します。 
 -
OFF OFF ON 300  
 -
OFF ON OFF 1200  
 -
OFF ON ON 2400  
 -
ON OFF OFF 4800  
 -
ON OFF ON 9600  
 -
ON ON OFF 19200  
 -
ON ON ON 38400  


◎ このプリント基板と、書き込み済みAVRまたはHEXファイルを、実費頒布可能です。
  頒布室のメールアドレスからお問い合わせ下さい。
 
 


   電子工作の部屋 Top へ 前のページへ戻る