diff options
Diffstat (limited to 'boiler-monster/stm32/app/pic.c')
-rw-r--r-- | boiler-monster/stm32/app/pic.c | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/boiler-monster/stm32/app/pic.c b/boiler-monster/stm32/app/pic.c new file mode 100644 index 0000000..b478766 --- /dev/null +++ b/boiler-monster/stm32/app/pic.c @@ -0,0 +1,52 @@ +#include "project.h" + +#define PIC_RESET GPIO1 +#define PIC_RESET_PORT GPIOB + + +static void pic_reset (void) +{ + SET (PIC_RESET); + delay_ms (1); + CLEAR (PIC_RESET); +} + + +void pic_passthru (void) +{ + uint8_t c; + + printf ("\r\nPIC MODE\r\n"); + usart1_drain(); + block_stdio = 1; + + while (!ring_read_byte (&rx3_ring, &c)); + + pic_reset(); + + + for (;;) { + if (!ring_read_byte (&rx1_ring, &c)) + usart3_queue (c); + + if (!ring_read_byte (&rx3_ring, &c)) + usart1_queue (c); + + } +} + + + + + + + +void pic_init (void) +{ + MAP_OUTPUT_PP (PIC_RESET); + + pic_reset(); + +} + + |