Firmware for the mbed in the BlueSync Sensor platform. Intended to communicate with a BlueGiga BLE112 Bluetooth LE module over UART.
Dependencies: TimerCapture mbed
main.cpp@0:2bc22bc992ac, 2015-05-23 (annotated)
- Committer:
- dishbreak
- Date:
- Sat May 23 22:02:10 2015 +0000
- Revision:
- 0:2bc22bc992ac
- Child:
- 1:cb941edd7bce
Initial proof of concept
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dishbreak | 0:2bc22bc992ac | 1 | #include "mbed.h" |
dishbreak | 0:2bc22bc992ac | 2 | #include "TimerCapture.h" |
dishbreak | 0:2bc22bc992ac | 3 | |
dishbreak | 0:2bc22bc992ac | 4 | Serial ble112(p9, p10); |
dishbreak | 0:2bc22bc992ac | 5 | TimerCapture * capPin; |
dishbreak | 0:2bc22bc992ac | 6 | DigitalOut myled(LED1); |
dishbreak | 0:2bc22bc992ac | 7 | |
dishbreak | 0:2bc22bc992ac | 8 | void on_serial_rcv() { |
dishbreak | 0:2bc22bc992ac | 9 | ble112.getc(); |
dishbreak | 0:2bc22bc992ac | 10 | uint8_t hw_addr[6]; |
dishbreak | 0:2bc22bc992ac | 11 | for (int i = 5; i >=0; i--) { |
dishbreak | 0:2bc22bc992ac | 12 | hw_addr[i] = ble112.getc(); |
dishbreak | 0:2bc22bc992ac | 13 | } |
dishbreak | 0:2bc22bc992ac | 14 | |
dishbreak | 0:2bc22bc992ac | 15 | printf("***************\r\n"); |
dishbreak | 0:2bc22bc992ac | 16 | printf("HW Addr: %02x:%02x:%02x:%02x:%02x:%02x ", |
dishbreak | 0:2bc22bc992ac | 17 | hw_addr[0], |
dishbreak | 0:2bc22bc992ac | 18 | hw_addr[1], |
dishbreak | 0:2bc22bc992ac | 19 | hw_addr[2], |
dishbreak | 0:2bc22bc992ac | 20 | hw_addr[3], |
dishbreak | 0:2bc22bc992ac | 21 | hw_addr[4], |
dishbreak | 0:2bc22bc992ac | 22 | hw_addr[5]); |
dishbreak | 0:2bc22bc992ac | 23 | printf("Obs At: %d\r\n", capPin->getTime()); |
dishbreak | 0:2bc22bc992ac | 24 | } |
dishbreak | 0:2bc22bc992ac | 25 | |
dishbreak | 0:2bc22bc992ac | 26 | int main() { |
dishbreak | 0:2bc22bc992ac | 27 | TimerCapture::startTimer(); |
dishbreak | 0:2bc22bc992ac | 28 | capPin = new TimerCapture(p30); |
dishbreak | 0:2bc22bc992ac | 29 | ble112.baud(115200); |
dishbreak | 0:2bc22bc992ac | 30 | ble112.set_flow_control(SerialBase::RTSCTS, p7, p8); |
dishbreak | 0:2bc22bc992ac | 31 | ble112.attach(&on_serial_rcv); |
dishbreak | 0:2bc22bc992ac | 32 | } |