www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik RS232 Befehl


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

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
Ich möchte an das Gerät, dessen Anleitung im Anhang ist ein Befehl 
schicken, dass es sich einschaltet.
leider klappt das nicht.
Die Box reagiert darauf nicht.
Habe ich aus der Anleitung was falsches rausgelesen?
Ich schicke 7E 30 30 30 30 20 31 0D was fürs Einschalten steht.
Arbeite mit dem Atmega8.
Am PC (Hyperterminal) kommt alles richtig an.
Kann Jemand helfen?
Danke

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie schickt du das
> 7E 30 30 30 30 20 31 0D

als string oder als 8bytes

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm, gute frage :)
Als "print "7E 30 30 30 30 20 31 0D" "
Das ist der Befehl für Ausgabe über UART.
Gruss Alex

Autor: Oliver Ju. (skriptkiddy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn es am Hyperterminal richtig ankommt, könnte man meinen du schickst 
die Hexwerte im Klartext hin. Sollte aber so aussehen:
uart_puts("~XX00 1\r");  //Projektor einschalten

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe ich gerade ausprobiert.
Funktioniert leider auch nicht.

Ich habe noch einen Beamer, mir dem es aber funktioniert, den über RS232 
zu steuern.
Noch Ideen, warum es nicht klappt?
Gruss Alex

Autor: Oliver Ju. (skriptkiddy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bitte den kompletten Code zeigen.

Autor: Oliver Ju. (skriptkiddy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alex schrieb:
> Ich habe noch einen Beamer, mir dem es aber funktioniert, den über RS232
> zu steuern.

Der selbe beamer oder ein anderer?

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gerne, ist aber in Basic:

$regfile = "m8def.dat"
$crystal = 8000000
$baud = 9600

Config Lcd = 20 * 4
Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , 
Db7 = Portc.3 , E = Portc.5 , Rs = Portc.4
Cls

Config Pind.2 = Input
Config Pind.3 = Input
Config Pind.4 = Input
Config Pind.5 = Input

Do
Debounce Pind.2 , 0 , Bx_einschalten , Sub
Debounce Pind.3 , 0 , Bx_ausschalten , Sub
Debounce Pind.4 , 0 , Be_einschalten , Sub
Debounce Pind.5 , 0 , Be_ausschalten , Sub
Loop

Bx_einschalten:
Cls
Lcd "Box Ein"
Waitms 10
Print "7E 30 30 30 30 20 31 0D"
Return

Bx_ausschalten:
Cls
Lcd "Box Aus"
Waitms 10
Print "7E 30 30 30 30 20 30 0D"
Return

Be_einschalten:
Cls
Lcd "Beamer Ein"
Waitms 10
Print "* 0 IR 001\r"
Waitms 10
Print "* 0 IR 001"
Waitms 10
Print "0 IR 001\r"
Waitms 10
Print "IR 001\r"
Return

Be_ausschalten:
Cls
Lcd "Beamer Aus"
Waitms 10
Print "* 0 IR 002\r"
Waitms 10
Print "* 0 IR 002"
Waitms 10
Print "0 IR 002\r"
Waitms 10
Print "IR 002\r"
Return

End


Wie gesagt, beim Beamer funktioniert alles.
Ein Befehl von den 4 hat gepasst :)

Danke
Gruss Alex

Autor: Oliver Ju. (skriptkiddy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Print "7E 30 30 30 30 20 31 0D"
Print "7E 30 30 30 30 20 30 0D"

Das ist Unfug! In der Anleitung steht, dass die Box ASCII-Befehle möchte 
und keine Hexstrings.


Wie wärs hiermit:
Print “~0000 1” ; Chr(13);  ' Box an
Print “~0000 0” ; Chr(13);  ' Box aus


Skript Kiddy schrieb:
> Alex schrieb:
>> Ich habe noch einen Beamer, mir dem es aber funktioniert, den über RS232
>> zu steuern.
>
> Der selbe beamer oder ein anderer?
Das hier war Unfug meiner Seits


Gruß Skriptkiddy

Autor: Sascha Weber (sascha-w)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also so geht's nicht
Print "7E 30 30 30 30 20 31 0D"
denn dann schickst du ja hex als ascii

das obige entspricht ~0000 1<CR>
das XX ist durch die Geräte-ID zu ersetzen! Oder 00 für alle!

oder schreibe print chr(0x7E) & chr(0x30) & ...

Sascha

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke!!!
 jetzt geht es.

>In der Anleitung steht, dass die Box ASCII-Befehle möchte und keine >Hexstrings

Hm, nicht gesehen.
Noch mal, vielen Dank!
Gruss Alex

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.