PIC16F887の周辺その2


■ ICD2(のclone)がdebuggerとしてPIC16F887にattachできない問題


PIC16F877/877A/887をターゲットデバイスとしてICD2(のclone)がdebugモードに入れないという問題(http://d.hatena.ne.jp/yaneurao/20080722)を書いたが、どうもICD2自体がPIC16F877/877A/887には対応していないようだ。*1


AVRのほうは下位のモデルでも結構in-circuit debugに対応してるのに…(´Д`)


■ PIC16F887のI/Oは何本?


40pin DIPで、Vdd,Vssがそれぞれ2つ。40-4 = 36だと思うのだけど、データシートには35と書かれている。この情報を元に秋月の商品説明などでも35と書かれている。


でもどう見ても36だ。プレスリリースで36と書いてあるものもある。RE3だけは、input onlyだからI/Oの数には入れてもらえなかったのだろうか。


■ PIC16F887はいい石だ!


PIC16F887は、秋月で250円という破格の値段であることもさることながら、内蔵RCでかなり細かく動作周波数を動的に変えることが出来るし、I/Oが36本(35本?)というのも何よりの魅力だ。


PICにしては珍しく、RA0〜RA7,RB0〜RB7,RC0〜RC7,RD0〜RD7,RE0〜2(RE3はinput only)とA,B,C,Dのportがすべて8bit I/Oである。(0から7まで隣り合わせにピンが並んでいるのはport Bのみだけど) RA0〜4までとRD0〜2とを併せて8bit出力にしたりしなくて済むのでこれはプログラムを書く側からすると非常に有り難い。


■ PIC16シリーズの行方は?


PIC12/14/16シリーズに対してC++で開発しようと思うとIARのEmbedded Workbench(EWPIC)ぐらいしか選択肢がないのだが(値段はサイト上に記載がないが20万〜40万ぐらいだと思われる)、EWPICは旧製品扱いでもはやサポートする気はなさそうである。


ホビーでやるような電子工作も、もうdsPICとかAVR32とかの時代なのだろうか…。