www.mikrocontroller.net

Forum: Compiler & IDEs VRBOT-Serial Protocol


Autor: Andy S. (andy11)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich finde es lächerlich was da an pseudo steht. Oder anders ausgedrückt: 
Wieso muss auf ein O gewartet werden? Das steht nirgends im Datenblatt.
Das senden kann irgendein Zeichen sein, aber das EMpfangen auch?

Danke für Support.

lg andy

Autor: Andy S. (andy11)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Antwort: 'o' (6Fh) OK or no errors status
Hab die Status- Details nicht angeschaut.

Aber gleich eine andere Frage:
If not received, bedeutet das in dem Fall, dass auf eine ANtwort 
gewartet wird oder spielen da Zeiten auch eine Rolle?

Was aber nicht drinnen steht ist warum wenn man x sendet wir auf x 
warten.

Hat so etwas noch keiner gemacht=?

Ich habe ganz google gefragt aber nix.

lg andy

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andy S. schrieb:

> If not received, bedeutet das in dem Fall, dass auf eine ANtwort
> gewartet wird oder spielen da Zeiten auch eine Rolle?

Man wird die üblichen Timeout Vereinbarungen benutzen.
Nach einer Zeit t wird die Übertragung als gescheitert angesehen

> Was aber nicht drinnen steht ist warum wenn man x sendet wir auf x
> warten.

Steht doch alles im Datenblatt.
'x' ist das Kommandozeichen für das Kommando CMD_ID
Dort steht unter 'expected replies', dass das Device STS_ID 
zurücksendet.
Im PDF ist das sogar verlinkt. Schau ich unter STS_ID nach, dann finde 
ich, das STS_ID in der Doku für die Sequenz steht, die mit einem 'x' 
eingeleitet wird und das nächste Byte kennzeichnet die Versionsnummer.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In Summe ist die Kommunkation mit dem Gerät eigentlich sehr simpel

* Du schickst ein Kommando rüber
  Jedes Kommando ist einfach nur ein Buchstabe mit möglicherweise
  Argumenten dahinter.

* Als Antwort schickt das Gerät immer etwas zurück.
  Das erste Byte der Antwort ist seinerseits auch ein Buchstabe
  und dieser Buchstabe kennzeichnet den Typ der Antwort, damit die
  Gegenstelle auch weiß ob und wenn ja wieviele Bytes da noch als
  Antwort kommt.

* In der Doku steht bei jedem Kommando dabei, was das Gerät als
  Antwort zurückschicken kann.

Eigentlich ist das alles gut beschrieben. Da hab ich mich schon durch 
schlimmere Doku durchgewühlt.

Autor: Andy S. (andy11)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast doch eh Recht Karl, mir fehlte nur der Motivationsschub. Ich 
werd da durch müssen.

Danke für die Motivation.

lg andy

Autor: Andy S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da ich die Wörter per PC trainiere und ich mit meinem Mikrocontroller 
nur auswerten will interessiert mich dieser Abschnitt:
  -Read a user defined command:
# dump command 0 in group 3
SEND 'p'
SEND 'D'
SEND 'A'
IF NOT RECEIVE = 'd' THEN ERROR
# read command data
SEND ' '
training = RECEIVE – 'A'
# extract training count (2 for a completely trained command)
tr_count = training AND 7
# extract flags for conflicts (SD or SI)
tr_flags = training AND 24
# read index of conflicting command (same group) if any
SEND ' '
conflict = RECEIVE – 'A'
# read label length
SEND ' '
length = RECEIVE – 'A'
# read label text
FOR i = 0 TO length - 1
SEND ' '
label[i] = RECEIVE
# decode digits
IF label[i] = '^' THEN
SEND ' '
label[i] = RECEIVE – 'A' + '0'
END IF
NEXT

Soweit ich das verstanden habe stellen die großen Variablen die 
Parameter dar.
Hier wird als erstes 'p' gesendet.

Laut DB ist 'p':

>CMD_DUMP_SD
>'p' (70h) Read SD/SV command data (label and training)
>[1] Group index (0 = trigger, 1-15 = generic, 16 = password)
>[2] Command position (0-31)
>Expected replies: STS_DATA

Was ist jetzt aber der Group Index, und was gebe ich dem trigger, 
generic, und password?

Jetzt steht da noch [2]... , wieso muss ich die Commandposition angeben? 
Ich habe gedacht dass der Roboter zuhört und je nach Wort ein anderes 
STS_DATA schickt.

Nocheins: Wieso wird eigentlich bevor CMD_DUMP_SD als command gegeben 
wird, das
CMD_RECOG_SD
'd' (64h) Activate SD/SV recognition
[1] Group index (0 = trigger, 1-15 = generic, 16 = password)
Expected replies: STS_RESULT, STS_SIMILAR, STS_TIMEOUT, STS_ERROR

nicht aktiviert?
Das ist doch für die Recognition SD oder?

lg andy

Autor: Andy S. (andy11)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Eine Frage hätte ich aber noch, ich habe zwar schon da nachgefragt 
http://www.veear.eu/Forums/tabid/236/forumid/8/sco...
aber leider abissi leer,

also an alle die schon Erfahrung mit diesem Modul haben:
Da ich diese Information weder im Datenblatt noch sonst wo auftreiben 
konnte die Frage:

Wenn ich im SD Modus Wörter mit dem PC einstrainiert habe und dann 
auswerten will, vergleicht dann das Modul das Wort mit allen Wörtern die 
es eintrainiert hat und gibt eine STS_DATA aus je nachdem welches Wort 
gesprochen wurde?

Wenn ja dann wiederspricht das dem Bild was ich reingestellt habe, denn 
das verlangt eine Commandposition.

lg andy

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.