Manchester transmitter demo.

Dependencies:   Manchester mbed CRC16 ManchesterMsg

main.cpp

Committer:
hudakz
Date:
2017-05-18
Revision:
1:cc6d7d370126
Parent:
0:f58990cef4fe
Child:
2:0ab7d3335571

File content as of revision 1:cc6d7d370126:

#include "mbed.h"
#include "Manchester.h"
#include "CRC16.h"

DigitalOut      led(LED1);
Manchester      man(p11, p12, 9600);    // Tx pin, Rx pin, speed [bps]
ManchesterMsg   msg(255);               // Message container (max bytes)
CRC16           crc16;                  // CRC16 object
unsigned short  calcCRC16;              // CRC16 calculated

int main(void) {
    while(1) {
        msg.clear();                                // Clear message
        msg << "Hello World!" << 0xfa74c309;        // Add some data to message
        calcCRC16 = crc16.calc(msg.data, msg.len);  // Calculate CRC16
        printf("calculated CRC16 = %d\r\n", calcCRC16);
        msg << calcCRC16;                           // Append CRC16 to message
        man.transmit(msg);                          // Transmit message
        wait_ms(1000);
        led = !led;
    }
}