
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Hi Jan zu b) am einfachsten in der "Datei" in der C-Control, sofern du die nicht für was anderes benutzt. zu c) du brauchst nur die beiden syscode-befehle hintereinander schreiben. allerdings musst du für die zweite die einsprungadresse ermitteln, und die ggf. neu compilieren (mit org [einsprungadresse] zu beginn). Wird aber bei dir nicht nötig sein, dazu ist der Datensatz kurz genug. und jetzt zu a)...ich hab dir mal nen kurzes code-segment gebaut, damit klar wird, was ich meine. ich hab das jetzt aber nur einfach mal so geschrieben, und da nix auf fehler oder so korrigiert ;-) define daten byte define zaehler byte #warten if not rxt then goto warten get daten get daten open# for write for zaehler = 1 to 8 get daten print# daten next close# #rxdleeren get daten if rxd then goto rxdleeren open# for read input# daten if not daten = 138 then goto falschesn '8A if not daten = 151 then goto falschesn '97 if not daten = 5 then goto falschesn '05 if not daten = 0 then goto falschesn '00 if not daten = 1 then goto falschesn '01 if not daten = 0 then goto falschesn '00 if not daten = 18 then goto falschesn '12 if not daten = 224 then goto falschesn 'E0 close# 'wenn er bis hier kommt, ist die seriennummer korrekt print "Juhu" goto ende #falschesn 'fehlermeldung oder so... print "Falsch Seriennummer ok, ich denke, das ist klar... hab ich noch was von den fragen übersehen? (glaub nicht...) mfg, Marcel > hi marcel. > juhu endlcih einer der von sowas ahnung hat :) ich dachte schon das ist unrealisierbar *schauder* > also das was ich da vom leser bekomme... beginnend mit A4 das ist ein mit-geloggter HEX-eingang > den ich mit nem 2ten pc aufgezeichnet habe. > sieht so aus, ich sende was an den leser, und der gibt mir dann dieses A4blabla in einem zurück > also ist das effektiv " A4018A970500010012E09000 " > soderle.... da das im HEX modus aufgezeichnt ist weiß ich nicht wies bei der cc ankommt... bzw wie > hex da zu händeln wäre. > da wärend der übertragung da keinerlei pausen sind, wie ist das mit dem buffer? > wie geht das dann mit deime asm? > a) wie behandle ich das problem da? > b) wie und wo leg ich da am besten daten ab? > c) wie wurschtle ich 2 asm bzw s19 dateien zusammen? denn ich auch eine für das lcd das da mit > dran angeschlossen ist....? > > hoff das sind nicht zu unklare dinge.... > zur info: das ist ein magnetfeld-coupler der da ansgesteuert werden soll und dieser kann dann > berührungsfrei aus diesen chops wie gesagt entsprechende daten oder die seriennummer usw > rausholen. > und wenn ich die daten dann aufgezeichnet habe (wo ich ja nedweiß wohin) wie geht das dann weiter? > wie verarbeite ich bzw schneide ich die?? > DANKESCHÖN schonmal > MfG > jan > > > > Hi Jan, > > > > erstmal ne Gegenfrage: > > Hast du das ausprobiert, und bekommst wirklich den String zurück? > > (Also wirklich A4 01 8A 97 05 00 01 00 12 E0 90 00 über die serielle Schnittstelle?) > > Wäre ja blöd gemacht vom Chip, dass der dir das nicht binär, sondern im ASCII-Code übergibt... > > Oder sind es wirklich 12 Bytes? > > Dann ist es wesentlich einfacher: > > Du fängst an die Daten einzulesen, wobei du einfach die ersten zwei Bytes nicht beachtest. > > Danach kannst du dir Zeit lassen. Der serielle Puffer der C-Control ist genau 8 Bytes groß, d.H. du > > wertest einfach in Ruhe jedes einzelne Byte aus. Die Bytes vergleichst du mit Werten, die du im > > Programm vorgibst. Nach 8 Werten bist du fertig, den Rest beachtest du einfach nicht (bzw. > > leerst einfach den Puffer). > > > > Wenn du wesentlich größere Datenmengen bearbeiten willst, solltest du die erst einlesen lassen > > (am besten von einem Assembler-Proggie) und in den Datenbereich schreiben lassen. > > Dann kannst du die Daten hinterher in Ruhe auswerten. Wenn du den Assembler-Teil brauchst, > > schau mal auf meine HP. > > > > mfg, > > Marcel > > > > Meine Homepage: http://www.fernwirken.tk |
| Antwort schreiben |