mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik UART Receive Interrupt Problem


Autor: Frederik H. (bytejesus)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,
habe jetzt alle Beiträge zum Thema gelesen - sehe aber meinen Fehler 
nicht!

Habe ein Bluetooth Modul Parani ESD 210 an die UART von meinem Mega32 
angeschlossen. Die kommunikation funktioniert bidirektional. Habe ich 
getestet.

Nun möchte ich die zeichen die ich vom PC per Bluetooth übertrage vom 
AVR per Interrupt empfangen und in main auswerten.
Nur springt mir der avr nie in die ISR...

Schaut doch bitte mal drüber und helft mir!!!

Danke!!

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frederik H. schrieb:

> Nun möchte ich die zeichen die ich vom PC per Bluetooth übertrage vom
> AVR per Interrupt empfangen und in main auswerten.
> Nur springt mir der avr nie in die ISR...

Woher weißt du das?

Du fummelst sowohl in der ISR als auch in der Hauptschleife am PORTC 
rum. Wenn die ISR dir dort eine (vermutete) LED einschaltet, wird sie in 
der Hauptschleife gleich wieder ausgeschaltet.

Autor: Frederik H. (bytejesus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Weil er nie in
if (uart_str_complete == 1)
reinspringt, nie die LEDS 5 sekunden schaltet und kein hier3 sendet.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frederik H. schrieb:
> Weil er nie in
> if (uart_str_complete == 1)
> reinspringt, nie die LEDS 5 sekunden schaltet und kein hier3 sendet.

Das heißt noch lange nicht, dass die ISR nie angesprungen wird.

Wenn du etwas testest, dann musst die Dinge auch richtig testen und so 
wenig Vermutungen wie möglich treffen. Möglichst nicht indirekt, sondern 
ganz direkt gezielt einen Test überlegen, wie du feststellen kannst ob 
die ISR je angesprungen wird.

Autor: Frederik H. (bytejesus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In der ISR versuche ich die empfangenen Daten direkt zurückzuschicken, 
wie du in einem anderen Beitrag vorgeschlagen hattest.
sendchar( buffer );
ich empfange leider nix !

Autor: Frederik H. (bytejesus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also Software war vollkommen OK. Lag an einer ungewollten Verbindung von 
Tx und GND .... :-(

Danke trotzdem!

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.