www.mikrocontroller.net

Forum: Compiler & IDEs ATMEGA8 + RS232


Autor: Michael Schaller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forumsgemeinde!

Zunächst möchte ich mal meinen durchaus positiven Eindruck von diesem
Forum kund tun. Ich finds super, wie sachlich und kollegial hier
geholfen wird - ein Lob.

Ich lese nun schon eine ganze Weile immer wieder fleissig mit und habe
vor ettlichen Jahren schon einiges mit Mikroprozessoren und
Mikrocontrollern gemacht (8032, 8051, Z80, 8085, 8086) jedoch alles in
Assembler!

Jetzt hats mich mal wieder in den Fingern gejuckt und ich habe mir ein
STK500 und ein paar AVRs gekauft. Ich wollte mich mal ein wenig in C
versuchen. Allerdings muss ich feststellen, dass ich kläglich scheitere
:-(

Ich wollte zu Beginn einfach nur ein wenig I/O über RS232 mit meinem PC
machen. Dazu habe ich mir Peter Fleurys Library gezogen - finde diese
eigentlich recht gut! Nach anfänglichen Problemchen habe ich das Ding
doch zum Laufen bekommen. Ich kann Texte und Zeichen seriell an meinen
PC senden. Allerdings gelingt es mir nicht, Zeichen vom PC zu lesen!
Ich habe daraufhin auch die im ATMEGA8 Manual gezeigten Beispiele
versucht - 100% identisches Verhalten!!

Faktisch sendet der AVR Daten an den PC, der Rückweg geht aber nicht.

Wie gesagt habe ich Peter Fleurys Library (und den Test) verwendet.

Ich weiss, es ist schwer hier zu helfen aber hat jemand eine Idee??
Kabel ist OK (ich habe versuchsweise das Programmierkabel vom STK500
genommen mit identischem Verhalten). Zudem habe ich sowohl internen
(1MHZ, 4MHZ) Takt als auch einen externen Quarz (4MHz) versucht - immer
das selbe.

AVR ist über die Pins "RX/TX" auf dem STK500-Board mit der seriellen
Buchse verbunden.

Danke & Grüsse
Michael

PS: Code ist zuhause, falls dieser benötigt wird poste ich morgen
nochmal.

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

vermutlich ein Codefehler. Uploade mal den Code dann kann man diesen
vielleicht schonmal ausschliessen.

Autor: Michael Schaller (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forumsgemeinde!

Ich habe jetzt mal meinen Code im Anhang beigefügt.
Vielleicht schaut es sich ja mal jemand an...

Grüsse und ein schönes Wochenende
Michael

Autor: Jochen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Huhu Michael,

also ich hab mir den Code mal schnell auf mein Testboard geladen, und
das funktioniert soweit ich das auf die schnelle überblicken kann
einwandfrei.

Am Anfang werden die zwei Texte:
String stored in SRAM
String stored in FLASH
an den PC gesendet.

danach geht das Programm in eine Endlosschleife und schaut ob Zeichen
an die Serielle des uCs gesendet wurden. Wenn ja schaut er noch ob
irgend welche fehler aufgetreten sind und wenn nicht sendet er das
empfangene Zeichen wieder an den PC zurück.

Also wenn Du in deinem Terminalprogramm kein lokales Echo eingeschalten
hast solltest Du alles was Du tippst wieder im Terminalfenster sehen.

Hoffe das hilft erst mal weiter.

Wenn nicht solltest du die Aussage
>Faktisch sendet der AVR Daten an den PC, der Rückweg geht aber nicht.
mal etwas genauer definieren.

Grüßle Jochen

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Häng doch an den Tx kanal deines PCPorts mal zum spass n oszi dran.
wenn du da ein signal hast, dann geh weiter und mess ob aus dem RS232
wandler was rauskommt (der Rx kanal am µC) wenn da was an kommt weisst
du schonmal dass es am µC liegt, ansonsten kannst du sagen ob es am PC
oder am RS232 wandler liegt (den du vielleicht ja zerschossen hast.).
MfG

Autor: Michael Schaller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Zunächst mal herzlichen Dank, dass ihr euch die Mühe gemacht habt.

@Jochen: So sollte das sein.


@Thomas: Auf die Idee mit dem Oszi bin ich zwar auch schon gekommen,
habe sie dann aber verworfen weil ich an das STK500 glaubte - naja,
Kontrolle ist besser, werde heute Abend das Oszi mal dranhängen.

Ich werde berichten!

Grüsse aus Stuttgart
Michael

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.