ducky's telemetry library

Committer:
ikrase
Date:
Tue Mar 31 19:07:34 2015 +0000
Revision:
0:79b031fc31ac
untested telemetry code

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ikrase 0:79b031fc31ac 1 /*
ikrase 0:79b031fc31ac 2 * telemetry-mbedo-hal.cpp
ikrase 0:79b031fc31ac 3 *
ikrase 0:79b031fc31ac 4 * Created on: Mar 4, 2015
ikrase 0:79b031fc31ac 5 * Author: Ducky
ikrase 0:79b031fc31ac 6 *
ikrase 0:79b031fc31ac 7 * Telemetry HAL for Serial on mBed.
ikrase 0:79b031fc31ac 8 */
ikrase 0:79b031fc31ac 9
ikrase 0:79b031fc31ac 10 #ifdef __ARMCC_VERSION
ikrase 0:79b031fc31ac 11
ikrase 0:79b031fc31ac 12 #include "telemetry-mbed.h"
ikrase 0:79b031fc31ac 13
ikrase 0:79b031fc31ac 14 namespace telemetry {
ikrase 0:79b031fc31ac 15
ikrase 0:79b031fc31ac 16 void MbedHal::transmit_byte(uint8_t data) {
ikrase 0:79b031fc31ac 17 // TODO: optimize with DMA
ikrase 0:79b031fc31ac 18 serial.putc(data);
ikrase 0:79b031fc31ac 19 }
ikrase 0:79b031fc31ac 20
ikrase 0:79b031fc31ac 21 size_t MbedHal::rx_available() {
ikrase 0:79b031fc31ac 22 return serial.rxBufferGetCount();
ikrase 0:79b031fc31ac 23 }
ikrase 0:79b031fc31ac 24
ikrase 0:79b031fc31ac 25 uint8_t MbedHal::receive_byte() {
ikrase 0:79b031fc31ac 26 return serial.getc();
ikrase 0:79b031fc31ac 27 }
ikrase 0:79b031fc31ac 28
ikrase 0:79b031fc31ac 29 void MbedHal::do_error(const char* msg) {
ikrase 0:79b031fc31ac 30 serial.printf("%s\r\n", msg);
ikrase 0:79b031fc31ac 31 }
ikrase 0:79b031fc31ac 32
ikrase 0:79b031fc31ac 33 uint32_t MbedHal::get_time_ms() {
ikrase 0:79b031fc31ac 34 return timer.read_ms();
ikrase 0:79b031fc31ac 35 }
ikrase 0:79b031fc31ac 36
ikrase 0:79b031fc31ac 37 }
ikrase 0:79b031fc31ac 38
ikrase 0:79b031fc31ac 39 #endif // ifdef MBED