www.mikrocontroller.net

Forum: Compiler & IDEs U(S)ART ATmega32 gibt nix zurück


Autor: Bamboo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo liebe Community,
ich bin noch blutiger uController Anfänger und brauche langsam mal ein 
Erfolgserlebniss, vielleicht könnt ihr mir ja weiterhelfen. (Ja Google, 
Checkliste, Forum suche, etc. hab ich zu hauf schon durchwälzt)

Erstmal Die Eckdaten
- ATMega 32
- STK 500
- AVR Studio 4.x SP2
- Hyperterminal
- WINAVR für die Makefile

Ich versuche dezeitig meinen uC mit Hyperterminal reden zu lassen. Auf 
den uC ist folgender c-Code (Geklaut^^) ich habe auch schon etwas 
selbstgeschriebenes probiert mit gleichem Nichterfolg:
Zitat:

#include <avr/io.h>

void USART_Init (void)
{
#if F_CPU < 2000000UL
UCSRA = (1 << U2X);
UBRRL = F_CPU / (8 * 9600UL) - 1;
#else
UBRRL = F_CPU / (16 * 9600UL) - 1;
#endif
/*Enable reciever and transmitter */
UCSRB = (1<<RXEN) | (1<<TXEN) ;
/*Set Frame format :8data, 2stop bit */
UCSRC = (1<<URSEL) | (1<<USBS) | (3<<UCSZ0) ;
}

void USART_Transmit ( unsigned char data )
{
/*Wait for empty transmit buffer */
while ( !(UCSRA & (1<<UDRE)) ) ;
/* Put data into buffer, sends data */
UDR = data ;
}

int main (void)
{
USART_Init();

while(1)
{
USART_Transmit ("O");
USART_Transmit ("K");
}
}


Zu meinen Einsellungen. Beginnend mit dem Einfachsten.

HT steht auf 9600 Boud mit 8Bits 2 Stops und ohne Parity und ich habe 
nur einen COM-Port Liar

STK500 uC sitzt drin ist programmierbar (ISP freq 54khz) und ISP6 auf 
SPROG3, RxD und Txd sind auf PD0 und PD1 gebrückt und ich steck das COM 
Kabel zum Ausleseversuch um.

Jetzt zum AVR Studio, Programmieren (ISP Frq 57khz) etc funktioniert, 
unter dem reiter Fuses ist der Haken bei Ckopt gesetzt und bei Sut_Cksel 
steht auf 4 Mhz interner Oszi, da kein externer Oszi vorhanden. Unter 
dem Reiter Advanced steht unter Oscillator Calibration Byte 4 Mhz

Tortz diverser Variationen sehe ich auf dem HT leider gar nix, bis auf 
wenn ich dem STK den Strom wegnehme und danach wieder gebe gibt er mir 
eine '00' aus. Wenn es wenisgtens 2 Zeichen wären könnte ich es ja auf 
die Frequenz oder ähnliches schieben, aber so bekomm ich rein gar nix. 
Irgendwo muss ich wohl einen grundlegenden Fehler machen, aber wo?
Bitte helft mir mit all euren Anregungen und Ideen.

Vielen Dank
Bamboo

Autor: g457 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Handshake deaktiviert? Blinkt eine LED Testweise in der erwarteten 
Frequenz? Pegelwandler anwesend?

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bamboo schrieb:

> Tortz diverser Variationen sehe ich auf dem HT leider gar nix,

Dann wirds Zeit für den Einfachsttest:

Prozessor aus dem Sockel.
Im Sockel eine Drahtbrücke von PD0 auf PD1
und auf dem Hyperterminal klimpern.

Siehst du das was du tippst -> Kabel inklusive Übertragungsstrecke
 ist in Ordnung
Siehst du das nicht -> Kabel auskreuzen

Autor: Flo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bamboo schrieb:
> unter dem reiter Fuses ist der Haken bei Ckopt gesetzt und bei Sut_Cksel
> steht auf 4 Mhz interner Oszi, da kein externer Oszi vorhanden.

Könnte am internen Takt liegen.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Flo schrieb:
> Bamboo schrieb:
>> unter dem reiter Fuses ist der Haken bei Ckopt gesetzt und bei Sut_Cksel
>> steht auf 4 Mhz interner Oszi, da kein externer Oszi vorhanden.
>
> Könnte am internen Takt liegen.

Wenn der Takt knapp daneben liegt, dann rauschen am Hyperterminal 
zumindest irgendwelche Zeichen durch. Er sieht aber gar nichts.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.