Hallo,
ich hab ein Problem mit der UART-Schnittstelle.
Wenn ich mit HTERM auf die Schnittstelle schau kommen nur "0x00" an das dafür in rauhen mengen.
Die Baudrate ist auf 38400 eingestellt.
Ich selbst seh leider keinen fehler in diesen Quellcode.
Code:
#include <avr/io.h>
#include <stdio.h>
#define F_CPU 36864
#define Baud 38400
void uart_init(void)
{
UCSRB = (1 << TXEN);
UCSRC = (1 << URSEL) | (1 << UCSZ1) | (1 << UCSZ0);
UBRRL=0x05; // Baudrate festlegen
UBRRH=0X0b; // Baudrate festlegen
}
int uart_send(unsigned char c)
{
while (!(UCSRA & (1<<UDRE)))
{
// mach nichts
}
//senden
UDR=c;
return 0;
}
void uart_write(char *s)
{
while(*s)
{
uart_send(*s);
s++;
}
}
int main(void)
{
uart_init();
while(1==1)
{
uart_write("test\0");
}
}
Ich möchte die Schnittstelle für Debugzwecke verwenden. Aber dazu muss ich erst einmal etwas ausgeben können
Besten Dank schon einmal für euere Zeit
Lesezeichen