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
編集
差分
usbserial の編集
-- 雛形とするページ --
(no template pages)
* PIC 18Fシリーズを使ったUSB-シリアル変換器 [#da06a24a] http://psp.dip.jp/web/jpg/PIC/14k50.jpg 元ねた [[mcc18]] ''ダウンロード'' -[[usbserial.zip:http://psp.dip.jp/web/upload.cgi/PIC/usbserial.zip]] ''割り込み使用版ダウンロード'' -[[usbserial_int.zip:http://psp.dip.jp/web/upload.cgi/PIC/usbserial_int.zip]] ''senshuさんの差分を適応した版'' -[[usbserial-2010-0816.zip:http://psp.dip.jp/web/upload.cgi/PIC/usbserial-2010-0816.zip]] mchipcdc-14k2.zipからの変更点 -PIC 18F14K50 / 18F2550 / 18F4550 の3品種に対応しました。 -セルフエコーバックのルーチンを入れてみました。 -シリアル転送のベンチマークが出来るようにしてみました。(w32term) *結論 [#ic9a9480] -専用ドライバーを用いずに、USB汎用のCDCデバイスクラスのままでは、それほど速度が出ないことが分かりました。 あくまでもターゲットデバイスがPIC 18Fの場合ですが、 -セルフエコーバックでUHCI直結の場合=600Kbps程度が上限。 -セルフエコーバックでHubを挟んだ場合=800Kbps程度が上限。 -Tx/Rx接続によるエコーバック=200Kbps程度。 --但し、Tx/Rx接続の場合ProcessIO()関数内ではUSARTとのやりとりが1文字単位なので効率が悪いです。 --USART送受信を割り込みで処理すれば多少は改善するかもしれません。 ~ ~ ~ ---- *おまけ:USBシリアルファームとpic18spxファームの共存について [#vcee7c83] -PIC 18F14K50などにはFlashメモリーが16kB乗っていますので、pic18spx簡易モニター兼PIC/PIC24/AVRライターを全部詰め込むことも可能です。 -やり方は、まず、以下のusbシリアルファームを最初に焼いて、次にpic18spxを焼きます。 -焼く方法はbootloader(picboot.exe)を使います。%%もしくは外部ライタのどちらでも構いません。%% --外部ライタで焼く場合は2つのhexを適当なテキストエディタを使って切り貼りする必要があります。 -後から焼いたほうが強いので、起動するのはpic18spxのほうです。 C:picspx> picmonitor.exe PIC> -そこで、usbシリアルを起動するために、以下のコマンドを実行します。 PIC> boot 2c00 PIC> q C:picspx> -この状態でUSBバスが一旦リセットされ、アドレス2c00から配置されたファームウェアに制御 が移っている(usbシリアル変換デバイスになっている)はずです。 -同様にして、picmonitor.exeの状態から、bootloaderに制御を戻すには PIC> boot 0 -で行うことが出来ます。(但しbootloaderはboot jumperを見ますのでboot 0を行うまえにjumperの設定が必要です) - picboot.exe -r を使用してpicspxに制御を移している場合ならjumperそのままの状態でloaderに戻ります。 ''usbシリアル:ダウンロード''(仮) -[[usbserial_2c00.zip:http://psp.dip.jp/web/upload.cgi/PIC/usbserial_2c00.zip]] ''senshuさんの差分を適応した版''(上記アーカイブに差分usbserial-0407.diffを適用したものです。) -[[usbserial-2a00.zip:http://psp.dip.jp/web/upload.cgi/PIC/usbserial-2a00.zip]] ''pic18spxダウンロード''(仮) -[[pic18spx-2010-0416.zip:http://psp.dip.jp/web/upload.cgi/PIC/pic18spx-2010-0416.zip]]
タイムスタンプを変更しない
* PIC 18Fシリーズを使ったUSB-シリアル変換器 [#da06a24a] http://psp.dip.jp/web/jpg/PIC/14k50.jpg 元ねた [[mcc18]] ''ダウンロード'' -[[usbserial.zip:http://psp.dip.jp/web/upload.cgi/PIC/usbserial.zip]] ''割り込み使用版ダウンロード'' -[[usbserial_int.zip:http://psp.dip.jp/web/upload.cgi/PIC/usbserial_int.zip]] ''senshuさんの差分を適応した版'' -[[usbserial-2010-0816.zip:http://psp.dip.jp/web/upload.cgi/PIC/usbserial-2010-0816.zip]] mchipcdc-14k2.zipからの変更点 -PIC 18F14K50 / 18F2550 / 18F4550 の3品種に対応しました。 -セルフエコーバックのルーチンを入れてみました。 -シリアル転送のベンチマークが出来るようにしてみました。(w32term) *結論 [#ic9a9480] -専用ドライバーを用いずに、USB汎用のCDCデバイスクラスのままでは、それほど速度が出ないことが分かりました。 あくまでもターゲットデバイスがPIC 18Fの場合ですが、 -セルフエコーバックでUHCI直結の場合=600Kbps程度が上限。 -セルフエコーバックでHubを挟んだ場合=800Kbps程度が上限。 -Tx/Rx接続によるエコーバック=200Kbps程度。 --但し、Tx/Rx接続の場合ProcessIO()関数内ではUSARTとのやりとりが1文字単位なので効率が悪いです。 --USART送受信を割り込みで処理すれば多少は改善するかもしれません。 ~ ~ ~ ---- *おまけ:USBシリアルファームとpic18spxファームの共存について [#vcee7c83] -PIC 18F14K50などにはFlashメモリーが16kB乗っていますので、pic18spx簡易モニター兼PIC/PIC24/AVRライターを全部詰め込むことも可能です。 -やり方は、まず、以下のusbシリアルファームを最初に焼いて、次にpic18spxを焼きます。 -焼く方法はbootloader(picboot.exe)を使います。%%もしくは外部ライタのどちらでも構いません。%% --外部ライタで焼く場合は2つのhexを適当なテキストエディタを使って切り貼りする必要があります。 -後から焼いたほうが強いので、起動するのはpic18spxのほうです。 C:picspx> picmonitor.exe PIC> -そこで、usbシリアルを起動するために、以下のコマンドを実行します。 PIC> boot 2c00 PIC> q C:picspx> -この状態でUSBバスが一旦リセットされ、アドレス2c00から配置されたファームウェアに制御 が移っている(usbシリアル変換デバイスになっている)はずです。 -同様にして、picmonitor.exeの状態から、bootloaderに制御を戻すには PIC> boot 0 -で行うことが出来ます。(但しbootloaderはboot jumperを見ますのでboot 0を行うまえにjumperの設定が必要です) - picboot.exe -r を使用してpicspxに制御を移している場合ならjumperそのままの状態でloaderに戻ります。 ''usbシリアル:ダウンロード''(仮) -[[usbserial_2c00.zip:http://psp.dip.jp/web/upload.cgi/PIC/usbserial_2c00.zip]] ''senshuさんの差分を適応した版''(上記アーカイブに差分usbserial-0407.diffを適用したものです。) -[[usbserial-2a00.zip:http://psp.dip.jp/web/upload.cgi/PIC/usbserial-2a00.zip]] ''pic18spxダウンロード''(仮) -[[pic18spx-2010-0416.zip:http://psp.dip.jp/web/upload.cgi/PIC/pic18spx-2010-0416.zip]]
テキスト整形のルールを表示する
ログインまたはアカウント作成