Danke fuer die Antworten schonmal!

Also..
@Jens -> aendert gar nichts

@Fred:
Meine Fusebits sind die hier:

LowFuse: 1111 1111
HighFuse: 1101 1010

Frag mich nicht was genau das heisst.. ich hab das alles noch nicht so ganz verstanden...

*edit*: hab grade noch herausgefunden was das heisst:
Ext. Crystal High Freq. / Startup time: 16K CK + 64ms
(wobei das mir das trotzdem nichts sagt )

@Sebastian:
Ich hab die veranderung mal gemacht - dann kommt was anderes an - aber immer noch zeichensalat.... - weisst du ob der F_CPU-Wert richtig ist? (fuer nen 16MHz ATMega32)\
Code:
#ifndef F_CPU
#define F_CPU 16000000
#endif

#define BAUD 9600L

#define UBRR_VAL ((F_CPU+BAUD*8)/(BAUD*16)-1) 

void init_USART(void)
{
  UBRRH = UBRR_VAL >> 8;
  UBRRL = UBRR_VAL & 0xFF; 

  UCSRB |= (1<<TXEN);   //UART TX (Transmit - senden) einschalten
  UCSRC |= (1<<URSEL)|(3<<UCSZ0);   //Modus Asynchron 8N1 (8 Datenbits, No Parity, 1 Stopbit)
}
Die Senderoutine ist die hier: (auch von dem Tutorial von RN-Wissen kopiert)
Code:
void sendchar(unsigned char c)
{
	while(!(UCSRA & (1<<UDRE))) {} //Warten, bis Senden möglich ist
	UDR = c; //schreibt das Zeichen aus 'c' auf die Schnittstelle
}


void sendUSART(char *s) //*s funktiniert wie eine Art Array - auch bei einem String werden die Zeichen (char) einzeln ausgelesen - und hier dann auf die Sendeschnittstelle übertragen
{
	while(*s)
	{
	sendchar(*s);
	s++;
	}
}
Und dann das Programm einfach:
Code:
#include <stdlib.h> 
#include <avr/io.h>
#include "rncontrol.h"

int main(void)
{
    init_USART();	//USART konfigurieren
    while(1){}	 
    return 0;
}
Und hier das Ergebniss...
Code:
mattis@mattis-dell:~$ hexdump /dev/ttyUSB0 -v -C
00000000  a9 3a 3a 0a 02 a9 3a 3a  0a 02 a9 3a 3a 0a 02 a9  |.::...::...::...|
Mattis