USBオシロスコープ の変更点
関連リンク [[Pinguinoで遊ぼう>Pinguino]] [[ブートローダーを作る>HIDBootX]] [[USB仮想シリアル>PIC32MX_USBCDC]] [[USBカスタムデバイス>USB_CUSTOM]] [[USBホスト>USB_HOST]] [[2013-02]] [[2013-03]]
*PIC32MXを使用したUSBオシロスコープの試作 [#lcd05ea8]
http://psp.dip.jp/web/jpg/PIC/picscope.png
~
~
*現在のステータス [#l27d010d]
-WinUSB.DLL経由にて、ファームウェアとWindowsパソコン間で連続したA/D変換サンプルデータの受け渡し
を行なっています。
-OpenGLを使用した波形表示ソフトが動作します。
~
出来ていないところ
-%%マルチチャネル対応%% --- 出来ました。
-%%時間軸の変更(な、なんだってーー(AA略)%% --- 出来ました。
-ドキュメント等
http://psp.dip.jp/web/jpg/PIC/picscope2.png
~
------
*■ 配線図 PIC32MX220F032B [#rb4a391f]
3.3V
|
*------10Ω--------------+
10k |
| ___ ___ | 0.1u
ラ --> ----*-MCLR [1 |__| 28] AVDD-*-||---GND
イ --> --PGD3/RA0 [2 27] AVSS--------GND LED
ター --> --PGC3/RA1 [3 26] RB15--1kΩ-------|>|--GND
A/D変換入力----> RB0 [4 25] RB14
RB1 [5 24] RB13
SDA2/RB2 [6 23] Vusb3v3--------3.3V
SCL2/RB3 [7 22] usb D-
Xtal GND----Vss [8 21] usb D+ +10uF
+-----------------OSC1 [9 20] Vcap------||---GND
*--|□|--*--------OSC2 [10 19] Vss------------GND
| 8MHz | U1TX/RB4 [11 18] RB9
22pF 22pF U1RX/RA4 [12 17] RB8
| | 3.3v--Vdd [13 16] RB7
| | RB5 [14 15] Vbus-----------USB Vbus(5V)
GND GND ~~~~~~~~~~
-A/D入力レンジは0V〜3.3Vです。
-A/D入力は%%最終的にはAN0〜AN3になる予定です。(現在はAN2を固定選択しています)%% -- AN0〜AN3の4chを使用します。
~
-ファーム書き込みはPicKit2やPicKit3で書き込んでもOKですし、
-[[HIDBoot.X>HIDBootX]]というHIDブートローダーから書き込んでもOKです。
--(このファームウェアHEXファイルはセルフブートとHID Bootloaderからのブートの両方に対応しています)
~
----------
*ダウンロード [#t5da7c85]
作りかけですが、公開しています。
--''ダウンロード:''[[PICscope.zip:http://psp.dip.jp/web/upload/PIC/PICscope.zip]]
~
PIC32MX用のファームウェアが必要です。こちらからダウンロード
--''ダウンロード:''[[pic32mon.zip:http://psp.dip.jp/web/upload/PIC/pic32mon.zip]]
~
''お詫び''
-2013-05-21以前の上記zipファイルにエンバグがありましたのでお詫び致します。
-05-22以降のzipでは修正されています。
-USB PIDがファーム側は0053であるのに対し、Windows側は0052になっていました。
~
-このファームウェアは[[USB簡易モニター>PIC32mon]]にA/D連続変換のコマンドを追加したものとなっています。
--USB簡易モニターの機能はすべて含んでいますので、pic32mon.exeを使用してファームウェアを対話的に操作可能です。
~
----------
*ビルド環境 [#ud3d0833]
-Windows(XP|Vista|7|8)側は、[[MinGW32:http://www.mingw.org/]] gccを使用します。(無償)
~
***ファームウェアを再ビルドされる場合は、 [#m1f85b98]
-MIPS32(PIC)側は、Pinguinoのmips-gccコンパイラを使用します。(無償)
-但し、MChipUSBフレームワークを使用する為、MPLAB IDE 8.89と、それに付属のPIC32 Cコンパイラ環境が必要です。(無料版でOKです)
-それからMChipUSBフレームワーク(microchip-application-libraries-v2012-10-15-windows-installer.exe)も必要です。(無償)
-それからMChipUSBフレームワーク(microchip-application-libraries-v2013-06-15-windows-installer.exe)も必要です。(無償)
~
-ビルド方法は、いずれの場合でも、Windows(32|64)のコマンドライン上からmakeを実行することで行います。
~
-WindowsXPへのWinUSBの導入は、MChipUSBフレームワークに含まれるサンプルソース( USB/Device - WinUSB - High Bandwidth Demo/Driver and INF/MCHPWinUSBDevice_v2.inf )のドライバーを導入すると自動的にWinUSB.DLLが使用できるようになります。
-Windows Vista以降ではWinUSBはOSにバンドルされているようです。
-もし(万が一)Linuxやそれに類する(MACOSとか)環境からPIC32MXを叩きたい場合は、WinUSBの代わりにLibUSBを使用してください。USB周りのAPIが変わりますが、それほど本質的な違いはありません。