www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Atmega128 mit FTDI232BM


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

Bewertung
0 lesenswert
nicht lesenswert
Hallo.

Ich habe folgendes Problem. Ich habe ein kleines Programm geschrieben,
welches die berühmten Worte "Hallo Welt" über die serielle
Schnittstelle raushaut. Nun ist es aber so, dass mein HyperTemrinal nur
Blödsinn empfängt.
Liegt das jetzt daran, dass ich bei der Programmierung Fehler gemacht
habe, oder ist doch meine Hardware dran schuld.

Desweiteren würde mich mal interessieren, warum der gcc-Compiler ein
hex-File generiert in dem die ersten 9 Zeilen fast idendtisch sind.

:100000000C9446000C9463000C9463000C94630001
:100010000C9463000C9463000C9463000C946300D4
:100020000C9463000C9463000C9463000C946300C4
:100030000C9463000C9463000C9463000C946300B4
:100040000C9463000C9463000C9463000C946300A4
:100050000C9463000C9463000C9463000C94630094
:100060000C9463000C9463000C9463000C94630084
:100070000C9463000C9463000C9463000C94630074
:100080000C9463000C9463000C94630011241FBE55

Wenn jemand eine Idee hat, dann wäre ich für die Unterstützung dankbar.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Könnte das die Interrupttabelle sein?

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Desweiteren würde mich mal interessieren, warum der gcc-Compiler
> ein hex-File generiert in dem die ersten 9 Zeilen fast idendtisch
> sind.

Weil da die Interrupt-Vektor-Tabelle gespeichert ist. Alle interrupts,
die du nicht nutzt, werden auf einen default-Handler gestellt.

Autor: Niko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das erklärt so einiges, aber nicht alles. Das ist das erste mal, dass
ich sowas bekomme. Wenn ich Programme für den ATMega8 compiliere, dann
erhalte ich die Interrupt Tabelle nicht.

Aber nun gut. Wenn dem so ist, dann kann ich damit leben.

Ich bedanke mich für Antworten.

Wenn jetzt noch ein Input für mein anderes Problem kommt, dann bin ich
rundum zufrieden.

Autor: Helge Dietert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, der Aufbau und Länge ist unterschiedlich, so dass sie beim ATMega8
so kurz ist, dass man sie nicht sofort wahrnimmt, während der ATMega128
sehr viele Interrupts besitzt.

Zu dem Init schau dir mal das Datenblatt für den ATMega128 an, da
steht, wie man den richtig initialisiert; hat bei mir immer
funktioniert. Der Unterschied ist, dass es ein USART mit mehr Registern
ist, so dass URSEL so weit ich mich richtig erinnere wegfällt(war doch
das um das UARST Register Selection Bit, oder?); funktioniert denn das
Compilieren?

Im Datenblatt ist sogar ein C-Code-Bsp!

Helge

Autor: Niko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jaujau. Ich habs gefunden. Funktioniert wunderbar.

Wer lesen kann ist halt klar im Vorteil. Ich hatte die ganze Zeit
USART1 am Wickel anstatt USART0.

Vielen Dank nochmal.

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.