【PIC】今後使用するPIC(DIP20,28,40)を検討する

PIC プラモデル

今まで、PIC16F1827を主に利用していましたが、18pinだと少々IOが足りなくなってきました。また、MCCを使っていると4kWordのメモリでは少々厳しい状況になってきました。そこで、今後利用するPICを検討してみます。
検討のメモ程度なので、参考程度に見てください。

Sponsored links
Sponsored links

プラモデルの電飾

仕様

  • 電池で駆動する
    • 使い古した電池で動作する
      • 電源電圧の低いPICを利用する(LED駆動を考えると3v程度まで)
  • 人感で動作する
    • 人感センサー or 音感センサーの割り込みで動作する
    • 通常はSleep状態で待機する
  • 電池の残量をチェックする
    • 直列電池の個々の電圧をチェックする(転極検出
      • 古い電池を直列で使っていると、1本の電池が急激に容量が減ることがあります。
        3本の電池を利用する予定なので、各電池の電圧を定期的に測定するためにADC入力を最低2ケ使います。

選定条件

  1. PIC16F1827を基準にして、価格、プログラムメモリ、ピン数でつり合いが取れそうなPICを選定する。
  2. 駆動電源が3v以下のものを抽出する。
  3. XLPテクノロジー(超低消費電力)のものを選定する。
  4. 購入は入手しやすい秋月電子通商とする。
    • 価格は秋月電子通商しらべ
  5. MCC(MPLAB Code Configurator)を使うとプログラムサイズが大きくなる。
    • プログラムメモリが4kWordでは少々心元ないので、8kWord以上のPICを選定する。
  6. モデル1つにつき1個必要なため、単価ができるだけ安いものにする。
  7. 8bit MPUを前提にする。
  8. 基本的には低周波クロックで動作させる。
    • 31kHz(LFINTOSC)を使い省電力で使う。(状況によっては31.25kHz MFITNOSC)
  9. 開発ツールはPicKit3を使う。PicKit3でサポートされているものを使うこと。

比較表

入手先は秋月電子通商が一番楽なので、秋月電子通商で取り扱っているPICを検討します。
価格は秋月電子通商しらべ(24/9/1現在)

パッケージ型式電源電圧(min)プログラムメモリ(word)ROMI/OADCCCP/PWM単価備考
DIP8PIC12F18221.82k3.75k641/0200
DIP14PIC16F18231.82k3.75k1281/0220
DIP18PIC16F18271.84k7.25k16124/0260基準にするPIC      

パッケージ型式電源電圧(min)プログラムメモリ(word)ROMI/OADCCCP/PWM単価備考
DIP20PIC16F15092.38k14k18120/4270◎十分なスペックで1827と同等の価格
DIP20PIC16F18291.88k14.25k18124/0350
DIP20PIC16F183462.316k28.25k18174/2300

パッケージ型式電源電圧(min)プログラムメモリ(word)ROMI/OADCCCP/PWM単価備考
DIP28PIC16F19331.84k7.25k2511?330
DIP28PIC16F19361.88k14.25k2511?360
DIP28PIC16F19381.816k28.25k25115/0360
DIP28PIC16F188572.332k56k25245/2330◎28pinではスペック、価格とも最良

パッケージ型式電源電圧(min)プログラムメモリ(word)ROMI/OADCCCP/PWM単価備考
DIP40PIC16F19371.88k14.25k3614?410
DIP40PIC16F19391.816k28.25k36145/0410
DIP40PIC16F188772.332k56.25k36355/237040pinではスペック、価格とも最良

採用PIC

パッケージPIC型式採用理由
DIP20PIC16F1509価格
DIP20PIC16F18346プログラム開発用 プログラムメモリサイズ
DIP28PIC16F18857価格、プログラムメモリサイズ
DIP40PIC16F18877価格、プログラムメモリサイズ

ピンアサインは各DIP毎ではほぼ互換がありそうです。回路を設計するときに各機能で互換が取れるように設計する必要があります。互換が取れるような回路にすることにより、PICの載せ替えを可能にします

DIP20ではプログラム開発用にPIC16F18346を使おうと思います。MCC(MPLAB Code Configurator)を利用するとプログラムサイズが大きくなる傾向があるのでメモリサイズの大きいPICで開発します。プログラムが固まったら、直にCコーディングしなおそうと思います。MCCでの開発は各段に開発工数を減らせますので、MCCでの初期開発は必須だと思っています。

以上 なにかのお役に立てれば幸いです。

タイトルとURLをコピーしました