U(S)ART-Anfänger-Probleme

Gast #644022
Lesenswert?
• ▲
▼
Hallo zusammen,

ich bin auf dem Gebiet der C-Programmierung in Verbindung mit 
Mikrocontrollern (Atmega16) ganz frisch und möchte ein wenig was auf dem 
Gebiet lernen.

Ich hab das Pollin-Evolution Board und programmier den Atmeag mittels 
isp.

So...ich hab Probleme mit der einfachen Kommunikation mit meiner 
RS232-Schnittstelle.

Irgendwie bekomm ich es nicht gebacken ein einziges Zeichen auf 
Knopfdruck an meinen PC zu schicken (gelogged wird mit Tera Term pro).

Der Quellcode ist im Anhang und wie man sieht hab ich dort 
Entprellfunktion und zwei andere Funktionen die ich aus dem Handbuch des 
Atmega16 rauskopiert habe.

So, jetzt wenn ich bei Tera Term auf Baudrate 9600 stelle geht schon mal 
garnichts. Erst wenn ich auf extrem niedrige Baudrate (1200,600) stelle 
dann kommen Zeichen an. Aber da auch nicht die richtigen und nicht 
immer.

Nochmal zur Erklärung, ich hab zwei Taster, mit dem einen kann ich nur 
eine LED toggeln (PIND4). Mit dem anderen Taster (PIND3) möchte ich bei 
jedem Drücken ein Zeichen senden. Erstens empfängt TeraTerm nur alle 5 
mal drücken ein Zeichen und nicht bei jedem Drücken. Zweitens dass mit 
der eingestellten Baudrate funktioniert garnicht.

Ich hab auch so meine Probleme mit dem ganzen Frequenzen, Taktraten. Ich 
kapier garnicht was man bei F_CPU und FOSC und dem ganzen Zeug so 
reinschreiben muss. Woher weiss ich jetz was für einen Frequenz der MC 
jetzt verwendet? Es gibt ja einen Internen Osz. und auf meinem Board 
sind verschiedene Quarze drauf. Wer kann mir das mal prinzipiell 
erklären und auch wie man das einstellt und für was :-)

Fragen über Fragen ich weiss...aber ich möcht ja was dazulernen g

Also hoff es kann mir wer helfen,


Grüße aus Bayern
Markus
Angehängte Dateien:
#644051
Lesenswert?
• ▲
▼
> #define F_CPU 3686400UL     /* Quarz mit 3.6864 Mhz  */
> ...
> #define FOSC 1843200// Clock Speed
du musst Dich schon entscheiden, ob der µC mit 3,6864 oder nur mit 
1,8432 MHz läuft. Und wenn es an der Stelle schon Probleme gibt, wie 
sieht es dann mit den Fusebits aus? Ich geh mal stark davon aus, dass 
der µC mit keiner der beiden Frequenzen oben läuft, sondern vermutlich 
mit dem internen RC-Oszillator @1 MHz...

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.