Simple USBHost library for Nucleo F446RE/F411RE/F401RE FRDM-KL46Z/KL25Z/F64F LPC4088/LPC1768
Dependents: F401RE-BTstack_example F401RE-USBHostMSD_HelloWorld
Fork of KL46Z-USBHost by
簡易USBホストライブラリです。
official-USBHostの下位互換で対応プログラムを僅かな修正で動かすことが出来ます。
Platforms
- Nucleo F446RE
- Nucleo F411RE
- Nucleo F401RE
- FRDM-K64F
- FRDM-KL46Z
- FRDM-KL25Z
- LPC4088
- LPC1768
Nucleo F446RE/F411RE/F401REのUSB接続方法
ST morpho | USB |
---|---|
U5V (CN10-8) | VBUS (1 RED) |
PA11 (CN10-14) | DM (2 WHITE) |
PA12 (CN10-12) | DP (3 GREEN) |
GND (CN10-20) | GND (4 BLACK) |
Examples
Import programF446RE-USBHostMouse_HelloWorld
USBHostMouse Hello World for ST-Nucleo-F446RE
Import programF401RE-USBHostMSD_HelloWorld
Simple USBHost MSD(USB flash drive) for Nucleo F401RE/FRDM-KL46Z test program
Import programF401RE-USBHostC270_example
Simple USBHost WebCam test program
Import programK64F_USBHostC270_example
Simple USBHost C270 example
Import programF401RE-BTstack_example
BTstack for Nucleo F401RE/FRDM-KL46Z example program
Import programUSBHostRSSI_example
Bluetooth device discovery example program.
Import programKL46Z-USBHostGPS_HelloWorld
Simple USBHost GPS Dongle Receiver for FRDM-KL46Z test program
Diff: USBHost/USBDeviceConnected.h
- Revision:
- 10:40c7f6788902
- Parent:
- 9:7f9f64cf5ded
diff -r 7f9f64cf5ded -r 40c7f6788902 USBHost/USBDeviceConnected.h --- a/USBHost/USBDeviceConnected.h Mon Feb 03 13:00:16 2014 +0000 +++ b/USBHost/USBDeviceConnected.h Wed Feb 05 13:34:37 2014 +0000 @@ -17,24 +17,21 @@ #include "USBEndpoint.h" #include "USBHostConf.h" -#include "myqueue.h" +#include "myvector.h" #include "mymap.h" class USBEndpoint; struct INTERFACE { - INTERFACE() { - in_use = false; - intf_class = 0; - intf_subclass = 0; - intf_protocol = 0; - ep.clear(); + INTERFACE(uint8_t _class, uint8_t _subclass, uint8_t _protocol) { + intf_class = _class; + intf_subclass = _subclass; + intf_protocol = _protocol; } - bool in_use; uint8_t intf_class; uint8_t intf_subclass; uint8_t intf_protocol; - myqueue<USBEndpoint*>ep; + myvector<USBEndpoint*>ep; }; /** @@ -93,7 +90,7 @@ */ void disconnect(); - void init(uint8_t hub, uint8_t _port, bool _lowSpeed); + void init(USBDeviceConnected* parent, uint8_t _port, bool _lowSpeed); void setAddress(uint8_t addr_) { addr = addr_; }; void setVid(uint16_t vid_) { vid = vid_; }; void setPid(uint16_t pid_) { pid = pid_; }; @@ -110,7 +107,6 @@ static int addr = 1; return addr++; } - uint8_t getHub() { return hub_nb; }; uint8_t getAddress() { return addr; }; uint16_t getVid() { return vid; }; uint16_t getPid() { return pid; }; @@ -120,8 +116,8 @@ USBEndpoint* getEpCtl() { return ep_ctl; } private: + USBDeviceConnected* hub_parent; mymap<int,INTERFACE*>intf; - uint8_t hub_nb; uint8_t port; uint16_t vid; uint16_t pid;