Im makefile hast du das?:
MCU = atmega48p
Hast du winavr 2009-03-13
Schau die die .LST-Datei an! Suche darin nach "UBRR0L = UBRR_VAL &
0xFF;"
Die wird erzeugt durch:
%.lst: %.elf
avr-objdump -h -S $< > $@
UBRR0H = UBRR_VAL >> 8;
1092: 80 e0 ldi r24, 0x00 ; 0
1094: 80 93 c5 00 sts 0x00C5, r24
UBRR0L = UBRR_VAL & 0xFF;
10d2: 8f eb ldi r24, 0xBF ; 191
10d4: 80 93 c4 00 sts 0x00C4, r24
Ansonsten kanns an der Hardware liegen. Abblockkondensatoren,
Anschaltung des MAX232, Masseverbindung zwischen PC und ATMega, usw.
Miss mal sie Spannungen -10V / +10V am MAX232 (sind normalerweise -8V /
+9V oder so.
Setze die Baudrate für /dev/TTYS0 mal damit:
port=/dev/ttyS0
setserial $port divisor 96
setserial $port spd_cust
stty speed 1200 < $port
oder nur damit:
stty speed 1200 < /dev/TTYS0
Probier mal 'gtkterm' anstatt 'minicom'