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
編集
差分
HIDboot の編集
-- 雛形とするページ --
(no template pages)
[[PIC18F2550]] ---- **HIDboot [#c1a44cd4] -AE-18F2550用のHID bootloader です。 http://psp.dip.jp/web/jpg/ae18f2550.jpg ---- **ファームウェアDownload: [#y7f5f4f1] [[hidboot-0430.zip:http://psp.dip.jp/web/upload.cgi/PIC/hidboot-0430.zip]] -まだホスト側を制作していません。 -急いで使用したい方はdiolanのbootloaderに含まれているfw_updateツール を改造して(暗号処理を削除して)使ってみてください。 内容 -diolan製のPIC18F4455用 HID bootloader を 秋月AE-18F2550に移植したものです。 -MCHIP純正ブートローダーからも実行できる(XINST=0で動作する)ように改造済みです。 -ORG 番地を 0x000 , 0x800 から選択できます。 -容量の関係上、暗号化機能を削除しています。 ---- **ToDo [#xe5d10cf] -%%ホストPC側のツールを作る。%% -- 実装の力点を[[HIDmon-2550]]のほうに移しましたので、こちらのサポートはありません。あくまでもdiolanオリジナル互換のbootloaderを研究したい方用のfirmwareということに留めます。 -%%HIDレポートの送り方をinterrupt転送からcontrol転送に差し替える。%% -- これは実装予定はありません。 -現在、''[[HIDmon-2550]]にbootloaderの機能を実装済み''です ~ ~ ~ ~ ---- **diolan製bootloaderが正常動作しない原因究明 [#uf78422b] -結論 subfsr FSR2 , 3 とか addfsr FSR2 , 4 が全く機能していません! -調べ方。 usb_sm_prepare_next_setup_trf というアセンブラ関数があります。 -これは、USB END POINT 0 のLENGTHとBUFFER ADDRES などをセットアップする機能を持っています。 -正しくセットアップされたなら LENGTH=0x40 BUFFER ADDRESS=0x0410 になる筈ですが、そうなっていないことが分かりました。 -さらにくわしく調べてみると、上記命令コードだけが無視されていることがわかりました。 -おそらくdiolan社では、上記命令が正しく動作する種類のチップが使われていると考えられます。 -秋月のもの(あるいは18F2550)だけ動作しないなんて・・・''とても信じられません'' -ICEのようなデバッガがないので、テストルーチンを書いては実行し、知りたいメモリー内容をFlashの空き領域にコピーして再起動し、bootloaderで読み込むという方法でデバッグしました。 -と調べていったら、データシートに、以下の記述がありました。 ADDFSR f, k Add literal to FSR ADDULNK k Add literal to FSR2 and return CALLW Call subroutine using WREG MOVSF zs ,fd (source) to1st word Movez (destination)2nd word Movez MOVSS zs ,zd (source) to1st word (destination)2nd word PUSHL k Store literal at FSR2, 1 decrement FSR2 SUBFSR f, k Subtract literal from FSR SUBULNK k Subtract literal from FSR2 and 2 The additional features of the extended instruction set are disabled by default. To enable them, users must set the XINST configuration bit. -がっくりです。 ~ ~ ~ ~
タイムスタンプを変更しない
[[PIC18F2550]] ---- **HIDboot [#c1a44cd4] -AE-18F2550用のHID bootloader です。 http://psp.dip.jp/web/jpg/ae18f2550.jpg ---- **ファームウェアDownload: [#y7f5f4f1] [[hidboot-0430.zip:http://psp.dip.jp/web/upload.cgi/PIC/hidboot-0430.zip]] -まだホスト側を制作していません。 -急いで使用したい方はdiolanのbootloaderに含まれているfw_updateツール を改造して(暗号処理を削除して)使ってみてください。 内容 -diolan製のPIC18F4455用 HID bootloader を 秋月AE-18F2550に移植したものです。 -MCHIP純正ブートローダーからも実行できる(XINST=0で動作する)ように改造済みです。 -ORG 番地を 0x000 , 0x800 から選択できます。 -容量の関係上、暗号化機能を削除しています。 ---- **ToDo [#xe5d10cf] -%%ホストPC側のツールを作る。%% -- 実装の力点を[[HIDmon-2550]]のほうに移しましたので、こちらのサポートはありません。あくまでもdiolanオリジナル互換のbootloaderを研究したい方用のfirmwareということに留めます。 -%%HIDレポートの送り方をinterrupt転送からcontrol転送に差し替える。%% -- これは実装予定はありません。 -現在、''[[HIDmon-2550]]にbootloaderの機能を実装済み''です ~ ~ ~ ~ ---- **diolan製bootloaderが正常動作しない原因究明 [#uf78422b] -結論 subfsr FSR2 , 3 とか addfsr FSR2 , 4 が全く機能していません! -調べ方。 usb_sm_prepare_next_setup_trf というアセンブラ関数があります。 -これは、USB END POINT 0 のLENGTHとBUFFER ADDRES などをセットアップする機能を持っています。 -正しくセットアップされたなら LENGTH=0x40 BUFFER ADDRESS=0x0410 になる筈ですが、そうなっていないことが分かりました。 -さらにくわしく調べてみると、上記命令コードだけが無視されていることがわかりました。 -おそらくdiolan社では、上記命令が正しく動作する種類のチップが使われていると考えられます。 -秋月のもの(あるいは18F2550)だけ動作しないなんて・・・''とても信じられません'' -ICEのようなデバッガがないので、テストルーチンを書いては実行し、知りたいメモリー内容をFlashの空き領域にコピーして再起動し、bootloaderで読み込むという方法でデバッグしました。 -と調べていったら、データシートに、以下の記述がありました。 ADDFSR f, k Add literal to FSR ADDULNK k Add literal to FSR2 and return CALLW Call subroutine using WREG MOVSF zs ,fd (source) to1st word Movez (destination)2nd word Movez MOVSS zs ,zd (source) to1st word (destination)2nd word PUSHL k Store literal at FSR2, 1 decrement FSR2 SUBFSR f, k Subtract literal from FSR SUBULNK k Subtract literal from FSR2 and 2 The additional features of the extended instruction set are disabled by default. To enable them, users must set the XINST configuration bit. -がっくりです。 ~ ~ ~ ~
テキスト整形のルールを表示する
ログインまたはアカウント作成