All pastes #2073163 Raw Edit

Unnamed

public text v1 · immutable
#2073163 ·published 2011-06-01 09:49 UTC
rendered paste body
thefear@thefear:~/flshit$ cat demo.c
#define F_CPU 20000000L
#include <avr/io.h>
#include <util/delay.h>
#define BAUD 9600L
#define MYUBRR (F_CPU/16/BAUD)-1
volatile char preved[]= "Preved";

void USART_Transmit(char data );
void USART_Init( unsigned int ubrr);
void USART_SendStr(char* str);

int main( void )
{
USART_Init(MYUBRR);
while (1){
/*uint8_t i;
for (i=0;i<14;i++){
    USART_Transmit(preved[i]);
    _delay_ms(20);
    }
    USART_Transmit(' ');
*/    _delay_ms(1000);
USART_SendStr("Preved");

    }
return(0);
}


void USART_SendStr(char* str)
{
   while(*str)USART_Transmit(*str++);
}



void USART_Init( unsigned int ubrr)
{
    UBRR0H = (unsigned char)(ubrr>>8);
    UBRR0L = (unsigned char)ubrr;
    UCSR0A = 0;
    /*Enable receiver and transmitter */
    UCSR0B = (1<<RXEN0)|(1<<TXEN0);
    UCSR0C = (0<<UMSEL00)|(0<<UMSEL01)|(0<<UPM01)|(0<<UPM00)|(0<<USBS0)|(0<<UCSZ02)|(1<<UCSZ01)|(1<<UCSZ00);
}



void USART_Transmit(char data )
{
    /* Wait for empty transmit buffer */
    while ( !( UCSR0A & (1<<UDRE0)) );
    UDR0 = data;/* Put data into buffer, sends the data */
}