Also...
Die Verbindung zwischen den PC --> µC --> µC erfolgt durch eine einfache serielle Schnittstelle (19200 Baud etc, etc.)...
Ok, da du schon soweit warst, kommt hier der lustige Teil, das Protokoll:
4 Bites lang:
1. COMMAND
2. ID
3. DATA
4. CHECKSUM
(Nebenbemerkung: DAS DING IST GEIL)
Es arbeitet "fast" wie Netzwerk: empfange Daten --> gucke ob sie ganz sind --> gucke wem sie gehören --> wenn nicht mir --> schicke sie weiter
Also, ab Punkt 4.4 geht es richtig los, aber ich glaube du kannst lesen![]()
....
Humm... Das in VB realisieren... Naja, würde eher C nutzten... aber nur ne Meinung...
Na gut... so würde es (ca.) in C aussehen... Da ich aber grad keine Lust hab das durch nen Complier zu jagen (vor allem, weil grad keiner auf dieser Maschine installiert istCode:void Send_CMD(int command, int ID, int DATA) { char send_buf[3]; //Wo wir unseren befehl hineintun... send_buf[0]=command; send_buf[1]=ID; send_buf[2]=DATA; send_buf[3]=command^ID^DATA; //Erstellen der Cheksumme... RC323.Send(send_buf,sizeof(send_buf); //senden nicht vergessen :D } void rec_answer(const char *buffer, const char *answer) { switch((int)buffer[0]) // Typecast (ist nicht ganz sauber, aber es sollte gehn) { case 255: // Jaja, "Huston,-wir-haben-ein-Problem" Antwort.... sprintf(answer,"WTF!!! Unit %d didn't understand your command (%d, DATA: %d)!!!",(int)buffer[1],(int)buffer[0],(int)buffer[2]); break; //[...] } } void rec() { char rec_buf[4]; char temp[256]; receive_RS323(&rec_buffer,sizeof(rec_buffer); rec_answer(rec_buf, &temp); }), kann ich nicht für die Fehlerlosigkeit garantieren...
Ansonsten: Happy coding![]()
MfG
Mobius
P.S.: Wenn du es dir ganz bequem machen willst, besorg dir nen QBasic sompiler und erstelle das Beispiel, welches am Ende der Datei reinkopiert ist![]()







Zitieren

Lesezeichen