#include <string.h>
#include <stdarg.h>
-#include "chprintf.h"
#include "interface.h"
#include "ch.h"
#include "hal.h"
//Globals
bool input_available(void)
{
+ //return iqGetFullI(&(&SD6)->iqueue)>0;
return iqGetFullI(&(&SD3)->iqueue)>0;
}
uint8_t read_byte(void)
{
return (uint8_t)sdGet(&SD3);
+ //return (uint8_t)sdGet(&SD6);
}
void write_byte(uint8_t b)
{
sdPut(&SD3, b);
+ //sdPut(&SD6, b);
}
uint64_t dpins[] = {LINE_ARD_D0, LINE_ARD_D1, LINE_ARD_D2, LINE_ARD_D3,
LINE_ARD_D4, LINE_ARD_D5, LINE_ARD_D6, LINE_ARD_D7, LINE_ARD_D8,
LINE_ARD_D9, LINE_ARD_D10, LINE_ARD_D11, LINE_ARD_D12, LINE_ARD_D13,
LINE_ARD_D14, LINE_ARD_D15};
+
void write_dpin(uint8_t i, bool b)
{
palWriteLine(dpins[i], b ? PAL_HIGH : PAL_LOW);
bool read_dpin(uint8_t i)
{
+ debug("readpin: %d", i);
return palReadLine(dpins[i]) == PAL_HIGH;
}
void setup(void)
{
+// palSetPadMode(GPIOG, 9, PAL_MODE_ALTERNATE(8)); // USART6 TX
+// palSetPadMode(GPIOG, 14, PAL_MODE_ALTERNATE(8)); // USART6 RX
+
halInit();
chSysInit();
sdStart(&SD3, NULL);
void debug(char *fmt, ...)
{
- va_list ap;
- va_start(ap, fmt);
- chvprintf((BaseSequentialStream *)&SD3, fmt, ap);
- va_end(ap);
+ write_byte('m');
+ for(unsigned int i = 0; i<strlen(fmt); i++){
+ write_byte(fmt[i]);
+ }
+ write_byte('\n');
+// (void)fmt;
}
void pdie(char *s)