Manchester receiver demo.

Dependencies:   Manchester mbed CRC16 ManchesterMsg

Committer:
hudakz
Date:
Wed May 17 21:27:02 2017 +0000
Revision:
1:2ce05484e526
Parent:
0:91017f5f5cb3
Child:
2:1cb83aa7b99a
Updated.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hudakz 0:91017f5f5cb3 1 #include "mbed.h"
hudakz 0:91017f5f5cb3 2 #include "Manchester.h"
hudakz 0:91017f5f5cb3 3
hudakz 0:91017f5f5cb3 4 DigitalOut led(LED1);
hudakz 0:91017f5f5cb3 5
hudakz 0:91017f5f5cb3 6 int main(void) {
hudakz 1:2ce05484e526 7 Manchester man(p11, p12, 9600); // Tx pin, Rx pin, speed [bps]
hudakz 1:2ce05484e526 8 ManchesterMsg msg(100); // Message container (max bytes)
hudakz 1:2ce05484e526 9 char str[50]; // Array of char
hudakz 1:2ce05484e526 10 uint32_t val;
hudakz 1:2ce05484e526 11
hudakz 1:2ce05484e526 12 //pc.baud(9600);
hudakz 0:91017f5f5cb3 13
hudakz 0:91017f5f5cb3 14 while(1) {
hudakz 0:91017f5f5cb3 15 if(man.receive(msg)) { // Receive message
hudakz 1:2ce05484e526 16 // Print data length and raw data bytes
hudakz 0:91017f5f5cb3 17 printf("\r\n----------------------\r\n");
hudakz 1:2ce05484e526 18 printf("Length = %d\r\n", msg.len);
hudakz 1:2ce05484e526 19 printf("Raw data :\r\n");
hudakz 1:2ce05484e526 20 for(size_t i = 0; i < msg.len; i++) {
hudakz 1:2ce05484e526 21 if((i + 1) % 10 == 0)
hudakz 1:2ce05484e526 22 printf(" %.2x\r\n", msg.data[i]);
hudakz 1:2ce05484e526 23 else
hudakz 1:2ce05484e526 24 printf(" %.2x", msg.data[i]);
hudakz 1:2ce05484e526 25 }
hudakz 1:2ce05484e526 26 printf("\r\n");
hudakz 1:2ce05484e526 27
hudakz 0:91017f5f5cb3 28 // Extract data from message and print
hudakz 0:91017f5f5cb3 29 msg >> str >> val;
hudakz 1:2ce05484e526 30 printf("Extracted data :\r\n");
hudakz 1:2ce05484e526 31 printf(" str = %s\r\n", str);
hudakz 1:2ce05484e526 32 printf(" val = 0x%x\r\n", val);
hudakz 0:91017f5f5cb3 33 }
hudakz 0:91017f5f5cb3 34 else
hudakz 0:91017f5f5cb3 35 printf("Error\r\n");
hudakz 0:91017f5f5cb3 36
hudakz 0:91017f5f5cb3 37 led = !led;
hudakz 0:91017f5f5cb3 38 }
hudakz 0:91017f5f5cb3 39 }