N'abend,
ich hab ein Problem mit dem UART auf dem ATMEGA32. Ich verwend die
Bibliothek von Fleury, siehe Anhang, und hab nen kleines Testprogramm
zusammengebastelt nur um die Funktionalität zu testen.
1 | #include <stdlib.h>
|
2 | #include <avr/io.h>
|
3 | #include <avr/interrupt.h>
|
4 | #include <avr/pgmspace.h>
|
5 |
|
6 | #include "uart-routines.h"
|
7 |
|
8 | #define F_CPU 18000000UL
|
9 |
|
10 | #include <util/delay.h>
|
11 |
|
12 | int main(void)
|
13 | {
|
14 | DDRD = 0xE;
|
15 | PORTD = 255;
|
16 |
|
17 | char test;
|
18 |
|
19 | uart_init( UART_BAUD_SELECT(9600,F_CPU) );
|
20 |
|
21 | sei();
|
22 |
|
23 | uart_puts_P("reset");
|
24 |
|
25 | for(;;)
|
26 | {
|
27 | test = uart_getc();
|
28 | uart_putc(test);
|
29 | }
|
30 | }
|
Das Problem an der Sache ist nun von reset seh ich in minicom nur "re"
auch wenn ich irgendeinen anderen String angeben kommen immer nur die
ersten beiden Zeichen und das mit uart_getc funktioniert anscheinend gar
nicht, da kann ich auf der tastertur rumhämmern wie ich will.
Einer eine Idee voran das liegen koennte? An den 18 Mhz denk ich mal
nicht.
Ach so Fuses sind: hfuse: 0xc9 und lfuse 0x3f.
Herzlichen Dank
Peter