デジキーで発売直後購入して放置していたPIC32MZ2048EGC100を動かしてみました。MICROCHIPの発表から約1年経っての発売でしたが、エラッタが大量にあるという話は知っていたのですが、見事にはまってしまいました。

IMG_3406

IMG_3408

IMG_3426


まずはTQFP100ピンのパッケージなので秋月電子で購入した変換基板にハンダ付けします。ブリッジしてもいいのでハンダを盛った後に、ハンダ吸い取り線で余分なハンダを吸い取ります。0.4mmピッチいうことで目視での確認が難しいために10倍のルーぺを購入しました。

IMG_3432

パスコンだらけの基板

IMG_3430


なんとか動くようになりました。何日費やしたことか。問題点と解決方法をまとめておきます。

1.ハンダ付け不良→ルーペを購入して確認
2.主発振回路が動かない→OSC2端子を10kΩでプルアップ
(リビジョンA5からこの対策が可能、リビジョンA4までは外部発振回路からOSC1端子に入力するしかない。)
3.コンパイラ(XC32)のバグ→SYSTEM PLLのクロック入力の指定で主発振回路を選択しても動かない。内部発振回路を指定する。
(だからと言って、逆に内部発振回路を使う時に主発振回路を選択したら動かなかった。)
4.SYSTEM PLLが不安定→パスコンをすべての電源端子に接続
(全くつけてなかったわけではないのですが、200MHzをなめてました。)
5.SYSTEM PLLが動作しない→データシート確認
PIC32MZのデータシート576ページを確認したところ、SYSTEM PLLのクロック入力は5MHzから64MHzの範囲とのこと。内蔵発振の8MHzを2分の1にして4MHzにしたり、主発振回路の12MHzを3分の1に分周して4MHzにしてSYSTEM PLLに入力してました。

さてここからが本題です、何を作りましょう?