PIC

PICマイコンについても固定ページの機能を使って整理してみます。

1.MPLAB-X環境

最近の環境ということで、MPLAB-XのLinux版について記載します。2013年11月2日の時点では最新版はv1.90です。
まずはコンパイラとしてMPLAB C18を使う場合についてです。

  • MPLAB-XでPIC18のビルド環境を整える
    Microchip Library for AppicationsのPIC18のサンプルプログラムはMPLAB C18でコンパイルすることが前提になっているようです。一方で、現在のMPLAB-Xの標準の8bit用コンパイラはXC8になっています。なので、「一通り」と思って環境をインストールしてもサンプルプログラムはビルドできません。
    Linux版のMPLAB C18でのビルドまでを簡単に記載しています。
    後半部分は環境ビルドには関係ありませんが、Linux環境でCDC Basic Demoを動かす際には要注意な内容です。
  • Microchip Lirary for Applications のサンプルプログラムを動かす
    サンプルプログラムをMPLABXで動かす際の設定方法について記載しています。PIC18F14K50(の評価ボード)を対象に書いていますが、PIC18F4550(の評価ボード)でも同じです。チップ単体に近い形(秋月の評価ボード)で動かす場合にはあまり問題にはなりませんが、設定に加えてI/Oポートなどの処理は変更しないと動かなかったり、誤動作することになります。
  • PIC18F用にUSB HIDブートローダを動かす
    毎回PICkit3を使ってPIC18F14K50のファームウェアを書き換えるのはかなり面倒です。
    USB HIDブートローダを使うと簡単になりそう・・・・なのですが、落とし穴があります。最終的にはブートローダのファームウェアのソースコードを1行書き換えないと、(少なくともLinux環境では)添付されているLinux版ダウンローダは動作しません。その調査の過程と修正方法です。

次に、MPLAB C18以外のコンパイラを使う場合についてです。

  • MPLAB-X環境でPIC12F675の開発はできません
    結論から言うと表題の通りです。MPLAB-XとXC8でPIC12F675のプログラムはビルドできるのですが、ビルドしたプログラムはまともにPIC12F675には書き込めません。その理由はOSCCALレジスタの補正値を保持する仕掛けがMPLAB-Xでは持っていないため、プログラムの先頭で無限ループに陥ってしまうからです。おそらく12F629や12F683でも同様の結果になるのではないかと思います。(NGなのはLinux版だけかもしれませんが・・・)

2.MPLAB IDE環境

しばらく前のWindowsXP上のMPLAB IDE環境での記事です。

 3.その他

その他、製作した際の記事やゴミのような記事も含めて、「PIC」タグで参照できます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)