Suga koubou
/
USB_CDC
Diff: main.cpp
- Revision:
- 0:d644bf01b0cb
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Tue Nov 08 15:46:25 2011 +0000 @@ -0,0 +1,34 @@ +#include "mbed.h" +#include "USBCDC.h" + +Serial pc(USBTX, USBRX); +DigitalOut myled(LED1); + +USBCDC usbdev(0x1FC9, 0x2002, 0x0100); +//USBCDC usbdev(0xFFFF, 0x0005, 0x0100); + +char cdc_data[61]; +volatile int cdc_len = 0; + +void cdc_evt (char *data, int len) { + memcpy(cdc_data, data, len); + cdc_len = len; +} + +int main() { + pc.baud(115200); + pc.printf("begin\r\n"); + + usbdev.attach(&cdc_evt); + + while(1) { + + if (cdc_len) { + myled = 1; + pc.printf("<%s>\r\n", cdc_data); + usbdev.write(EPBULK_IN, (uint8_t*)cdc_data, cdc_len, MAX_PACKET_SIZE_EPBULK); + cdc_len = 0; + myled = 0; + } + } +}