Herunterladen Inhalt Inhalt Diese Seite drucken
Inhaltsverzeichnis

Werbung

BEACON SOUNDER

BEISPIEL-CODE

Der folgende C-Code kann verwendet werden, um dieses Protokoll zu
implementieren.
// Range for r,g,b is 0 .. 255.
// Run this function every 5 .. 10 seconds
void set(BSoundMode s, BLightMode m, uint8_t r, uint8_t g, uint8_t b) {
// Transmit new values
char cmd[9];
cmd[0] = 'X';
cmd[1] = toHex(m);
cmd[2] = toHex(r >> 4);
cmd[3] = toHex(g >> 4);
cmd[4] = toHex(b >> 4);
cmd[5] = toHex(s);
cmd[6] = toHex( (cmd[0] + cmd[1] + cmd[2] + cmd[3] + cmd[4] + cmd[5]) &
0xF);
cmd[7] = '\r';
cmd[8] = 0;
// Transmit
printf((const char*) cmd);
}
char toHex(uint8_t x) {
if (x < 10)
return '0' + x;
else if (x < 16)
return 'A' + x - 10;
else
return '?';
}
enum BSoundMode {BS_OFF = 0, BS_CONTINUOUS_2K7 = 1, BS_LINEAR_2K7_FAST = 2, BS_
LINEAR_2K7_SLOW = 3, BS_SMALLBEEPS = 4};
enum BLightMode { BS_FAST = 0, BS_SLOW = 1, BS_LOOP = 2, BS_ON = 3, BS_TINYFLASH = 4,
BS_FULLFLASH = 5};
12

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis