Indoor airplane world
 



 
 マイクロチップのPIC10FシリーズにPWMが内蔵されたPIC10F320/322がリリースされました。SOT23タイプで2PWM内蔵なので、スペック的にはATMELのATtiny10と似ています。ということで早速使ってみることにしました。



 PIC10F320/322は手持ちのPICkit2(画像左)には対応していないので、新たにPICkit3(画像右)を調達しました。一緒に調達したデバイスはPIC10F320。

 Microchip Forumで探したBlink LED on pin RA2 of 10F322が以下のプログラム。



 2行目の#include "p=10f322.inc"を#include "p=10f320.inc"に直してビルドしました。



 使っているMPLABバージョンはv8.80。デバイスにPIC10F320を設定。Programmer→PICkit3を選択したところ、上記エラーが。Vista搭載機とXP搭載機のどちらも同じエラーが出ました。

 行き詰ってマイクロソフト・ジャパンのサポートセンターにメールしたところ、下記回答をもらいました。

-----
添付頂いた画像には"PICkit 3 Connected."とありますので
PICkit3は認識されています。

エラーはターゲットに電源が供給されていないため
PICkit3がターゲット(PIC)を確認できないため発生しています。

ターゲットへ基板から電源を供給するか、
PICKit3から電源を供給して下さい。

PICkit3の場合、メニュー Programmer(Debugger)->Settings...->
Powerタブから
□Power target circuit from PICkit 3
のチェックを入れて下さい。
------



早速アドバイスに沿ってチェックを入れたところ、



 無事プログラムの書き込みができました。

 低電圧駆動のLFタイプでは低電圧を供給する必要があるため、Powerタブで、ターゲットデバイスに供給する電圧を設定するか、デバイス搭載基板に直接電源を供給する必要があるということです。

 早速実行してみたらLEDは点灯したまま。あれっ?

 データシートを見ても問題ありそうなところは見当たりません。MPLAB SIMでトレースするとRA2がきちんとON/OFFしてます。



 データシートではPIC10F320もPC10F322もSRAMは64バイトになっていて、



 メモリマップではどちらも汎用レジスタのアドレスが0x40-0x7fになっています。

 どうして動かないのか散々悩んだ結果、ネットでようやく下記の記述を見つけました。

 The 10F320 has only 32 bytes of SRAM, starting at address 0x60

 なんと10F320のSRAMは64バイトではなく32バイトで、しかもスタートアドレスは0x40ではなく、0x60だということです。

 10F322と10F320のSRAMのスタートアドレスが違うなんて信じられませんが、以下のようにプログラムを修正したところ正常に動作しました。



 上記プログラムによるLEDの点滅動画



 教訓:データシートを鵜呑みにするな!

 LEDを点滅するだけのプログラムにこれほど悩むとは思いませんでした。やれやれ。

コメント ( 2 ) | Trackback (  )
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする


« 新フライトタ... リーフ100V変... »
 
コメント
 
 
 
Unknown (VICTOR)
2013-06-13 16:08:11
I do not speak Japanese, but I found your page regarding PIC10F320 datasheet mistake useful. I translated the page with Google.

If you want to understand more why there is that mistake in the datasheet, then check next 2 forums topics where I found the cause of the troubles:

http://www.ccsinfo.com/forum/viewtopic.php?t=50562&postdays=0&postorder=asc&start=45

http://www.microchip.com/forums/m727073.aspx

My best regards,
viki2000
 
 
 
Unknown (toko)
2013-06-13 16:51:46
Thank you for useful information.
 
コメントを投稿する
 
名前
タイトル
URL
コメント
コメント利用規約に同意の上コメント投稿を行ってください。

数字4桁を入力し、投稿ボタンを押してください。