[][mobile][Homepage][BBS][Blog][YouTube][asablo]

PIC12F1822でLEDチカチカ2011/02/14 08:40:15


※新しい記事があるのでそちらもどうぞ


秋月電子、新生8ピンPICマイコン販売開始80円

機能もさることながら、値段がなんと80円!安すぎる。今までのミッドレンジPICを駆逐するかの勢いすら感じる。

さて、そんなPICマイコンなので、Hello worldなるLEDチカチカのコードを書いてみることに。



回路図はLEDを光らせるだけの簡単なもの。PICkit2に接続するときは、上記回路図の4ピンを10kΩ程度の抵抗で電源(1ピン)とプルアップする。



ブレッドボードでさくっと作る。電源もPICkit2から取る。PICkit2を使うときは最新のデバイスリストにする必要があるので、そのやり方



ハードウェアは数分で完成。今のマイコンはパスコンが無くても動くのだが、お勧めは0.1μF程度の積層セラミックコンデンサーを電源に入れるほうが良いだろう。




ソースコードはこちら。プロジェクトはMPLAB IDEでプロジェクトウィザードから作る。
ちなみに、Hitech PICC Ver9.71以降は、ヘッダー内容が変更になったので、

 WRT_OFF & PLLEN_OFF & STVREN_ON & BORV_27 & DEBUG_OFF & LVP_OFF
                           ↓     
 WRT_OFF & PLLEN_OFF & STVREN_ON & BORV_25 &  LVP_OFF 
※DEBUG_OFFはCONFIG2からなくなったので外しました。2011/4/9

に変更してビルドすることになる。




すぐに書き込んでテストをしたい人は、上のコードをメモ帳にコピーして、helloworld12f1822.hexなどと適当なファイル名にして、セーブして、PICkit2で書き込めばすぐに動作する。
LEDが0.5秒毎に点灯消灯を繰り返せば成功だ。


8ピンから40ピンまで合計6種類の1000番PICが揃ったので、おいおい動かして行きたい。
移植からやろうかな。

追記:最新のHitech PICC Pro lite mode  version9.71.以降ではビルドできずエラーになってしまいます。コンパイラの切替で、9.70にしてビルドしてみてください。恐らくヘッダー名が変わったと思います。原因が分り次第追記します。 → 問題が解決したので、記事を修正しています。(2011/4/8)

関連記事


コメント

_ 人間恐怖症 ― 2011/02/16 01:14:27

新ラインナップで一新されましたね。
開発環境も徐々に新しいものへ移行され、古いものは駆逐されていくのでしょう。
そんなことより、数年間愛用していた12f675も抹消の対象にならないか、それだけが心配です。
過去の作品の8割は12f675なんですよ。
簡単に移行できるのでしょうかね。

_ air_variable ― 2011/02/16 02:23:22

初めまして。
16C84から改良されて16F84Aとなりましたが、それでも14年前のマイコンがまだ買えます。16F877Aも古いですが健在です。12F508もワンタイムとEEPROMタイプが無くなっただけで、今でも購入できます。それですので、これからもすぐにはなくならないと思います。(願っています)


今回12F1822を簡単に触ってみましたが、コンフィグやOSC設定、LATなど、ケアするレジスタが増えたため、12F675の方が簡単に使えるといった感じを受けました。それでも慣れの問題なので、価格の安いPIC16F1XXXを触っていこうと思っております。

アセンブラでの移植はちょっと難しいと思いますが、C言語レベルであれば、増えたレジスタのデフォルト値のケア、リードモデファイライト対策のLATレジスタ、内蔵発振器の設定、レジスタの似た名前への変更が分れば、移植は比較的簡単に出来るかなと思いました。

_ kanki ― 2011/02/16 15:05:51

はじめまして。秋月での12F1822販売直前に12F683を購入しました、kankiです。
683の4倍速!ピンの割り当て変更も!これがあればもっと楽ができたのにと落胆するほどの高性能ですね。

_ air_variable ― 2011/02/17 12:50:35

1000番PICは、確かに凄い機能満載ですね。その反面、設定レジスターが増えたので、色々ケアをする所が増えたので、わずかに煩わしさが増えました。
12F683や675は気楽に使えるので、当面は残るデバイスと予想します。

_ nobcha23 ― 2011/02/20 12:54:14

こんにちは、ワタシもこの間12F675から進歩だと思って、12F683を買ってしまいました。それよりも年明けには12F222でMPLAB IDEv8.63のASMストールに引っかかり、停滞(V8.60に戻せばOK)してます。
次回買出し時にはこれ買って挽回します。

_ air_variable ― 2011/02/20 20:36:36

12F683はEUSARTとか入っているので、高性能で良いですね。
PICは新品はエラッタがどんなのが出てくるのかが気がかりにはなります。その点12F683は実績ベースで安定したPICと思います。
とはいう物の、わたしも在庫を使わずして新しいPICを使う予定です。

ところでASMストールというのが気になりましたが、何か問題があるのでしょうか。もし教えていただければ幸いです。

_ nobcha ― 2011/02/27 10:38:44

コメント見落としておりました。おはようございます。
先の件ですが、v8.63では少なくともPIC10F222のアセンブラが動作しないということです。あちらさんのフォーラムでみたところ、クリスマス前の駆け込みリリースでバグ付きでだしたんだろうとの説明ありました。アセンブラだけをVERSION戻すやり方不明に付き、MPLABをV8.60に戻してやり過ごしております。
http://www.microchip.com/forums/m546388.aspx

_ air_variable ― 2011/02/27 11:48:26

nobchaさん、情報をありがとうございます。
以前のMPLABであれば、interim(暫定)と明示していたのですが、
そういう事なのですね。

_ 弁慶 ― 2011/03/15 17:15:32

ランダムトーンジェネレータでお世話になってます。
先ほどこちらのプログラムを12F1822に焼き、動作確認させていただきました。ありがとうございます。
(ライタは会社が買ってくれたPICkit3でした。)

_ air_variable ― 2011/03/15 21:41:17

弁慶さん、お久しぶりです。
12F675から12F1822に移植されたのですね。
12F1822の方が内蔵オシレーターがスピードが速いので、もっとホワイトノイズに近い音がでるかもしれません。

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※投稿には管理者が設定した質問に答える必要があります。

名前:
メールアドレス:
URL:
次の質問に答えてください:
全角で「あ」をタイプしてください。Japanese language only.

コメント:

トラックバック





[][admin][mobile][Homepage][BBS][Blog][YouTube][asablo]