Test around the USB Ethernet interface
Dependencies: USB_Ethernet mbed-rtos mbed
main.cpp@1:a511b85eecf9, 2013-08-03 (annotated)
- Committer:
- daniele
- Date:
- Sat Aug 03 13:26:39 2013 +0000
- Revision:
- 1:a511b85eecf9
- Parent:
- 0:e9c7d71ecf4b
Fixed dependancy
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
daniele | 0:e9c7d71ecf4b | 1 | #include "mbed.h" |
daniele | 0:e9c7d71ecf4b | 2 | #include "USBCDC_ECM.h" |
daniele | 0:e9c7d71ecf4b | 3 | |
daniele | 0:e9c7d71ecf4b | 4 | extern "C"{ |
daniele | 0:e9c7d71ecf4b | 5 | #include <stdint.h> |
daniele | 0:e9c7d71ecf4b | 6 | #include "pico_stack.h" |
daniele | 0:e9c7d71ecf4b | 7 | #include "pico_ipv4.h" |
daniele | 0:e9c7d71ecf4b | 8 | } |
daniele | 0:e9c7d71ecf4b | 9 | #include "pico_dev_mbed_usb.h" |
daniele | 0:e9c7d71ecf4b | 10 | |
daniele | 0:e9c7d71ecf4b | 11 | |
daniele | 0:e9c7d71ecf4b | 12 | USBCDC_ECM usb = USBCDC_ECM(0x0525, 0xa4a1, 1); |
daniele | 0:e9c7d71ecf4b | 13 | |
daniele | 0:e9c7d71ecf4b | 14 | int main(void) { |
daniele | 0:e9c7d71ecf4b | 15 | #if 1 |
daniele | 0:e9c7d71ecf4b | 16 | struct pico_device *usb_eth; |
daniele | 0:e9c7d71ecf4b | 17 | struct pico_ip4 local={.addr = long_be(0x0a280001)}; |
daniele | 0:e9c7d71ecf4b | 18 | struct pico_ip4 netmask={.addr = long_be(0xffffff00)}; |
daniele | 0:e9c7d71ecf4b | 19 | |
daniele | 0:e9c7d71ecf4b | 20 | printf("Welcome to the PicoTCP USB demo!\n"); |
daniele | 0:e9c7d71ecf4b | 21 | pico_stack_init(); |
daniele | 0:e9c7d71ecf4b | 22 | |
daniele | 0:e9c7d71ecf4b | 23 | wait(1); |
daniele | 0:e9c7d71ecf4b | 24 | printf("Creating device...\n"); |
daniele | 0:e9c7d71ecf4b | 25 | |
daniele | 0:e9c7d71ecf4b | 26 | usb_eth = pico_mbed_usb_create("usb0", &usb); |
daniele | 0:e9c7d71ecf4b | 27 | wait(2); |
daniele | 0:e9c7d71ecf4b | 28 | |
daniele | 0:e9c7d71ecf4b | 29 | printf("Adding link...\n"); |
daniele | 0:e9c7d71ecf4b | 30 | pico_ipv4_link_add(usb_eth, local, netmask); |
daniele | 0:e9c7d71ecf4b | 31 | |
daniele | 0:e9c7d71ecf4b | 32 | printf("Looping!\n"); |
daniele | 0:e9c7d71ecf4b | 33 | while(1){ |
daniele | 0:e9c7d71ecf4b | 34 | wait(0.002); |
daniele | 0:e9c7d71ecf4b | 35 | pico_stack_tick(); |
daniele | 0:e9c7d71ecf4b | 36 | } |
daniele | 0:e9c7d71ecf4b | 37 | #else |
daniele | 0:e9c7d71ecf4b | 38 | while(1);; |
daniele | 0:e9c7d71ecf4b | 39 | #endif |
daniele | 0:e9c7d71ecf4b | 40 | |
daniele | 0:e9c7d71ecf4b | 41 | } |