[ create a new paste ] login | about

Link: http://codepad.org/9CNK4k0i    [ raw code | fork ]

C, pasted on Mar 30:
#include <avr/io.h>
	#define FOSC 1843200// Clock Speed
	#define BAUD 9600
	#define MYUBRR FOSC/16/BAUD-1
	
	
int main(void)
{
	
	
	USART_Init ( MYUBRR );
	
	while(1){
	USART_Receive();
	USART_Transmit();
	}

			
}
		


	void USART_Transmit( unsigned char data )
	{
		/* Wait for empty transmit buffer */
		while ( !( UCSRnA & (1<<UDREn)) )
		;
		/* Put data into buffer, sends the data */
		UDRn = data;
	}
	
	
	
	
	void USART_Init( unsigned int ubrr )
	{
		/* Set baud rate */
		UBRRnH = (unsigned char)(ubrr>>8);
		UBRRnL = (unsigned char)ubrr;
		/* Enable receiver and transmitter */
		UCSRnB = (1<<RXENn)|(1<<TXENn);
		/* Set frame format: 8data, 2stop bit */
		UCSRnC = (1<<USBSn)|(3<<UCSZn0);
	}
	
	
	unsigned char USART_Receive( void )
{
	/* Wait for data to be received */
	while ( !(UCSRnA & (1<<RXCn)) )
	;
	/* Get and return received data from buffer */
	return UDRn;
}


Create a new paste based on this one


Comments: