UxUCR_D9_ODD_PARITY |
UxUCR_BIT9_8_BITS |
UxUCR_PARITY_DISABLE |
- UxUCR_SPB_1_STOP_BIT |
+ UxUCR_SPB_2_STOP_BITS |
UxUCR_STOP_HIGH |
UxUCR_START_LOW);
}
while (!UTX1IF)
;
UTX1IF = 0;
- delay(1);
+}
+
+void
+usart_out_string(uint8_t *string)
+{
+ uint8_t b;
+
+ while (b = *string++)
+ usart_out_byte(b);
}
uint8_t
return b;
}
-static char string[] = "hello world\r\n";
+void
+debug_byte(uint8_t byte)
+{
+ uint8_t s;
+
+ for (s = 0; s < 8; s++) {
+ DEBUG = byte & 1;
+ delay(5);
+ byte >>= 1;
+ }
+}
main ()
{
- uint8_t i;
-
P1DIR |= 2;
CLKCON = 0;
while (!(SLEEP & SLEEP_XOSC_STB))
usart_init();
for (;;) {
- for (i = 0; i < sizeof(string) - 1; i++)
- usart_out_byte(string[i]);
- delay(5);
- P1 ^= 2;
+ usart_out_string("hello world\r\n");
+ debug_byte(usart_in_byte());
}
+
}