msb430-slip-arch.c
00001 #include "dev/msb430-uart1.h"
00002 #include "dev/rs232.h"
00003 #include "sys/clock.h"
00004 #include "dev/slip.h"
00005 
00006 
00007 void
00008 slip_arch_writeb(unsigned char c)
00009 {
00010   rs232_send(c);
00011 }
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 int
00021 putchar(int c)
00022 {
00023 #define SLIP_END 0300
00024   static char debug_frame = 0;
00025 
00026   if(!debug_frame) {            
00027     slip_arch_writeb(SLIP_END);
00028     slip_arch_writeb('\r');     
00029     debug_frame = 1;
00030   }
00031 
00032   slip_arch_writeb((char)c);
00033   
00034   
00035 
00036 
00037 
00038   if(c == '\n') {
00039     slip_arch_writeb(SLIP_END);
00040     debug_frame = 0;
00041   }
00042 
00043   clock_delay(100);
00044 
00045   return c;
00046 }
00047 
00048 
00049 
00050 
00051 
00052 void
00053 slip_arch_init(unsigned long ubr)
00054 {
00055   rs232_set_input(slip_input_byte);
00056 }