add arduino uno compatability
[mTask.git] / client / arduino / interface.cpp
1 #include <Arduino.h>
2 #include <stdbool.h>
3 #include <stdint.h>
4
5 extern "C" unsigned long getmillis(void);
6 extern "C" void pdie(char *, ...);
7 extern "C" void die(char *, ...);
8 extern "C" void debug(char *, ...);
9 extern "C" void real_setup(void);
10 extern "C" void write_byte(uint8_t);
11 extern "C" uint8_t read_byte(void);
12 extern "C" bool input_available(void);
13 extern "C" void msdelay(unsigned long);
14
15 unsigned long getmillis(void)
16 {
17 return millis();
18 }
19
20 void msdelay(unsigned long ms)
21 {
22 delay(ms);
23 }
24
25 bool input_available(void)
26 {
27 return Serial.available();
28 }
29
30 uint8_t read_byte(void)
31 {
32 return Serial.read();
33 }
34
35 void write_byte(uint8_t b)
36 {
37 Serial.write(b);
38 }
39
40 void real_setup(void)
41 {
42 Serial.begin(9600);
43 }
44
45 void debug(char *fmt, ...)
46 {
47 Serial.println(fmt);
48 }
49
50 void die(char *fmt, ...)
51 {
52 Serial.println(fmt);
53 while(1){
54 msdelay(1000);
55 Serial.print("die");
56 }
57 }
58
59 void pdie(char *s)
60 {
61 die(s);
62 }