www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Probleme mit USART an RX1


Autor: Konstantin Krieger (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
bin gerade am xperimentieren mit einem ATMega128 und habe volgendes
Problem:
Wen ich von PC aus ein Signal an dem atmega sende schein es so als
würde der nichts empfangen! im Dateianhang sind die funktionen.
in der main stehz z.b.

int main(void){
  usart_init1(9600, 8, 'N', 1);
  while(1){
    if(usart_rxstat1()==TRUE){
      x=usart_getc1();
      usart_putc1(x);
    }
    else{
//      usart_write1("Hallo das ist ein test!   ");
    }
  }
}

beim senden usart_write1 wen ich sie aktieviere kommt auch das an was
da Steht. Der Com anschluss ist OK und die Verkabelung mit dem MAX323
stimmt auch.
Komme einfach nicht weiter, vielcht könnt Ihr mir ja weiter helfen bin
für jeden  Tip dankbar.

Autor: inoffizieller WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du ein Zeichen empfangen hast, sendest du es zurück.
Wenn du allerdings kein Zeichen empfangen hast, sendest du dauernd
einen ganzen String.
Da geht das einzelne Zeichen möglicherweise unter...
Du solltest vielleicht eine LED einschalten (, ausschalten oder
umschalten), wenn du ein Byte empfangen hast.
Den Text solltest du nur ein Mal (vor der while-Schleife) ausgeben.

Autor: Konstantin Krieger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
//      usart_write1("Hallo das ist ein test!   ");
^^deaktiviert, wen ich jetzt z.b. "a" sende müste ich auch ein "a"
zurück bekommen bzw irgendwas da pasiert aber nix!

Autor: inoffizieller WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>^^deaktiviert,
übersehen.

Weisst du denn, ob der Controller überhaupt
>     x=usart_getc1();
>      usart_putc1(x);

abarbeitet?

Autor: Konstantin Krieger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
//      usart_write1("Hallo das ist ein test!   ");
^^aktiviere, sendet er mir das auch! spanung 5V hat er.

Autor: inoffizieller WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da springt er grundsätzlich rein, wenn die Bedingung nicht erfüllt ist.
Pack das mal in den oberen Teil (nicht-else-Teil), und lass das
usrat_putc1(x) weg.

Autor: Konstantin Krieger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
software ist ok, der max323 ist hin. danke

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.