試作1号機でうまく動作したので、試作2号機を作りました。試作2号機でもPICKITを付けて順調に動作しました。次にPICKTを外して動作確認。
動くときと動かない時がある
条件の違いがわかりません。
PICKITを付けると100%動きます。外すと動くときと動かないときがある。
何でだ?
PICKITを付けているときは、RUNさせなければMLR端子がLOWになっています(リセットされた状態)。そこで動かないときMCR端子をLowにしてHightにすると動きます。
PICKITを外して電源ONしたときはどうなっているのか?オシロスコープで確認。
ノイズが乗りまくり!
リセットをかけるとノイズはなくなります。
このノイズが動作しない原因のようです。
PIC32MX270F256Bを外すとノイズは出なくなります。どうもPIC32MX270F256Bがノイズを発生させているようです。
どうするか?
リセット回路をつける。 →PICKITに影響するかもしれないのでやりたくない。
リセットスイッチを付ける。 →動かないときはリセットスイッチを押してください。
設計不良の製品みたいでやりたくない。
回路を見直す。
5Vから3.3Vを3端子レギュレータで作っています。C2を最初はマニュアルに書いてあった10μFにしていました。10μFならセラミックコンデンサで対応できるので実装がコンパクトにできてラッキーと思っていました。パーツ箱をみると100μFの電解コンデンサがたくさんありました。
「そうだ。今までは電源の後ろに100μFを入れていたんだ。」
ということでC2を100μFに変更すると、安定して動作するようになりました。
ノイズ対策のコンデンサを甘く見てはいけない!
という教訓です。
|