Top
HIDaspx
DownLoad
HIDasp高速化
制作
AVR関係
AVR_Monit
AVR_term
W32_term
HIDmon88
HIDtester
usbRS232
Arduino2313
デジタルテスター
ATmega88生活
KeyBoardマニア
KeyBoardマニアII
Arduino400
PICライター
ARMライター
赤外線リモコン
ARM
STM32ブートローダー
STM8S-Discovery改造
STM8S-OpenOCDライター
LPCXpresso
LPC用ブートローダー
NXP用LPCUSB
NXP用ブートローダー
MARY基板
LPC1114FN28
OpenOCD JTAGアダプター
OpenOCDビルド方法
arm-gccビルド方法
mapleIDEの改造
libmapleで仮想COM
PIC32
PIC32MX
Pinguinoで遊ぼう
ブートローダーを作る
シリアルブートローダー
USB仮想シリアル
USBカスタムデバイス
USB簡易モニター
USBオシロスコープ
USBホスト
PIC32でBluetooth
USBAudio
USBStudy
VGA出力に挑戦
BASICを動かす
WinUSB
勝手に改蔵*PIC32
PIC18F
HIDブートローダー
AVR/PIC両用ライター
ARMライター
usb汎用クラス
usbシリアル変換
usbキーボード変換
sdccを使いこなす
mcc18を使いこなす
HIDmon-2550
HIDmon-14K50
PICmonitor
試行錯誤の記録
UBWを試す
旧HIDboot
PIC18F2550試用記
PIC18F4550試用記
その他マイコン
NEC78K
RX62N
SH2A
H8
FM3
XPからubuntuに乗り換え
Android
Xen-hypervisor
Windows8カスタマイズ
開発日記
2015-04
ノウハウ
AVRUSB_Tips
HIDasp情報
汎用USB-IO
・
リンク
フリースペース
ゲストブック
旧コンテンツ
WinVista
インターフェース考
最新の20件
2022-07-25
2008-10
HIDasp高速化
H8/3048F
AutoTicketLinkName
2021-12-11
FormattingRules
2021-12-08
PukiWiki/1.4/Manual/Plugin/O-R
PukiWiki/1.4/Manual/Plugin/L-N
PukiWiki/1.4/Manual/Plugin/V-Z
PukiWiki/1.4/Manual/Plugin/A-D
PukiWiki/1.4/Manual/Plugin/E-G
PukiWiki/1.4/Manual/Plugin/S-U
PukiWiki/1.4/Manual/Plugin/H-K
2020-02-23
YukiWiki
PHP
PukiWiki
WikiWikiWeb
2018-12-19
SandBox
InterWiki
2015-05-07
2015-04
2015-05-02
MenuBar
編集
差分
PicKit3 の編集
-- 雛形とするページ --
(no template pages)
[[PIC32MX]] *PICKit3を使ってHEXファイルを書き込む [#ne2f7885] http://akizukidenshi.com/img/goods/L/M-03608.jpg *注意点 [#rb3cb3a5] 秋月のHPには以下のFAQが用意されています。 -http://akizukidenshi.com/catalog/faq/goodsfaq.aspx?goods=M-03608 ~ ~ ~ *私が嵌ったPICKit3の罠について [#i6a83b56] -買ってきたばかりのPICKit3には、最新のファームが書かれていないか、あるいはブートローダーのみ生きているような状態でした。 -この状態でMPLAB-Xに付属のMPLAB IPEを使用してPICKit3に接続しようとしても、 ***************************************************** Connection Failed -というエラーが出て、使用できない状態でした。 -Advancedモードに移行(パスワードは下に表示されています。)して、Manual Download Firmwareを選択しても、ファーム更新しているふり だけして、結局、 ***************************************************** Connection Failed -となってしまいました。 ~ 対策: -PICKit3をUSB接続したあと、すかさず「connect」ボタンを押すと、ファームウェアの自動アップデート・フェーズに入る場合があります。 -ファームウェアが正しく書き込まれれば、それ以降は「connect」に失敗することはないようです。 -一説によると、PICKit3のボタンを押したままUSBケーブルを挿すとよいという話もあります。これもいろいろ試したのですが、結局USB接続して一定時間(数秒)を過ぎてしまうと、ファームウェアの更新チェックは行われないか、更新できない状態に移行するようです。(まるで、昔のArduinoのブートローダーのようですね) ~ ~ ~ *このサイトに登録されているHEXファイルをPICKit3で焼く場合の注意点 [#hbbc2ea0] -MPLAB IPEでは、KSEG1のアドレスに出力されたHEXレコードは丸無視するようです。 -- PIC32のメモリーマップです。 -- 物理割り当てされているエリアは 0000_0000 〜 2000_0000 の512MBです。 -- 物理割り当てされている512MBと全く同じものが KSEG0とKSEG1にもマップされます。 -- KSEG0とKSEG1の違いはキャッシュ無効/有効で分けられています。 FFFF_FFFF +---------------+ | | | Reserved | | | C000_0000 +---------------+ | KSEG1(論理) | Cacheなし. A000_0000 +---------------+ | KSEG0(論理) | Cacheあり. 8000_0000 +---------------+ | | | Reserved | | | | | | | 2000_0000 +---------------+ | 物理メモリー | ROM/RAM/PORT 0000_0000 +---------------+ -ですので、HEXファイルのレコードで、0xBXXX_XXXXで吐き出されたレコードのアドレスを0x9XXX_XXXXに書き換える必要があります。 -簡便な方法としては、リンカースクリプト(*.ld)に指定してあるアドレスの0xb******* を0x9******* に全部変更します。 ~ ~ *HEXファイル変換ツール [#l32e7494] hex2pickit3 -HEXファイルのアドレス指定がKSEG0(論理),KSEG1(論理)のいずれの場合にも、物理アドレスに置換します。 -MinGW gccあるいは Linux gccなどでコンパイルしてください。 -ダウンロード:[[hex2pickit3.zip:http://psp.dip.jp/web/upload.cgi/PIC/hex2pickit3.zip]]
タイムスタンプを変更しない
[[PIC32MX]] *PICKit3を使ってHEXファイルを書き込む [#ne2f7885] http://akizukidenshi.com/img/goods/L/M-03608.jpg *注意点 [#rb3cb3a5] 秋月のHPには以下のFAQが用意されています。 -http://akizukidenshi.com/catalog/faq/goodsfaq.aspx?goods=M-03608 ~ ~ ~ *私が嵌ったPICKit3の罠について [#i6a83b56] -買ってきたばかりのPICKit3には、最新のファームが書かれていないか、あるいはブートローダーのみ生きているような状態でした。 -この状態でMPLAB-Xに付属のMPLAB IPEを使用してPICKit3に接続しようとしても、 ***************************************************** Connection Failed -というエラーが出て、使用できない状態でした。 -Advancedモードに移行(パスワードは下に表示されています。)して、Manual Download Firmwareを選択しても、ファーム更新しているふり だけして、結局、 ***************************************************** Connection Failed -となってしまいました。 ~ 対策: -PICKit3をUSB接続したあと、すかさず「connect」ボタンを押すと、ファームウェアの自動アップデート・フェーズに入る場合があります。 -ファームウェアが正しく書き込まれれば、それ以降は「connect」に失敗することはないようです。 -一説によると、PICKit3のボタンを押したままUSBケーブルを挿すとよいという話もあります。これもいろいろ試したのですが、結局USB接続して一定時間(数秒)を過ぎてしまうと、ファームウェアの更新チェックは行われないか、更新できない状態に移行するようです。(まるで、昔のArduinoのブートローダーのようですね) ~ ~ ~ *このサイトに登録されているHEXファイルをPICKit3で焼く場合の注意点 [#hbbc2ea0] -MPLAB IPEでは、KSEG1のアドレスに出力されたHEXレコードは丸無視するようです。 -- PIC32のメモリーマップです。 -- 物理割り当てされているエリアは 0000_0000 〜 2000_0000 の512MBです。 -- 物理割り当てされている512MBと全く同じものが KSEG0とKSEG1にもマップされます。 -- KSEG0とKSEG1の違いはキャッシュ無効/有効で分けられています。 FFFF_FFFF +---------------+ | | | Reserved | | | C000_0000 +---------------+ | KSEG1(論理) | Cacheなし. A000_0000 +---------------+ | KSEG0(論理) | Cacheあり. 8000_0000 +---------------+ | | | Reserved | | | | | | | 2000_0000 +---------------+ | 物理メモリー | ROM/RAM/PORT 0000_0000 +---------------+ -ですので、HEXファイルのレコードで、0xBXXX_XXXXで吐き出されたレコードのアドレスを0x9XXX_XXXXに書き換える必要があります。 -簡便な方法としては、リンカースクリプト(*.ld)に指定してあるアドレスの0xb******* を0x9******* に全部変更します。 ~ ~ *HEXファイル変換ツール [#l32e7494] hex2pickit3 -HEXファイルのアドレス指定がKSEG0(論理),KSEG1(論理)のいずれの場合にも、物理アドレスに置換します。 -MinGW gccあるいは Linux gccなどでコンパイルしてください。 -ダウンロード:[[hex2pickit3.zip:http://psp.dip.jp/web/upload.cgi/PIC/hex2pickit3.zip]]
テキスト整形のルールを表示する
ログインまたはアカウント作成