/* * Very basic emulation of an Arduino UNO with some buttons and some LEDs */ //// // Include files //// #include #include #include #include #include #include #include "virtual_serial.h" #include "arduino.h" //// // Constants //// #define SERIAL_SPEED 9600 #define SLEEP_DELAY 100 #define MAX_NAME 1024 #define MAX_LINE 1024 #define MAX_SERIAL 1024 //// // Global variables //// //// // Utility functions //// static unsigned char ledstates[LEDS_NB]; void led(int num,unsigned char state){ if(num>=0 && num=0 && num=0 && num='a' && line[i]<='d') _button(line[i]-'a',0); if(line[i]>='A' && line[i]<='D') _button(line[i]-'A',1); } } if(fds[1].revents&POLLIN){ int nb; if((nb=read(sd,packet,MAX_SERIAL))<=0) break; #ifdef DEBUG printf("serial in: "); #endif int i; for(i=0;i0){ if(write(sd,outbuf,outsize)!=outsize) break; #ifdef DEBUG printf("serial out: "); int i; for(i=0;i