domibutterfly
30.08.2005, 16:19
hi habe ein Kleines Problem. ](*,) !!
Komme einfach nicht weiter.
Die serialle komunikation mit meinem Board funktioniert in soweit, das ich prgrammieren kann und das er beim starten im Hyperterminal die Fragezeichen macht. Aber dann ist sense.
Hier mal der Code.
void USART_Init(unsigned int baudrate)
{
// Set baud rate
UBRRH = (unsigned char)(baudrate>>8);
UBRRL = (unsigned char)baudrate;
// Enable 2x speed
UCSRA = (1<<U2X);
// Enable receiver
UCSRB = (1<<RXEN)|(0<<TXEN)|(0<<RXCIE)|(0<<UDRIE);
// Async. mode, 8N1
UCSRC = (0<<UMSEL)|(0<<UPM0)|(0<<USBS)|(3<<UCSZ0)|(0<<UCPOL);
}
void Usart_Tx(char data)
{
while (!(UCSRA & (1<<UDRE)));
UDR = data;
}
initalizierung
CLKPR = (1<<CLKPCE); // set Clock Prescaler Change Enable
// set prescaler = 8, Inter RC 8Mhz / 8 = 1Mhz
CLKPR = (1<<CLKPS1)| (1<<CLKPS0);
USART_Init(12); // Baud rate = 9600bps
Programm
lcd wird benutzt und einige Ports aber auch durch ausschalten wird es nicht besser.
die funktion rufe ich mit
Usart_Tx(5); auf aber passieren tut nichts
jemand eine Idee?
Komme einfach nicht weiter.
Die serialle komunikation mit meinem Board funktioniert in soweit, das ich prgrammieren kann und das er beim starten im Hyperterminal die Fragezeichen macht. Aber dann ist sense.
Hier mal der Code.
void USART_Init(unsigned int baudrate)
{
// Set baud rate
UBRRH = (unsigned char)(baudrate>>8);
UBRRL = (unsigned char)baudrate;
// Enable 2x speed
UCSRA = (1<<U2X);
// Enable receiver
UCSRB = (1<<RXEN)|(0<<TXEN)|(0<<RXCIE)|(0<<UDRIE);
// Async. mode, 8N1
UCSRC = (0<<UMSEL)|(0<<UPM0)|(0<<USBS)|(3<<UCSZ0)|(0<<UCPOL);
}
void Usart_Tx(char data)
{
while (!(UCSRA & (1<<UDRE)));
UDR = data;
}
initalizierung
CLKPR = (1<<CLKPCE); // set Clock Prescaler Change Enable
// set prescaler = 8, Inter RC 8Mhz / 8 = 1Mhz
CLKPR = (1<<CLKPS1)| (1<<CLKPS0);
USART_Init(12); // Baud rate = 9600bps
Programm
lcd wird benutzt und einige Ports aber auch durch ausschalten wird es nicht besser.
die funktion rufe ich mit
Usart_Tx(5); auf aber passieren tut nichts
jemand eine Idee?