00001 #include "uart_b.h"
00002
00003 void init_uart_block_default(){
00004 init_uart_block(51);
00005 }
00006
00007 void init_uart_block(uint16_t ubrr){
00008
00009 UBRRH = (unsigned char)(ubrr>>8);
00010 UBRRL = (unsigned char)ubrr;
00011
00012 UCSRB = (1<<RXEN)|(1<<TXEN);
00013
00014 UCSRC = (1<<URSEL)|(3<<UCSZ0);
00015
00016
00017 }
00018
00019 void putc_b(unsigned char data){
00020
00021
00022 while ( !( UCSRA & (1<<UDRE)) )
00023 ;
00024
00025 UDR = data;
00026 }
00027
00028 unsigned char getc_b(){
00029
00030 while ( !(UCSRA & (1<<RXC)) )
00031 ;
00032
00033 return UDR;
00034 }
00035 void puts_b(char * string){
00036 int i;
00037 for(i=0;string[i]!='\0';i++){
00038 putc_b(string[i]);
00039 }
00040
00041 }
00042 void put_data_b(unsigned int * data, uint8_t length){
00043 int i;
00044 for(i=0;i<=length-1;i++){
00045 putc_b(data[i]);
00046 }
00047
00048 }