This is the vcdMaker demo project. See http://vcdmaker.org for details. vcdMaker is supposed to help engineers to debug their applications and systems. It transforms text log files into the VCD format which can be easily displayed as a waveform. Use the mbed serial logger at 115200 baud rate.
Dependencies: BSP_DISCO_L476VG COMPASS_DISCO_L476VG mbed vcdLogger vcdSignal
Logger/serialLogger.cpp@0:936379a8793e, 2016-03-05 (annotated)
- Committer:
- ketjow
- Date:
- Sat Mar 05 21:16:10 2016 +0000
- Revision:
- 0:936379a8793e
Initial
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ketjow | 0:936379a8793e | 1 | /*! |
ketjow | 0:936379a8793e | 2 | @file serialLogger.cpp |
ketjow | 0:936379a8793e | 3 | |
ketjow | 0:936379a8793e | 4 | The implementation of the serial logger class. |
ketjow | 0:936379a8793e | 5 | |
ketjow | 0:936379a8793e | 6 | @par Full Description |
ketjow | 0:936379a8793e | 7 | The implementation of the serial logger class. |
ketjow | 0:936379a8793e | 8 | |
ketjow | 0:936379a8793e | 9 | @if REVISION_HISTORY_INCLUDED |
ketjow | 0:936379a8793e | 10 | @par Edit History |
ketjow | 0:936379a8793e | 11 | @li [0] wojciech.rynczuk@wp.pl 20-JAN-2015 Initial file revision. |
ketjow | 0:936379a8793e | 12 | @li [1] wojciech.rynczuk@wp.pl 04-MAR-2016 DISCO L476 port. |
ketjow | 0:936379a8793e | 13 | @endif |
ketjow | 0:936379a8793e | 14 | |
ketjow | 0:936379a8793e | 15 | @ingroup Logger |
ketjow | 0:936379a8793e | 16 | |
ketjow | 0:936379a8793e | 17 | The MIT License (MIT) |
ketjow | 0:936379a8793e | 18 | Copyright (c) 2016 Wojciech Rynczuk |
ketjow | 0:936379a8793e | 19 | |
ketjow | 0:936379a8793e | 20 | */ |
ketjow | 0:936379a8793e | 21 | |
ketjow | 0:936379a8793e | 22 | #include "serialLogger.hpp" |
ketjow | 0:936379a8793e | 23 | #include "mbed.h" |
ketjow | 0:936379a8793e | 24 | |
ketjow | 0:936379a8793e | 25 | SerialLogger::SerialLogger(uint32_t n_Lines, uint32_t n_Characters) : Logger(n_Lines,n_Characters) |
ketjow | 0:936379a8793e | 26 | { |
ketjow | 0:936379a8793e | 27 | serialOut = new Serial(USBTX, USBRX); |
ketjow | 0:936379a8793e | 28 | alarm = new DigitalOut(LED1); |
ketjow | 0:936379a8793e | 29 | rec_indicator = new DigitalOut(LED2); |
ketjow | 0:936379a8793e | 30 | |
ketjow | 0:936379a8793e | 31 | serialOut->baud(115200); |
ketjow | 0:936379a8793e | 32 | *alarm = 0; |
ketjow | 0:936379a8793e | 33 | *rec_indicator = 0; |
ketjow | 0:936379a8793e | 34 | } |
ketjow | 0:936379a8793e | 35 | |
ketjow | 0:936379a8793e | 36 | SerialLogger::~SerialLogger() |
ketjow | 0:936379a8793e | 37 | { |
ketjow | 0:936379a8793e | 38 | delete alarm; |
ketjow | 0:936379a8793e | 39 | delete serialOut; |
ketjow | 0:936379a8793e | 40 | } |
ketjow | 0:936379a8793e | 41 | |
ketjow | 0:936379a8793e | 42 | void SerialLogger::Printf(const char* line) |
ketjow | 0:936379a8793e | 43 | { |
ketjow | 0:936379a8793e | 44 | serialOut->printf("%s\n\r", line); |
ketjow | 0:936379a8793e | 45 | } |
ketjow | 0:936379a8793e | 46 | |
ketjow | 0:936379a8793e | 47 | void SerialLogger::AlarmFull() |
ketjow | 0:936379a8793e | 48 | { |
ketjow | 0:936379a8793e | 49 | *alarm = !*alarm; |
ketjow | 0:936379a8793e | 50 | } |
ketjow | 0:936379a8793e | 51 | |
ketjow | 0:936379a8793e | 52 | uint32_t SerialLogger::StartAction() |
ketjow | 0:936379a8793e | 53 | { |
ketjow | 0:936379a8793e | 54 | *rec_indicator = 1; |
ketjow | 0:936379a8793e | 55 | return 0; |
ketjow | 0:936379a8793e | 56 | } |
ketjow | 0:936379a8793e | 57 | |
ketjow | 0:936379a8793e | 58 | uint32_t SerialLogger::StopAction() |
ketjow | 0:936379a8793e | 59 | { |
ketjow | 0:936379a8793e | 60 | *rec_indicator = 0; |
ketjow | 0:936379a8793e | 61 | return 0; |
ketjow | 0:936379a8793e | 62 | } |