You are on page 1of 1

#include "serial.

h"
void USART_Init(unsigned char ucsrbConfig, unsigned char ucsrcConfig, unsigned long int baudrate, unsigned long
int cpuFrequency)
{
nt ubrrValue = cpuFrequency/16/baudrate-1;

DDRD |= (1 << PORTD1);
DRD &= (1 << PORTD0);
BRR0H = (unsigned char) (ubrrValue >> 8);
BRR0L = (unsigned char) ubrrValue;
CSR0B = ucsrbConfig;
CSR0C = ucsrcConfig;
eturn;
}
void USART_Transmit(char c)
{
hile(!(UCSR0A & (1 << UDRE0)));
UDR0 = c;
eturn;
}
void USART_Transmit_String(const unsigned char c[])
{
or (unsigned int i = 0; c[i] != '\x00'; i++)
USART_Transmit(c[i]);
}
unsigned char USART_Receive()
{

while(!(UCSR0A & (1 << RXC0)));
return UDR0;
}
void USART_Receive_String(unsigned char c[], unsigned int lengthString)
{

unsigned char auxc;

for (unsigned int i = 0; i < lengthString; i++)

c[i] = '\x00';

for (unsigned int i = 0; i < lengthString; i++)
{

auxc = USART_Receive();

if (auxc != '\x0D' && auxc != '\x00')
c[i] = auxc;
else
break;
}
return;
}

serial.c.txt[19/08/2016 9:41:22]

You might also like