PIC18F14K50にArduino+9V電池方式でHIDブートローダを書込んでみたらベリファイでエラーが出ました。
コンフィグビット0x30002番地に0x01を書いたのに読出したら0x21になっています。
300000+ 0 1 2 3 4 5 6 7 9 9 A B C D
書込値 :00 32 01 1e -- 00 01 -- 03 c0 03 e0 03 40
Arduino読:00 32 21 1e 00 00 01 00 03 c0 03 e0 03 40
PICkit3読:00 32 01 1e 00 00 01 00 03 c0 03 e0 03 40
PICKit3で読むと0x01ですがArduinoだと0x21になるのです。
違いはbit5が0か1かですが、このbitはデバイス上で何にも割り当てられていません。PIC18F14K50のデーターシートによると割り当てが無い番地は0として読める事になっているのでPICkit3の結果が正しくArduinoの結果が間違いです。
しかしArduinoのスケッチを見ていますが特に問題なさそうに見えます。またこの番地のこのbit以外は問題が発生していないのも納得がいきません。因みにデバイスを交換しても変化なしでした。
書込み自体はできており問題なく動作はするのですが・・・謎です。
Pingback: PIC18F14K50+HIDブートローダ~その2~ | ほいほい堂blog