über rs232 empfangene bytes im pic weiterverarbeiten
hallo,
ich hab da mal n problem. ich will mit meinem pc über rs232 dem pic startbefehle für unterprogramme geben.
da ich aber (zurzeit) leider nicht dazu komme, mich näher mit einer programmiersprache für pc zu beschäftigen, wollte ich hier auf clickEXE (so'n programm zum zusammenklicken von Windows-Anwendungen) :oops: zurückgreifen.
da gibt es eine funktion, mit der man einen string über den com-port senden kann. das ist ja eigentlich wunderbar, nur leider weiß ich jetzt überhaupt nicht, was ich dann damit im pic anfangen soll. also wenn ich jetzt z.B ein einfaches "a" vom pc aus sende, dann krieg ich des am pic ja als byte rein (is ja logisch), aber jetzt muss ich am pic ja z.B. mein "a" von einem "b" unterscheiden. und da haperts bei mir an zwei stellen:
1. hat vielleicht jemand eine liste oder so, in der ich ablesen kann, wie buchstaben in ein byte aus Nullen und Einsen zerlegt werden?
und
2. kann ich dann, mal angenommen mein "a" ist als byte ein "00101101", eben dieses "00101101" in eine speicherzelle schreiben und dann das über rs232 reinkommende byte koplette mit dem aus der speicherzelle vergleichen, oder muss ich da einzeln jedes bit überprüfen? des kann doch fast net sein. des wär doch bei einer auswahl von 26 buchstaben ein bisschen viel verlangt, oder??
oder hab ich da vielleicht was kompett falsch verstanden?
ich hoffe mal, es sind nicht alle in urlaub, sodass mir jemand weiterhelfen kann.
mfg Simon
[Edit]
Nochmal was: Hat einer vielleicht grad n link zu ner seite, wo man mal des hexadezimale System erklärt kriegt? des blick ich nämlich noch net so ganz.
[/Edit]
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Simon,
ja, die erste zeile "movlw 0x41" simuliert das empfangene Zeichen. Also Du liest reak das UART Empfangsregister aus und führst dann die Subtraktion durch. Sorry, wenn das jetzt missverständlich war. ich hab als Kommentar deshalb geschrieben dass dies jetzt das Zeichen aus dem UART Empfangsregister sei. - Zum verständnis
Binär - Hex: ja der Prozessor arbeitet nur binär , also mit nullen und Einsen. wegen der Übersichtlichkeit schreibt man das eben als hex oder als Dezimal-Zahl. An die Dezimal-Zahlen kann ich mich in dem Zusammenhang nicht gewöhnen. 4 Binäre Stellen entsprechen so schön einer Hex-Ziffer. das macht das Ganze übersichtlicher.
Ich hoffe, ich hab dir geholfen und nicht verwirrt. Im Anhang ist ein kleines Beispiel. Ein PIC16F627 steuert über die serielle Schnittstelle eine Maschine.
Gruß
gerhard