9ddd214e13cecf82f0de2518fc461dfabeb3a235
12 bool input_available(void)
14 return iqGetFullI(&(&SD3
)->iqueue
)>0;
17 uint8_t read_byte(void)
19 return (uint8_t)sdGet(&SD3
);
22 void write_byte(uint8_t b
)
27 uint64_t dpins
[] = {LINE_ARD_D0
, LINE_ARD_D1
, LINE_ARD_D2
, LINE_ARD_D3
,
28 LINE_ARD_D4
, LINE_ARD_D5
, LINE_ARD_D6
, LINE_ARD_D7
, LINE_ARD_D8
,
29 LINE_ARD_D9
, LINE_ARD_D10
, LINE_ARD_D11
, LINE_ARD_D12
, LINE_ARD_D13
,
30 LINE_ARD_D14
, LINE_ARD_D15
};
31 void write_dpin(uint8_t i
, bool b
)
33 palWriteLine(dpins
[i
], b
? PAL_HIGH
: PAL_LOW
);
36 bool read_dpin(uint8_t i
)
38 return palReadLine(dpins
[i
]) == PAL_HIGH
;
41 void write_apin(uint8_t i
, uint8_t a
)
47 uint8_t read_apin(uint8_t i
)
53 void led_on(uint8_t i
)
56 palWriteLine(LINE_LED1
, PAL_HIGH
);
58 palWriteLine(LINE_LED2
, PAL_HIGH
);
60 palWriteLine(LINE_LED3
, PAL_HIGH
);
64 void led_off(uint8_t i
)
67 palWriteLine(LINE_LED1
, PAL_LOW
);
69 palWriteLine(LINE_LED2
, PAL_LOW
);
71 palWriteLine(LINE_LED3
, PAL_LOW
);
76 return ST2MS(chVTGetSystemTime());
81 chThdSleepMilliseconds(ms
);
91 void debug(char *fmt
, ...)
101 void die(char *fmt
, ...)
103 palWriteLine(LINE_LED1
, PAL_HIGH
);
104 palWriteLine(LINE_LED2
, PAL_HIGH
);
105 palWriteLine(LINE_LED3
, PAL_HIGH
);