usart mit atmega32 immer das gleiche Zeichen

Gast #177569
Lesenswert?
• ▲
▼
Hallo zusammen

Ich möchte mit dem atmega32 über den USART Daten senden. Die
Initialisierung habe ich vom Datenblatt übernommen, doch es kommt immer
das gleiche zeichen am Hyperterminal an (àààààààà).
An welcher Einstellung kann das liegen(siehe Sourcecode)? Beim
Hyperterminal wurden folgende Einstellungen vorgenommen:
Bauderate: 9600
Datenbits: 8
Parität: keine
Stoppbits: 1

Danke für die Hilfe
Angehängte Dateien:
Gast #177574
Lesenswert?
• ▲
▼
> USART_Init(0x23);

Bei 3.68Mhz brauchst Du 23(+1) als Vorteiler. Du hast aber 23h = 35
angegeben.
Dann noch Zeichen statt Zahlen übergeben (was Alex gemeint hat), und es
sollte klappen.

Stefan
Gast #177576
Lesenswert?
• ▲
▼
Das muss nicht unbedingt ein schlechtes Zeichen sein ;-))
Gibst Du dabei

  USART_Transmit(1);
oder
  USART_Transmit('1');

aus? Die Binärwerte 0 -  32 siehst Du im Hyperterminal nicht.
Statt Hyperterminal solltest Du übrigens mal das Bray-Terminal
probieren, da siehst Du jeden Output Deines mc ( 0-255), wenn Du bei
Recieve auf HEX schaltest.

Stefan
Gast #177577
Lesenswert?
• ▲
▼
vielen Dank für eure hilfe, ich habe das bray-terminal versucht und
entlich etwas empfangen. juhuu

doch leider war es etwas total anderes, darum habe ich mal den KO
angeschlossen und mal die baude rate heraus gemessen, das resultat ist
doch ein wenig schauderhaft. wenn ich die rate auf 9600 einstelle
bekomme ich eine rate vo 500 :-(. ich glaube da stimmt noch einiges
nicht.
ich lege das mal auf die Seite und kümmere mich mal um etwas anderes
wenn ich die Lösung habe wieso das soo ist, schreibe ich dies natürlich
hier in's forum.

nochmal's vielen Dank für eure tipps
gruss Martial
Gast #177578
Lesenswert?
• ▲
▼
schau mal, ob Deine fuses wirklich auf externen Quarz gestellt sind.
Ansonsten werkelst Du mit 1Mhz statt den 3,6Mhz.

Die Baudrate misst Du am besten, indem Du 0AA-hex sendest, dann hast Du
nach jedem Bit im gesendeten Datum einen Flankenwechsel.

Stefan

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren