[Homepage][BBS][Blog][YouTube][asablo]

エアーバリアブルBBS
新エアーバリアブルBBS
初めにお読み下さい Please read first ホームページ ブログ YouTube 過去ログ倉庫
ローコストLCDシリアル通信モニター(外部クロック版)につきまして
エアーバリアブルさま

こんにちは。air_variable_@yahoo.co.jp
すばらしい、工作記事ありがとうございます。

現在、PIC16FとPIC18F間をシリアル非同期19.2kbpsでつなぎ
18Fは232-USB変換機として、PC上のターミナルで、PIC16Fから
送られてくるシリアルデータを見ています。
PCからはUSBポートがCOM4として認識され、問題なく見れています。
そこで、PIC16とPIC18間(5V CMOSレベル)のシリアルモニタを探していたところ
貴殿のHPを拝見して、さっそく作って動作を見ておりますが、LCDに文字が
表示される気配がありません。
PIC16F648がなかったので、16F628Aに焼いてみましたが、電源投入でLCDに
カーソルが表示され、HEXとアスキーの切り換え、ボーレートの変更もできて
おり、何が原因かわからず時間ばかりがすぎていきます。
むろんボーレートは19.2kbpsに設定しています。

100kΩプルアップをPICのポートに直結して100Ωをシリーズに挿入
したり、逆にPICポートに100Ωをシリーズに入れたあと、100kで
Vddにつってみたりしても相変わらずキャラクタが表示されません。

何かアドバイスあればお願いいたします。


PS 電源電圧が5VではLCD初期化がうまくいかないことがありました。
4~4.8Vくらいにすると安定しています。
  • デコパッチ
  • 2014/09/18 (Thu) 21:10:57
Re: ローコストLCDシリアル通信モニター(外部クロック版)につきまして
デコパッチさん、こんにちは。
ローコストLCDシリアル通信モニターの件で動作しないとの事ですが、
以下の事をご確認してみてください。

1.通信フォーマット 8ビット、パリティ無し、ストップ1ビット
2.ボーレート切り替えやモード切り替えが動作しているか(PICの動作がしているかの確認)
3.外付けクロックの周波数が8MHz
4.電源は急激に電源が立ち上がる事。(なだらかな電源入力では立ち上がらないおそれがあります。)
5.LCDが正常かを確認する。(できれば別のLCDモジュールを用意)

また、USBシリアルをご使用との事ですので、TeraTermなどのソフトをPC経由で接続し、パソコンからの
電文が表示されるかの確認ができると思います。

16F628はBORリセット電圧を利用すると4.2Vのため、3.3Vでも使用したかったので、ブラウンアウトなどは
使用していません。そのことから電源投入時に不安定になる場合があります。

リセットを改善したPIC16F1827(PIC16F648と同一回路)や
http://www.ne.jp/asahi/air/variable/picmel/applications/lcd_serial/16f1827/index.html

PIC16F1823
http://www.ne.jp/asahi/air/variable/picmel/applications/lcd_serial/index.html

のデバイスの使用をおすすめします。

  • air_variable
  • 2014/09/20 (Sat) 20:46:20
Re: ローコストLCDシリアル通信モニター(外部クロック版)につきまして
エアーバリアブルさま

さっそくありがとうございます。

16f628Aへの書き込み、および初期動作は問題ないようです。
使っているLCDが1602ではなく、3202という横長ですが、電源入れて立ち上がり
カーソル表示されたあとは、ボタンを押してボーレートの設定もできます。

1.通信フォーマット 8ビット、パリティ無し、ストップ1ビット

標準ですので、その設定で見ております。

2.ボーレート切り替えやモード切り替えが動作しているか(PICの動作がしているかの確認)

きちんとLCD上で切り換え可能で、そのデータも保存もされているようです。
初期値は38400だったと思います。
PIC16(送信元)とPIC18F(受信元かつUSB IF)の間の、シリアル通信はできており、USB
経由でPC上のTeratermではそのログが表示されるので、逆にPIC間の通信がモニタできないのが
非常に不思議というか、きつねにつままれた感じです。まさかと思って、TX、RXの入れ替えもやって
みましたが、徒労に終わりましたww


3.外付けクロックの周波数が8MHz

セラロックですが、8MHzです。許容範囲だと思うのですが。



4.電源は急激に電源が立ち上がる事。

電源のインピーダンス(内部抵抗)はあまり気にしていません
でしたが、これまでの経験上、菊水のデジタル電源使ってますが
問題になった事は一度もないので。。。電池ドライブにしてみるくらい
でしょうか。



5.LCDが正常かを確認する。(できれば別のLCDモジュールを用意)

残るは、このLCD問題ですが。。。標準の1602に差し替えてみます。
(手元にはないのですが。。。8文字2桁というのはあるんですが)


628Aが問題かなーという気もしますが、エアーバリアブルさまの記事
を読む限り、基本的には問題なさそうですし。。。はまっております。
PIC16F1シリーズ安くていいのですが、まだ手を出しておりません。
しかし、このシリーズは性能の割にお値段が安いのですね。すばらしいです。

ちなみに、ソースをいじるとしたら、CCSなので、HI-techは一度も使った
事がなく、何もできずにおります。

進展ありましたら、またご報告いたします。
ありがとうございます。
デコパッチ
  • デコパッチ
  • 2014/09/21 (Sun) 02:23:58
Re: ローコストLCDシリアル通信モニター(外部クロック版)につきまして
デコパッチさん
はじめまして、nです。

MPLABでビルドされたのではなく、
ライタにhexファイルをインポートされたのでしょうか?

configuration Bitsが、3f02になっているか確認してください。
  • n
  • 2014/09/21 (Sun) 03:45:20
Re: ローコストLCDシリアル通信モニター(外部クロック版)につきまして
nさま

こん**は。

>MPLABでビルドされたのではなく、ライタにhexファイルをインポートされたのでしょうか?

ええ、そうです。アセンブラはPIC入門のとき勉強した程度で
ほとんどさわっていません。(というか私の頭では無理ww)
エアーバリアブルさま作のローコストシリアルモニタが今回の目的にぴったりで
そのまま使わせていただこうと思って実験しております。

プログラマはpickit2です。いま628Aのコンフィグみてみましたが
アドレス2007のビットは2102になっており、3f02ではありませんが
設定可能なビットは立っているようです。
  • デコパッチ
  • 2014/09/21 (Sun) 09:36:14
Re: ローコストLCDシリアル通信モニター(外部クロック版)につきまして
デコパッチさん
コンフィグをリードして2102なら、これは原因ではないようです。
ハードウェア(誤配線や部品不良、接続手順)を確認しましょう。

配線に回路図と異なる所はないですか?
PICの7番ピン(RB1)を、片方向の通信データラインに並列に接続していますか?
電源ON後待ち時間をおいて、RB1をデータラインと接続したらどうなりますか?
PICの電源(5,14ピン)に4.7kオームを並列に追加した場合、動作はどうなりますか?
  • n
  • 2014/09/21 (Sun) 11:41:35
Re: ローコストLCDシリアル通信モニター(外部クロック版)につきまして
デコパッチさん

LCDにメニューが表示されているのであれば、電源の立ち上がりとLCDの原因は払拭されます。
ですので、最終的には通信のRXへの信号入力の問題だけとなります。
USBシリアルのTXOUTを、LCDシリアルモニタのPIC16F628の7ピンに100オームの抵抗をつないで接続
してみて、パソコンからデータが現れるかを確認してみるとよいと思います。
なお、通信がされていない時の、RXの状態は5Vになっているはずです。テスターなどでご確認ください。
また通信の論理が逆転していないかもご確認ください。(MAX3232などのトランシーバICが仲介することは不可です)

私が経験したレアなケースですが、PICの通信ポートが壊れている事があり、動作不良に
陥ったことがありました。同一PICがあれば、それに書き込み直して動作チェックすることを
おすすめします。

  • air_variable
  • URL
  • 2014/09/21 (Sun) 15:05:21
Re: ローコストLCDシリアル通信モニター(外部クロック版)につきまして
air_variableさま

ありがとうございます。

>私が経験したレアなケースですが、PICの通信ポートが壊れている事があり、

当方も車載していたPIC自作機器の232ポートが壊れた経験があります。
特に、232ポートは、Di2本による、過電圧などによるリスク軽減をすべき
か(特に車載の場合)という気がしております。今回はこれ以上、確かめようが
ないので、エアーバリアブルさまのおっしゃるように、16F1シリーズへの
変更を考えているところです。

232のロ―アクティブは変更していないので、論理の逆転はないと思われます。
ccsの#use rs232ディレクティブの指定で、論理の逆転もできるようですが、
そこまで試していません。なんせ、皆ふつーにつないでいるだけなので。
いまのところ、628AのUARTポートが逝ってる可能性が高いと思っております。

ありがとうございました。
  • デコパッチ
  • 2014/09/21 (Sun) 23:20:43

返信フォーム






プレビュー (投稿前に内容を確認)