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
編集
差分
pic18blaster の編集
-- 雛形とするページ --
(no template pages)
[[2010-10]] AVRを使った[[OpenOCDアダプターはこちら>hid_blaster]] ---- *PIC18F2550/14K50を使ってARM用JTAGアダプター(FlashROMへの書き込み、OpenOCD用デバッガ)を製作する。 [#x5535f07] 【Windowsパソコン(OpenOCDホスト)】~ |~ |(USBケーブル) ~ |~ V~ http://psp.dip.jp/web/jpg/ae18f2550.jpg ===JTAG CABLE===> http://psp.dip.jp/web/jpg/ARM/STM32.jpg 写真は[[秋月18F2550モジュール:http://www.akizukidenshi.com/catalog/g/gI-02161/]] と 付録基板 CQ-STARM(STM32 CPU) 18F14K50でも製作可能 http://psp.dip.jp/web/jpg/PIC/14k50.jpg ■ 概要 これは、OpenOCD の DLL ハック(実験)です。 即ち、外部に DLL を置いて、JTAGアダプターのドライバーの分離実装を試みています。 ■ 現在のステータス とりあえず、PIC18F2550/14K50を使用したJTAGアダプターが動いています。 ■ 試し方 WindowsXPを用います。 PIC18spxファームを焼いたPIC18F14K50(もしくはPIC18F2550)基板と、 JTAGが使用できる適当なARM基板を以下のような対応でJTAG接続しておきます。 -結線は、 (PICライター機能の) ARM基板 JTAG端子 MCLR ------------- TMS PGM ------------- TDI PGD ------------- TDO PGC ------------- TCK -となります。これ以外のnTRSTピンなどはまだサポートしていません。(USB-Blasterと同様) ARM側は3.3Vなので、PIC側の電圧に注意してください。(5Vは危険です) -PIC側にPIC18F2550を用いるときは、電圧変換の必要が生じます。 -参考例としては、USB-Blaster(もどき)の実装における、抵抗分圧を利用する方法と、 -あまりお勧めしませんが、PIC18F2550を3.3V駆動する方法などがあります。(18LF2550を使えば規格内です) hidblast/ ディレクトリの ocd.bat あるいは、 ocd2.bat を起動して、openocd.exeの吐き出すメッセージ を確認することが出来ます。 正常に接続出来ているようでしたら、telnetで localhost:4444 番に接続して、OpenOCDコマンドを実行して みてください。 ■ ディレクトリ構成 hidblast-+ ソース. | |.\helper\ ヘッダーファイル. |.\jtag\ ヘッダーファイル. |.\openocd_patch\ openocd本体側作成用の改造点 ■ プログラムの再ビルド方法 WindowsXP上のMinGW-gccコンパイラを用いてmakeしてください。 makeすると、hidblast.dll が作成されます。 openocd.exe本体を再ビルドする方法は、以下のURLを参照してください。 -http://hp.vector.co.jp/authors/VA000177/html/2010-09.html 今回の改造部分ソースはopenocd_patch/ ディレクトリに置いています。 Linux上でのビルドオプションは、こんな感じです。 $ ./configure \ --build=i686-pc-linux-gnu \ --host=i586-mingw32msvc \ --enable-dummy 出来上がった openocd.exe 本体は、ドライバーとして、同一ディレクトリに存在する hidblast.dll を 起動時に呼び出します。(存在しなければ、dummyドライバーのみが組み込まれます) ■ 現状の問題点 まだ遅いです。 不安定です。 ■ ライセンス OpenOCDの配布ライセンスに準じます。 ■ 展望 hidblast.dll ファイルを(自力で)差し替えるだけで、自作デバイスがサポート可能になります。 (たとえばATtiny2313を使用したJTAGアダプターなどをサポート出来る可能性があります) hidblast.dll のエントリーポイントは、 DLL_int get_if_spec(struct jtag_command **q); だけです。引数のstruct jtag_command **qのqには、openocd本体のjtag_command_queueという グローバル変数のアドレスを渡します。 戻り値は、(intになっていますが) ドライバー記述構造体のアドレスになります。 *ダウンロード(仮) [#abc45486] |[[pic18blaster.zip:http://psp.dip.jp/web/upload.cgi/PIC/pic18blaster.zip]]|WindowsXP,MinGW用ソース、実行ファイル、openocd本体改造パッチ| -数日おきに更新していますので、古いと思ったら最新を取得してみてください。 ~ ~ ~ ~ ~ ~~ ~ ~ *おまけファイル [#p70fb18a] -以下のファイルは、sa89a.net様の[[USBブラスターもどき:http://sa89a.net/mp.cgi/ele/ub.htm]]と同一ハードウェアにフィットさせたものです。 |[[hid_blaster.zip:http://psp.dip.jp/web/upload.cgi/PIC/hid_blaster.zip]]|WindowsXP,MinGW用ソース、実行ファイル、openocd本体改造パッチ| -PIC側ファームウェアには、pic18spxのものではなく、hid_blaster/firmware/picmon-18F2550.hex を使用してください。 -上記pic18blaster.zipファイルとの違いは、ファームウェア側のJTAG:TMSの結線がPORTC.6からPORTB.3に変更されているのみです。 -このアーカイブでは高速化は行っていません(8kB書き込みに約30秒かかります) -高速化するには、上記 [[pic18blaster.zip:http://psp.dip.jp/web/upload.cgi/PIC/pic18blaster.zip]] のファームウェアを修正して再ビルドしてください。 #define ALTERNATE_PGxPIN_ASSIGN 1 // PGC,PGD,PGMの結線を入れ替えます. -Makefile の18F14K50を18F2550に変更してビルドします。 ~ ~ ~
タイムスタンプを変更しない
[[2010-10]] AVRを使った[[OpenOCDアダプターはこちら>hid_blaster]] ---- *PIC18F2550/14K50を使ってARM用JTAGアダプター(FlashROMへの書き込み、OpenOCD用デバッガ)を製作する。 [#x5535f07] 【Windowsパソコン(OpenOCDホスト)】~ |~ |(USBケーブル) ~ |~ V~ http://psp.dip.jp/web/jpg/ae18f2550.jpg ===JTAG CABLE===> http://psp.dip.jp/web/jpg/ARM/STM32.jpg 写真は[[秋月18F2550モジュール:http://www.akizukidenshi.com/catalog/g/gI-02161/]] と 付録基板 CQ-STARM(STM32 CPU) 18F14K50でも製作可能 http://psp.dip.jp/web/jpg/PIC/14k50.jpg ■ 概要 これは、OpenOCD の DLL ハック(実験)です。 即ち、外部に DLL を置いて、JTAGアダプターのドライバーの分離実装を試みています。 ■ 現在のステータス とりあえず、PIC18F2550/14K50を使用したJTAGアダプターが動いています。 ■ 試し方 WindowsXPを用います。 PIC18spxファームを焼いたPIC18F14K50(もしくはPIC18F2550)基板と、 JTAGが使用できる適当なARM基板を以下のような対応でJTAG接続しておきます。 -結線は、 (PICライター機能の) ARM基板 JTAG端子 MCLR ------------- TMS PGM ------------- TDI PGD ------------- TDO PGC ------------- TCK -となります。これ以外のnTRSTピンなどはまだサポートしていません。(USB-Blasterと同様) ARM側は3.3Vなので、PIC側の電圧に注意してください。(5Vは危険です) -PIC側にPIC18F2550を用いるときは、電圧変換の必要が生じます。 -参考例としては、USB-Blaster(もどき)の実装における、抵抗分圧を利用する方法と、 -あまりお勧めしませんが、PIC18F2550を3.3V駆動する方法などがあります。(18LF2550を使えば規格内です) hidblast/ ディレクトリの ocd.bat あるいは、 ocd2.bat を起動して、openocd.exeの吐き出すメッセージ を確認することが出来ます。 正常に接続出来ているようでしたら、telnetで localhost:4444 番に接続して、OpenOCDコマンドを実行して みてください。 ■ ディレクトリ構成 hidblast-+ ソース. | |.\helper\ ヘッダーファイル. |.\jtag\ ヘッダーファイル. |.\openocd_patch\ openocd本体側作成用の改造点 ■ プログラムの再ビルド方法 WindowsXP上のMinGW-gccコンパイラを用いてmakeしてください。 makeすると、hidblast.dll が作成されます。 openocd.exe本体を再ビルドする方法は、以下のURLを参照してください。 -http://hp.vector.co.jp/authors/VA000177/html/2010-09.html 今回の改造部分ソースはopenocd_patch/ ディレクトリに置いています。 Linux上でのビルドオプションは、こんな感じです。 $ ./configure \ --build=i686-pc-linux-gnu \ --host=i586-mingw32msvc \ --enable-dummy 出来上がった openocd.exe 本体は、ドライバーとして、同一ディレクトリに存在する hidblast.dll を 起動時に呼び出します。(存在しなければ、dummyドライバーのみが組み込まれます) ■ 現状の問題点 まだ遅いです。 不安定です。 ■ ライセンス OpenOCDの配布ライセンスに準じます。 ■ 展望 hidblast.dll ファイルを(自力で)差し替えるだけで、自作デバイスがサポート可能になります。 (たとえばATtiny2313を使用したJTAGアダプターなどをサポート出来る可能性があります) hidblast.dll のエントリーポイントは、 DLL_int get_if_spec(struct jtag_command **q); だけです。引数のstruct jtag_command **qのqには、openocd本体のjtag_command_queueという グローバル変数のアドレスを渡します。 戻り値は、(intになっていますが) ドライバー記述構造体のアドレスになります。 *ダウンロード(仮) [#abc45486] |[[pic18blaster.zip:http://psp.dip.jp/web/upload.cgi/PIC/pic18blaster.zip]]|WindowsXP,MinGW用ソース、実行ファイル、openocd本体改造パッチ| -数日おきに更新していますので、古いと思ったら最新を取得してみてください。 ~ ~ ~ ~ ~ ~~ ~ ~ *おまけファイル [#p70fb18a] -以下のファイルは、sa89a.net様の[[USBブラスターもどき:http://sa89a.net/mp.cgi/ele/ub.htm]]と同一ハードウェアにフィットさせたものです。 |[[hid_blaster.zip:http://psp.dip.jp/web/upload.cgi/PIC/hid_blaster.zip]]|WindowsXP,MinGW用ソース、実行ファイル、openocd本体改造パッチ| -PIC側ファームウェアには、pic18spxのものではなく、hid_blaster/firmware/picmon-18F2550.hex を使用してください。 -上記pic18blaster.zipファイルとの違いは、ファームウェア側のJTAG:TMSの結線がPORTC.6からPORTB.3に変更されているのみです。 -このアーカイブでは高速化は行っていません(8kB書き込みに約30秒かかります) -高速化するには、上記 [[pic18blaster.zip:http://psp.dip.jp/web/upload.cgi/PIC/pic18blaster.zip]] のファームウェアを修正して再ビルドしてください。 #define ALTERNATE_PGxPIN_ASSIGN 1 // PGC,PGD,PGMの結線を入れ替えます. -Makefile の18F14K50を18F2550に変更してビルドします。 ~ ~ ~
テキスト整形のルールを表示する
ログインまたはアカウント作成