[[labs.beatcraft.com]]~ [[BC-USB-Kit]]~ #Contents * BC-USB-Kit 説明書 [#j9c628fb] ** 概要 [#rd15abbe] > BC-USB-Kit は、Microchip Technology社製 MCU (Micro Control Unit)である PIC24FJ128GB202 (以下PICマイコンと表記します) を搭載したUSBガジェット開発キットです。 Microchip Technology社が提供する開発環境を使用して、USBデバイスの開発・デバッグを行うことができます。~ ~ BC-USB-Kit には、オンボードでUSBコネクタのほか、EEPROM、温湿度センサー及びユーザーLEDと入力スイッチ各1個を搭載していますので、 すぐにこれらのデバイスを使ったUSBガジェットの開発を行うことができます。また、PIO I2Cなどを含む拡張端子を備えていますので、外部にセンサや表示ユニットなどを接続して拡張することもできます。~ ** 仕様 [#o08a6dd8] > -絶対最大定格 | |値 |備考 |h |電源電圧 |-0.3〜20V |USBコネクタの電源ラインのみ(1-4端子間)| |入出力端子電圧 (1)|-0.3〜3.6V |5Vトレラント端子を除く ※1 | |入出力端子電圧 (2)|-0.3〜5.5V |5Vトレラント端子のみ ※1 | |動作温度 |0〜80℃ |結露なきこと | ※1 5Vトレラント端子についてはピン配置を参照~ 絶対最大定格は、モジュールの動作範囲を示すものではありません。この定格を超える入力を行うと一部あたは全部の機能が永久に機能しなくなったり、著しく性能が低下する限界を示すものです。この値を超えると必ずしも障害が発生するわけではありませんが、一瞬でも定格を超えないように取り扱わねばなりません。~ ~ -動作時定格 |項目 |最小|標準|最大|備考|h |電源電圧 (VBUS)|4 |5 |5.5 |V (BUSバス電源電圧)| |Hレベル入力電圧|2.3 | |3.6 |V | |Lレベル入力電圧|0 | |0.9 |V | |Hレベル出力電圧|2.8 | |3.3 |V | |Lレベル出力電圧|0 | |3.3 |V | ** 概略ブロック図 [#p7731897] > BC-USB-Kitの概略は下記に示します。~ &ref(blockdiagram.png,,50%); ~ ※ EEPROM、温湿度センサは、I2Cで接続されています。~ ※ 一部を除き、PIOは、リマップピン機能で PIC 内部の任意の周辺回路に接続できます。~ ※ USB2.0 でサポートされるモードは、Low Speed と Full Speedです。~ ** 各部の名称 [#le71edb3] > モジュールの各部の名称です。~ &ref(Board1.png,,30%); ~ |No|名称 |Ref|備考 |h |1 |ICSP接続端子 |J2 |ICD3、PICKit3などと接続するための端子 | |2 |リセットボタン |SW1|PICをリセットするためのスイッチ | |3 |ユーザボタン |SW2|ユーザプログラムでアクセス可能なスイッチ | |4 |ユーザLED |D1 |ユーザプログラムでアクセス可能なLED | |5 |拡張端子 |J1 |外部デバイスを接続し、拡張するための端子 | |~|~|~|基板の両側にある端子列2つで1組になります| |6 |USBTypeA コネクタ(オス)|P1 |PCのUSBポートなどに接続するための端子 | |7 |電源表示LED |D2 |電源が供給されていると発光するLED (ユーザアクセス不可)| |8 |PICマイコン |U1 |PIC24FJ128GB202 マイコン本体です | |9 |EEPROM |U2 |I2Cでアクセス可能な1Mbits EEPROM | |10|湿温度センサ |U3 |I2Cでアクセス可能な温度および湿度センサ | ※ 電源表示LED (D2) は、USBバスから電源供給されると点灯します~ ※ リセットボタン (SW1)は、PICのリセットに繋がっています。押すとPICがリセットされます~ ※ J1の1〜6番端子とJ2の1〜6番端子は並列になっています。どちらか一方のみを使用します~ ※ J1の端子をブレッドボードなどで使用する場合は、DIP 28P (連結ICソケット 28Pが必要です~    詳細は[[BC-USB-Kit/ピンヘッダ情報]]をご覧下さい ** ピン配置 [#pd9c0303] > BC-USB-Kitは、DIP-28ピンサイズの接続端子と6ピンのピンヘッダサイズの接続端子があります。それぞれのピン配置は、下記の表の通りです。~ -DIP28ピンコネクタ (J1)~ | |機能・名称 |備考 | |h |1 |&font(o){MCLR}; |J2 と並列 | | |2 |VIO |J2 と並列 | | |3 |GND |J2 と並列 | | |4 |PGED1 |J2 と並列 | | |5 |PGEC1 |J2 と並列 | | |6 |NC | | | |7 |VIO | | | |8 |SCL2 |I2C (2ch) 専用 | | |9 |SDA2 |I2C (2ch) 専用 | | |10|GND | | | |11|TMS/RPB57/USBID/RB5 | |●| |12|NC | | | |13|TDI/RPB7/CTED3/PMD5/INT0/RB7 |(RB7) |●| |14|GND | | | |15|GND | | | |16|TCK/RPB8/SCL1/CTED10/PMD4/RB8 |(&font(o){UART - CTS};)|●| |17|CVREFOUT/AN10/C3INB/RPB14/VBUSON/SCK1/CTED5/RB14|(&font(o){UART - RTS};)| | |18|GMD | | | |18|GND | | | |19|AN11/RPB13/CTPLS/PMRD/RB13 |(UART-RX) | | |20|AN9/C3INA/RPB15/SCK2/CTED6/PMCS1/RB15 |(UART-TX) | | |21|VIO | | | |22|GMD | | | |22|GND | | | |23|PGED3/VREF+/CVREF+/AN0/C3INC/RPA0/CTED1/PMD7/RA0| | | |24|PGED3/VREF-/CVREF-/AN1/RPA1/CTED2/PMD6/RA1 | | | |25|SOSCI/RPB4/RB4 | |●| |26|SOSCI/RPB4/T1CK/CTED9/PMA1/RA4 | |●| |27|VIO | | | |28|VBUS | | | ●マークがある端子は、5Vトレラント対応端子です。~ ~ ~ -6ピン ピンヘッダコネクタ~ |番号|名称 |備考 |h |1 |&font(o){MCLR};|J1 と並列| |2 |VIO |J1 と並列| |3 |GND |J1 と並列| |4 |PGED1 |J1 と並列| |5 |PGEC1 |J1 と並列| |6 |NC | | -- DIP-28ピンコネクタ(1)の1〜6番と6ピンヘッダ(J2)の1〜6番端子は並列になっています。~ プログラマはどちらか一方のみに接続します。他方にはなにも接続しないで下さい。~ -- VIO は、PICマイコンおよび入出力信号用の電源ラインです。~ この電源ラインは、USBバスの電源ライン (VBUS) から供給される DC5V から生成され、供給されています。~ -- VBUS は、USBバスの電源ラインから供給される DC5V のラインです。~ -- 電源はUSBコネクタに接続されたUSBバスから供給されます。~ -- J1 の各機能は、PIC24FJ のリマップピン機能により選択されます。~ 詳しくは Microchip Technology社発行の PIC24FJ に関するマニュアルを参照してください。~ ** 拡張端子について [#q3636f61] > BC-USB-Kit には、ICSP 機能を含む J1 拡張端子 と ICSP 接続用である J2 ICSP 接続端子があります。~ J1拡張端子は、600mil 幅の DIP-28 と同じサイズでスルーホールが配置されています。~ この端子に DIP-28 ピンサイズの連結端子を半田付けすることができます。~ この場合、DIP-28 ピンのIC ソケットに装着したり、2.54mmピッチのユニバーサル基板等に接続することが可能になります。~ またブレッドボードに実装して、実験を行うことも可能です。 ** ICSP について [#dae63113] > &ref(icsp.png,,70%);~ ICSP 端子は J1 と J2 に並列に配線されています。~ SW1 はリセット端子に接続されています。押下すると、&font(o){MCLR};が L レベルになり、PIC がリセットされます。~ J1 拡張端子のICSP 接続用の端子または J2 ICSP 接続端子もありますので、~ PICKit3 や MPLAB ICD3 などを接続してプログラムや、デバッグを行うことができます。~ J1 拡張端子の 1〜6 番と J2 ICSP 接続端子は、並列になっています。~ この端子のどちらか一方のみに PICKit3 や MPLAB ICD3 などを接続し、他方の端子にはなにも接続しないでください。~ 接続するとプログラムやデバッグが不安定になったり、動作しなくなります。 ** USB について [#v25987d3] > &ref(usb.png,,50%);~ USB 2.0 をサポートしています。 ~ USB の D-/D+ は PIC マイコンに接続されていますので、内蔵のUSB モジュールを有効にすることにより、使用することができます。~ PIC マイコンによってサポートされるスピードは Low Speed と Full Speed です。J1 の11 番端子に USB-ID が配線されています。~ オンボードの USB コネクタには USB-ID が配線されていません。~ 必要な場合は、J1 の 11 番端子を利用するか R5 (0Ω) を実装してUSB-ID を固定してください。~ USB コネクタから供給される電圧が高い場合、過電圧保護IC によって遮断されます。 ** I2C について [#r2b4e22b] > &ref(i2c.png,,70%);~ BC-USB-Kit は、オンボードで I2C接続のEEPROMおよび温湿度センサーを搭載し、PIC 内蔵のI2C2 モジュールに接続してあります。~ このため I2C2 の端子は、I2C デバイス用に予約されており、他の用途に利用できません。~ SDA/SCL の各ラインは オンボードで 3.3kΩの抵抗によってプルアップされています。~ 外部にデバイスを接続するときは、DIP-28 ピンコネクタの下記の4 ピンを利用すると、連続したピンでアクセスできます。~ EEPROM は、1Mbit のシリアルROM です。 I2C デバイスアドレスは 0x50 と 0x51 に固定されています。~ 温湿度センサの I2Cデバイスアドレスは 0x40 に固定されています。~ 外部にI2Cデバイスを接続するときは、これらのアドレスを避けてください。 > |J1 ピン番号|名称|備考 |h | 7 |VIO |3.3V電源 | | 8 |SCL |I2Cクロック| | 9 |SDA |I2Cデータ | |10 |GND |GND | ** UART について [#cb9a7266] > &ref(uart.png,,50%);~ BC-USB-Kit は、3.3V -CMOS レベルのUART を利用できます。~ このラインは PIC マイコンのリマップ機能を使って、割り当てます。~ この端子は、UART 機能を使わない場合や ハードウェアフローを使わない場合には、他の機能に割り当てて使用することが可能です。~ UART を割り当てるときは 下記のマッピングを使うと、連続したピンでアクセスすることが可能です。~ その他のピンに割り当てることもできます。 ~ UART1 で利用する場合の設定レジスタを 以下に示します。 > |J1 ピン番号|名称 |設定レジスタ |設定値|備考|h |15 |GND |CENTER:- |GND | | |16 |&font(o){CTS};|RPINR18<13:8>|8 | | |17 |&font(o){RTS};|RPOR7<5:0> |4 | | |18 |GND |CENTER:- | |GND | |19 |&font(o){RX}; |RPINR18<5:0> |13 | | |20 |&font(o){TX}; |RPOR7<13:8> |3 | | |21 |VIO |CENTER:- | |3.3V| ** アナログ入力 [#b9b0515a] > PIC マイコンに内蔵されたADC を利用して、AD 変換を行うことができます。~ BC-USB-Kit で利用可能な入力ピンは 下記の通りです。~ なお、リファレンス電圧端子は他の用途に割り当てられているため、BC-USB-Kit では使用できません。~ > |J1 ピン番号|名称|h |19 |AN7 | |20 |AN9 | ** セカンドオシレータ [#qcc60b9f] > オンボードにはセカンドオシレータがありません。~ セカンドオシレータを使うときは、26 番ピンに 32768Hz のクロックを入力してください。 ** プライマリオシレータ [#tc1a55fb] > OSCI/OSCO 端子に24MHz の水晶振動子が接続されています。 ~ オンボードの水晶振動子を使い、USB 機能を利用する場合には、PIC マイコンに内蔵された USB モジュールに 48MHz のクロックが供給されるように設定が必要です。~ - PLL Prescaler PLLDIV<3:0> を通過したあと 4MHz のクロックが必要です。~ 従って PLL Presaler は ÷ 6(PLLDIV<3:0> = 0101) が選択されなければなりません。~ - PLL から出力される System Clock は 32MHz を CPU Divier CPDIV<1:0> で選択された周波数になります。 ** 参考資料 [#w1132e5a] - [[PIC24FJ128GB204 FAMILY DataSheet:http://ww1.microchip.com/downloads/en/DeviceDoc/30005009b.pdf]]~ Microchip Technology 社 - [[16-bit MCU and DSC Programmer’s Reference Manual:http://ww1.microchip.com/downloads/en/DeviceDoc/70157F.pdf]]~ Microchip Technology 社 - [[MPLAB® X IDE ユーザガイド:http://ww1.microchip.com/downloads/jp/DeviceDoc/52027A_JP.pdf]]~ Microchip Technology 社 - [[Atmel AT24CM01 I2C-Compatible (2-wire) Serial EEPROM 1Mbit DATA SHEET:http://www.atmel.com/Images/Atmel-8812-SEEPROM-AT24CM01-Datasheet.pdf]]~ Atmel 社 - [[Si7020-A10 I2C HUMIDITY AND TEMPERATURE SENSOR:http://www.silabs.com/Support%20Documents/TechnicalDocs/Si7020-A20.pdff]]~ Silicon Laboratories 社 ** 回路図および配置図 [#gbfbe662] > 回路図および配置図は、PDF 版の BC-USB-Kit Manual 末尾をご覧ください。~ &ref(BC-USB-KIT.pdf); * 更新履歴 [#ac047cf1] 2015/03/18 初稿掲載 ~ 2015/04/02 資料リンク修正~ RIGHT:Satoshi OTSUKA