5 #include "kernel_id.h"
\r
6 #include "ecrobot_interface.h"
\r
8 /* OSEK declarations */
\r
11 /* below macro enables run-time USB connection */
\r
12 #define RUNTIME_CONNECTION
\r
14 /* LEJOS OSEK hooks */
\r
15 void ecrobot_device_initialize()
\r
17 #ifndef RUNTIME_CONNECTION
\r
18 ecrobot_init_usb(); /* init USB */
\r
22 void ecrobot_device_terminate()
\r
27 /* LEJOS OSEK hook to be invoked from an ISR in category 2 */
\r
28 void user_1ms_isr_type2(void){}
\r
30 #define MAX_NUM_OF_CHAR 16
\r
31 #define MAX_NUM_OF_LINE 8
\r
33 static void display_usb_data(U8 *data, int len)
\r
36 static int pos_x = 0;
\r
37 static int pos_y = 0;
\r
39 /* set LCD postion in x, y */
\r
40 if (pos_x >= MAX_NUM_OF_CHAR)
\r
46 if (pos_y >= MAX_NUM_OF_LINE)
\r
52 if (pos_x == 0 && pos_y == 0)
\r
56 display_goto_xy(pos_x, pos_y);
\r
58 for (i = 0; i < len; i++)
\r
60 if (data[i] == '\n')
\r
68 display_string((char *)&data[i]);
\r
82 U8 data[MAX_USB_DATA_SIZE];
\r
84 #ifdef RUNTIME_CONNECTION
\r
85 ecrobot_init_usb(); /* init USB */
\r
89 display_goto_xy(0, 0);
\r
90 display_string("USB TEST");
\r
91 display_goto_xy(0, 1);
\r
92 display_string("Run usbhost.exe");
\r
96 memset(data, 0, MAX_USB_DATA_SIZE);
\r
97 len = ecrobot_read_usb(data, MAX_USB_DATA_SIZE); /* read USB data */
\r
101 ecrobot_send_usb(data, len); /* send USB data */
\r
102 display_usb_data(data, len);
\r