X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;ds=sidebyside;f=client%2Finterface.h;h=24e5c370e866e23841ae2cea095da2c0aaaf0d6c;hb=3fe035b92e9bc0b745c57db64e78461b2f36b6d1;hp=eee34575bf86346c9cceab50e60ef8cbcb9577db;hpb=a8b74f431274acab9369d983f0dfed64333dea9f;p=mTask.git diff --git a/client/interface.h b/client/interface.h index eee3457..24e5c37 100644 --- a/client/interface.h +++ b/client/interface.h @@ -1,13 +1,19 @@ #ifndef INTERFACE_H #define INTERFACE_H +#ifdef __cplusplus +extern "C" { +#endif + #include #include #include #ifdef LINUX -#define MAXTASKS 5 -#define MAXSDSS 100 +#define NAPINS 128 +#define NDPINS 128 +#define STACKSIZE 1024 +#define MEMSIZE 1024 #define HAVELED 1 #define HAVEAIO 1 #define HAVEDIO 1 @@ -16,19 +22,38 @@ extern int gargc; extern char **gargv; #elif defined STM -#define MAXTASKS 5 -#define MAXSDSS 100 +#define NAPINS 128 +#define NDPINS 128 +#define STACKSIZE 1024 +#define MEMSIZE 1024 #define HAVELED 1 #define HAVEAIO 1 #define HAVEDIO 1 +#elif defined ARDUINO_ESP8266_NODEMCU +#define NAPINS 128 +#define NDPINS 128 +#define STACKSIZE 1024 +#define MEMSIZE 1024 +#define HAVELED 0 +#define HAVEAIO 0 +#define HAVEDIO 0 + +#elif defined ARDUINO_AVR_UNO +#define NAPINS 128 +#define NDPINS 128 +#define STACKSIZE 64 +#define MEMSIZE 256 +#define HAVELED 0 +#define HAVEAIO 0 +#define HAVEDIO 0 #else //Add you device here #endif #define read16() 256*(uint8_t)read_byte() + (uint8_t)read_byte() #define from16(a, b) 256*a+b -#define write16(i) { write_byte((uint8_t)i/256); write_byte((uint8_t)i%256); } +#define write16(i) { write_byte((uint8_t)(i/256)); write_byte((uint8_t)(i%256)); } /* Communication */ bool input_available(void); @@ -36,23 +61,33 @@ uint8_t read_byte(void); void write_byte(uint8_t b); /* Analog and digital pins */ +#if HAVEDIO == 1 void write_dpin(uint8_t i, bool b); bool read_dpin(uint8_t i); +#endif +#if HAVEAIO == 1 void write_apin(uint8_t i, uint8_t a); uint8_t read_apin(uint8_t i); +#endif /* UserLED */ +#if HAVELED == 1 void led_on(uint8_t i); void led_off(uint8_t i); +#endif /* Delay and communication */ -long millis(void); -void delay(long ms); +unsigned long getmillis(void); +void msdelay(unsigned long ms); /* Auxilliary */ -void setup(void); +void real_setup(void); void debug(char *fmt, ...); void pdie(char *s); void die(char *fmt, ...); +void reset(void); +#ifdef __cplusplus +} +#endif #endif