Ich habe einen Arduino und ein MCP2515 und nutze diese Lib: https://github.com/coryjfowler/MCP_CAN_lib Ich kann auch Daten empfangen, nur wie vergleiche ich diese nun. Angenommen es kommt die Nachricht ID=25A und Message=5,5,5,5,5,5,5,5. Jetzt möchte ich irgendeinen Code ausführen. Ich finde immer nur Beispiele um den Internen Filter zu setzen.
Beitrag #5190622 wurde von einem Moderator gelöscht.
Tom schrieb: > nur wie vergleiche ich diese nun. Entweder in einem if mit vielen UND Verknüpfungen oder mit einem memcmp. Intern kommt das auf's gleiche raus. Wenn ich mir die lib anschaue, kriegst du deine Nachricht ja in Form eines INT8U Arrays:
1 | INT8U const code1[8] = {1, 2, 3, 4, 5, 6, 7, 8}; |
2 | INT8U const code2[8] = {8, 7, 6, 5, 4, 3, 2, 1}; |
3 | |
4 | |
5 | INT8U nachricht[8]; |
6 | |
7 | // ... nachricht über lib auslesen
|
8 | |
9 | if (memcmp(nachricht, code1, 8) == 0) |
10 | // bearbeite code1
|
11 | else if (memcmp(nachricht, code2, 8) == 0) |
12 | // bearbeite code2
|
13 | |
14 | // alternativ:
|
15 | |
16 | if ((nachricht[0] == code1[0]) && |
17 | (nachricht[1] == code1[1]) && |
18 | (nachricht[2] == code1[2]) && |
19 | .... ) |
20 | // ....
|
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.