www.mikrocontroller.net

Forum: Mikrocontroller und Elektronik R8C: über Hterm und UART0 LED anschalten


Autor: Michael T. (michelback)
Datum:

Halló zusammen,
ich scheitere gerade an der UART kommunikation mit dem R8C und HTerm.
Ziel ist, dass ich über ein festgelegtes Zeichen, das ich über UART zum
µC schicke eine LED anschalte.
Ausschnitt aus dem code (UART_init wurde vorher schon implementiert):


unsigned char rcv_buf;
unsigned short receive_data;
pd2_0=1;
p2_0=0;

while (1){

     if(ri_u0c1 == 1){                       //data in U0RB register?
            receive_data = u0rb;             //receive data
            rcv_buf = (unsigned char)receive_data;

            if(rcv_buf == 0x2B){        //wenn + gesendet dann leuchte
               p2_0=1;
            }


Leider tut sich gar nichts und ich weiß nicht woran es liegt. Testweise
hatte ich auch eine andere LED angeschaltet, ob der µC resettet. Tut er
aber nicht. Da ich noch recht frisch bin in Sachen µC-Programmierung,
weiß ich auch nicht, ob das überhaupt so funktionieren kann. Ich habe
mir das lediglich aus einigen Application notes rausgesucht.

In Hterm hatte ich bei "Type" ASC ausgewählt und "++" eingegeben, danach
Enter gedrückt. Bei "send on enter" habe ich es mit "none" probiert.
Ich möchte einfach nur ein beispielcode, mit dem ich arbeiten kann. Ich
weiß leider nicht mehr weiter. Wenn mir jemand helfen kann wäre das
super.
Grüße und Danke,
Michael
Autor: Karl Heinz Buchegger (kbuchegg) (Moderator)
Datum:

Michael T. schrieb:

>             receive_data = u0rb;             //receive data
>             rcv_buf = (unsigned char)receive_data;
>
>             if(rcv_buf == 0x2B){        //wenn + gesendet dann leuchte

"wenn + gesendet"
Dann schreibs auch so!
              if(rcv_buf == '+'){


Immer diese ASCII Code Fetischisten! Schreib doch Zeichen im Klartext
hin, dann kann auch ein Blinder mit Krückstock auf 3 Meter Entfernung
ertasten, was diese Abfrage bedeuten soll.

> Leider tut sich gar nichts und ich weiß nicht woran es liegt.

Es ist IMMER eine extrem gute Idee, sich das Zeichen, welches empfangen
wurde, sofort zurückschicken zu lassen, damit es am Terminal angezeigt
wird. Auf die Art sieht man dann als Tester, ob das Zeichen (falls
überhaupt) gut angekommen ist, oder ob etwas damit auf dem
Übertragungsweg passiert ist oder ob es das Terminal zb zurückhält oder
dergleichen.
Autor: Stefan B. (stefan) Benutzerseite
Datum:

Hier ist ein einfaches, komplettes UART-Beispiel für den R5F21134FP
(R8C/13) = Erstes R8C-Board von Elektor/Glyn:

http://www.mikrocontroller.net/articles/R8C_Codebe...

Das Programm ist ein "leicht abgewandeltes" Echo für empfangene Daten
und LED an P10 an/aus.

Du scheinst aber einen anderen R8C einzusetzen, wenn du einen Pin P20
hast. Also Vorsicht beim 1:1 übernehmen des Beispiels!
Autor: Michael X. (Firma: vyuxc) (der-michl)
Datum:

Da fehlt die komplette initialisierung des UARTs. Du hast den Port 2.0
als IO zugewiesen. Das reicht bei weitem nicht. Zieh dir bei Renesas die
Beispiele runter, da gibts genug Code zum ausprobieren.
Autor: Michael T. (michelback)
Datum:

Hallo,

vielen Dank für die Infos, ich habe jetzt das Programm
mikrocontroller.net eingebunden und entsprechend angepasst (Baudrate,
pins). Ich verwende den R8C/22, bei ihm ist es nicht nötig zwei 8bit
register zu lesen, sondern nur ein 16bit register. Funktioniert aber
einwandfrei, vielen Dank an alle.

Grüße,
Michael
Autor: Karsten (Gast)
Datum:

> ich habe jetzt das Programm mikrocontroller.net eingebunden

Kenne ich, das ist gut!
Autor: Sven Stefan (stepp64) Benutzerseite
Datum:

Benutze ich fast täglich ;-)

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




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 erkennst du die Nutzungsbedingungen an.

webmaster@mikrocontroller.netImpressumNutzungsbedingungenWerbung auf Mikrocontroller.net