www.mikrocontroller.net

Forum: Compiler & IDEs U(S)ART-Anfänger-Probleme


Autor: Markus (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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

Autor: Johannes M. (johnny-m)
Datum:

Bewertung
0 lesenswert
nicht 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...

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, stimmt schon...da hast du recht, an den Fusebits hab ich nichts 
geändert. Also läuft er wohl mit 1MHz.

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.