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.

Dependencies:   mbed vcdLogger vcdSignal

Committer:
ketjow
Date:
Wed Dec 07 09:16:38 2016 +0000
Revision:
3:6d5e16097db0
Parent:
2:a13cde5c679c
Sync signal added

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ketjow 1:446154224f92 1 /*!
ketjow 1:446154224f92 2 @file light.cpp
ketjow 1:446154224f92 3
ketjow 1:446154224f92 4 The implementation of the light sensor signal class.
ketjow 1:446154224f92 5
ketjow 1:446154224f92 6 @par Full Description
ketjow 1:446154224f92 7 The implementation of the light sensor signal class.
ketjow 1:446154224f92 8
ketjow 1:446154224f92 9 @if REVISION_HISTORY_INCLUDED
ketjow 1:446154224f92 10 @par Edit History
ketjow 1:446154224f92 11 @li [0] wojciech.rynczuk@wp.pl 20-JAN-2015 Initial file revision.
ketjow 2:a13cde5c679c 12 @li [1] wojciech.rynczuk@wp.pl 04-MAR-2016 Fixed real printing.
ketjow 1:446154224f92 13 @endif
ketjow 1:446154224f92 14
ketjow 1:446154224f92 15 @ingroup Signal
ketjow 1:446154224f92 16
ketjow 2:a13cde5c679c 17 The MIT License (MIT)
ketjow 2:a13cde5c679c 18 Copyright (c) 2016 Wojciech Rynczuk
ketjow 1:446154224f92 19
ketjow 1:446154224f92 20 */
ketjow 1:446154224f92 21
ketjow 0:9a59cffaafad 22 #include "light.hpp"
ketjow 0:9a59cffaafad 23
ketjow 0:9a59cffaafad 24 Light::Light(const string& name, const PinName pin, Logger& logger) : Signal(name, 1, logger), AnalogIn(pin)
ketjow 0:9a59cffaafad 25 {
ketjow 0:9a59cffaafad 26 m_LightPrev = 0;
ketjow 0:9a59cffaafad 27 m_LightCurr = 0;
ketjow 0:9a59cffaafad 28 }
ketjow 0:9a59cffaafad 29
ketjow 0:9a59cffaafad 30 void Light::PrintState()
ketjow 0:9a59cffaafad 31 {
ketjow 0:9a59cffaafad 32 string suffix("");
ketjow 2:a13cde5c679c 33 string msg("");
ketjow 0:9a59cffaafad 34 int32_t time_ref = 0;
ketjow 0:9a59cffaafad 35
ketjow 0:9a59cffaafad 36 m_LightCurr = read();
ketjow 0:9a59cffaafad 37 if ( (CheckFilter()) || \
ketjow 0:9a59cffaafad 38 (fabs((m_LightCurr - m_LightPrev)) > 0.1))
ketjow 0:9a59cffaafad 39 {
ketjow 0:9a59cffaafad 40 PrintReal(m_LightCurr, suffix, msg, time_ref);
ketjow 0:9a59cffaafad 41 m_LightPrev = m_LightCurr;
ketjow 0:9a59cffaafad 42 }
ketjow 0:9a59cffaafad 43 }