- ベストアンサー
RS232CとPIC(16F877A)を用いた通信工作
- RS232CとPIC(16F877A)を用いて通信を行う工作についての質問です。
- 現在の状況として、5Vを直接ピンに印加すると入力があったとみなされず、一瞬だけ印加すると入力が入ったとみなされるという問題が発生しています。
- 解決策を求めており、5Vの印加をなくすことで入力がなくなるようにしたいのですが、方法がわかりません。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
NO1です。 PICマイコンは3V電源でも動作しますが、PICを5Vで動作させている限り、入力端子が5V直結でもラッチアップや誤動作はしません。万一、ラッチアップ現象が発生すると少なくともその入力端子は故障してしまうので、交換するしか手がありません。 ADM3202も5V動作させる限りは問題ありませんが、入出力端子を誤って、1+-12Vの電圧の発生する端子をPICに接続してしまうミスがあると故障の原因になります。 CMOS入力端子はインピーダンスが非常に高く、解放にしてしまうと注入した電荷がなかなか抜けきれません。スイッチ入力を接続する場合にはhttp://www.necel.com/ja/faq/mi_com/__com_ksw.html のようにプルダウンまたはプルアップの抵抗がついている必要があります。 指で触るような不安定なスイッチを使う場合にはただの抵抗ではなく、オペアンプでシュミットトリガ回路を作ってバッファにする方がいいでしょう。
その他の回答 (1)
- nta
- ベストアンサー率78% (1525/1942)
16F877にはRS-232Cのインターフェース機能はありませんが、インターフェースICは何を使い接続していますか。現象から見るとPICのCMOS入出力に、違うインターフェースレベルの信号が紛れ込んでいるように思われます。
補足
お返事の方ありがとうございます。 機材の方が研究室の方にあるので今すぐ検証できないのですが、回答に対して仮説を立ててみました。 実際の検証は明日行ってみたいと思います。 >16F877にはRS-232Cのインターフェース機能はありませんが、インターフェースICは何を使い接続していますか。 →インターフェースICは、ADM3202ANZ #0635を使用しています >現象から見るとPICのCMOS入出力に、違うインターフェースレベルの信号が紛れ込んでいるように思われます。 →調べてみましたところ、入力の電位がVddよりも大きくなると、ラッチアップという現象が起きるようです。 これが原因なのでは、と仮説を立ててみたのですが、どうでしょうか・・・。 適切な入力電圧を印加する方法等、よろしければアドバイスお願いします。 あと、PICの足に入力をする、常套手段(安定安全等)があれば、教えていただけないでしょうか。 よろしくお願いします。
お礼
アドバイスありがとうございます! おかげさまで、なんとか思った通りの動きをしてくれました!! 原因はntaさんがおっしゃられていた通り、プルダウンの抵抗がなかったことでした。 本当にありがとうございました。