超ローコストRS232Cモニター

Topics PICC lite USART LCD Interrupt PIC16F627A PIC16F628A PIC16F648A

性能が上がったバージョンを公開しました。詳しくはここをクリック!


2004/4/10

究極のローコストRS232Cモニターです。パソコンにつなげなくてもすぐに使用できる機動性がよいです。
部品は、見えるように配置しましたが、液晶の下に部品を配置すれば、液晶サイズの面積で小型化も可能です。





仕様
受信スピード SW2-3,4を切り替えることにより、2400,4800,9600,19200bpsを選択可能
パリティ無し、ストップ1ビット
エコーバック SW2-2をオンすることによって切り替え可能
メッセージ無しモード SW2-1をOFFにすると、無条件で19200bps ECHO OFFになる
受け付けキャラクター ANK文字、Enter(\r),ページクリア(Ctrl+L)
送信キャラクタ SW3を押すと、Enterコードを出力
DCE端末方式 DSUB 9ソケットストレート配線
 ※DTE端末(パソコンの代わり)にする場合、DSUB9ピンで2番と3番を入れ替える
部品代の目安:1500〜2000円位
LCD:800円
PIC16F648:300円
74HC14:30〜50円
DIPSW:50円
タクトスイッチ30円X2
DSUB9コネクター 100円
ショットキーバリアダイオード(100mA)、抵抗、電池ボックス、電池、ICソケット、配線電線、基板など 300〜500円

回路は、いかに部品を使わないで安いRS232Cモニターを作るかという事を考え、この方法に落ち着きました。プルアップ抵抗ですら勿体無いので、RBポートに割り当て、RBPUを使用しています。
RS232Cの部分も汎用ゲートICをつかっています。HC14をなぜ3つ繋げるかというと、手配線での空きピン処理を簡単にする為です。こうすれば、わざわざ空きピンにVCCやGNDを繋がなくても済みます。
Hitech PIC-C liteでは、PIC16F627を使う事ができますが、このバイナリーデータは最近流通している16F628A,16F648Aへ書き込む事ができます。すぐに動かしてみたい方はバイナリーデータを用意しましたので、PICライターを使用しPIC16F627,PIC16F628,PIC16F628A,PIC16F648Aのいずれかに書き込めば、すぐに動作を確認する事ができます。


ソフトウェアについて
ソフトウェアは、Hitech PIC C に付属しているサンプルを利用しています。
サンプルはC:\PICCLITE\samples かC:\HT-PIC\samples にあります。
これを、自分の使う用途に手直しして使います。今回使うものは、lcd、timer、usartのフォルダにある*.cと*hを使用しています。

lcd.cについては、ハードウェアに合わせた加工が必要です。usartのフォルダーにはiserial.cとserial.c、そしてsci.cがありますが、sci.cを使用しています。sci.cと共にsci.hもつかいます。このヘッダーファイルの内容は、extern 宣言(外部変数宣言)がされていないのですが、このままでも一応ビルドは可能です。

ソースファイル ヘッダーファイル 主な機能 ノート
main.c なし メイン 1から作る
delay.c delay.h タイマー用 サンプル流用
sci.c sci.h RS232C通信 サンプル流用
lcd.c lcd.h LCD制御 サンプルを修正


使用するソースを圧縮形式にて一式まとめてあります。適当なフォルダーに解凍してまず準備しましょう。
説明ではC:\picsrc\lcd232cにファイルを展開しています。
2009/1/11以前に公開されているlcd.cを含んだプロジェクトは修正が必要になります。詳しくはこちらをご覧ください。



MPLAB6.50を起動します。

その後、Project -> Project Wizard...を選択します。



ウイザードが開始されるので、次をクリックすると、デバイスの選定になるのでPIC16F627を選択します。



Active ToolsuiteがHI-TECH PICC Toolsuiteになっているかを確認します。



プロジェクトを管理するフォルダーと名前を決めます。名前は何でも構いません。


Project Directoryには、先ほどファイルを解凍したフォルダーを選択します。



使用するファイルを選択します。先ほど解凍したフォルダーの*.c、*hを全て選択してAddボタンをおします。ここで、選択しなくても、後ほどプロジェクトウインドウで追加する事が可能です。



これで、準備は整いました。完了を押します。



プロジェクトウインドウには、この様に自動的にヘッダーファイルとソースファイルとに仕分けされて一つのプロジェクトlcd232c.mcpとなります。ソースやヘッダーの追加や削除はSource Files/Header Filesの部分を右クリックすれば、サブメニューが現れます。



main.cをダブルクリックすれば、ソースを表示します。メインとなるプログラムは、ビルドする時にmain()関数がある所を自動的に見つけ出してコンパイルするため、main.cの名前でなくても構いません。



Build Allボタンを押せば数秒後にはコンパイルが終わり、PICへ書き込み可能なlcd232c.hexが生成されます。



フォルダーの中を覗くと色々なファイルが生成されている事が確認できます。下の反転したファイルがPICに書き込むとき必要なファイルになります。


ビルドのオプテマイズについて(2004/5/1)

サンプルで用意している超ローコストRS232Cモニターについて、PICC liteではビルドがうまくいくのに、21日評価版ではエラーになります。これは、メモリーが不足する為におきます。回避方法があります。Project -> Bulid Options -> Projectを選択するか、緑色の歯車ボタンを押し、PICC Compilerタブを選択すると、Genarate command line の項目中に、Optimizations の部分のEnable assembler optimizationにチェックし、OKを押してから、ビルド(f10キーを押す)とアセンブラが最適化されビルドされます。
PICC liteも同様の設定が可能です。(-O オプション)このサンプルでは、ROMの使用率99.9%が82.8%になりました。
実際に書き込んで動作は確認済みです。

2007/12/9 性能が上がったバージョンを公開しました。詳しくはここをクリック!
2005/2/3 LCDのデータ線でグラウンドに落としていた部分を外しました。

(C)2004 air variable All Rights Reserved..


ホーム