最終更新:2012-07-02 (月) 09:53:31 (4640d)
V-USB
Top / V-USB
Virtual USB port for AVR microcontrollers (旧AVR-USB)
http://www.obdev.at/products/vusb/index.html
概要
V-USBはソフトウェアのみでロースピードのUSBデバイス(USB 1.1)をAtmelのAVR上で実現します。ほぼすべてのAVRマイコンで追加のチップ?を必要とせずにUSBハードウェアの製作を可能にします。
Features
- Fully USB 1.1 compliant low-speed device, except handling of communication errors and electrical specifications.
- Example projects demonstrate device and host driver implementations on Linux, Mac OS X and Windows.
- Supports multiple endpoints: one control endpoint, two interrupt/bulk-in endpoints and up to 7 interrupt/bulk-out endpoints. (Bulk endpoints are forbidden for low speed devices by the USB standard.)
- Transfer sizes up to 254 bytes by default, more as configuration option. Comes with freely usable USB identifiers (Vendor-ID and Product-ID pairs).
- Runs on any AVR microcontroller with at least 2 kB of Flash memory, 128 bytes RAM and a clock rate of at least 12 MHz.
- No UART, timer, input capture unit or other special hardware is required (except one edge triggered interrupt).
- Can be clocked with 12 MHz, 15 MHz, 16 MHz or 20 MHz crystal or from a 12.8 MHz or 16.5 MHz internal RC oscillator.
- High level functionality is written in C and is well commented.
- Only about 1150 to 1400 bytes code size.
- You can choose the License: Open Source or commercial. Click here for details.
Wiki
動作環境
よく使う部品
- 電源系
- 積層セラミックコンデンサ - 0.1uF
- リセッタブルヒューズ - 100mA
- 抵抗 - 10K - リセット用プルアップ抵抗
- USB信号用
- ツェナーダイオード 3.3~3.6V
- 75x2 - USBのデータ線用 (68でも可)
- 水晶発振子を使う場合
- 水晶発振子 12MHz
- 積層セラミックコンデンサ - 22pFx2 水晶発振子用
- オプション
- 電解コンデンサ 10~22uF - 電源安定用
主要な対応チップ
- ATtiny45
- ATtiny85
- ATtiny2313
- ATmega88
- ATmega168
- ATmega328
- ATmega328P
- ATmega162?
- ATmega64?
- ATmega16?
- ATmega128?
ドキュメント
ライセンス
V-USB Reference Projects
- PowerSwitch?
- RemoteSensor?
- HIDKeys?
- Automator
- AVR-Doper
- EasyLogger?
- BootloadHID
- USBaspLoader
ブートローダ
Arduino用
関数
- usbFunctionSetup?
コントロール転送
インタラプト転送
- usbFunctionWriteOut? - データ受診時
関連
- LUFA - Lightweight USB Framework for AVRs