VFD modular clock firmware

Dependencies:   DipCortex-EEprom RTC flw mbed

Committer:
Backstr?m
Date:
Tue Feb 24 23:01:40 2015 +0900
Revision:
12:dfb422107412
Parent:
0:f6e68b4ce169
Added tag v1.0.2 for changeset 34b344fdec98

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Backstrom 0:f6e68b4ce169 1 /*
Backstrom 0:f6e68b4ce169 2 * VFDDeluxe / Simpleclock VFD - mbed
Backstrom 0:f6e68b4ce169 3 * (C) 2011-14 Akafugu Corporation
Backstrom 0:f6e68b4ce169 4 *
Backstrom 0:f6e68b4ce169 5 * This program is free software; you can redistribute it and/or modify it under the
Backstrom 0:f6e68b4ce169 6 * terms of the GNU General Public License as published by the Free Software
Backstrom 0:f6e68b4ce169 7 * Foundation; either version 2 of the License, or (at your option) any later
Backstrom 0:f6e68b4ce169 8 * version.
Backstrom 0:f6e68b4ce169 9 *
Backstrom 0:f6e68b4ce169 10 * This program is distributed in the hope that it will be useful, but WITHOUT ANY
Backstrom 0:f6e68b4ce169 11 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
Backstrom 0:f6e68b4ce169 12 * PARTICULAR PURPOSE. See the GNU General Public License for more details.
Backstrom 0:f6e68b4ce169 13 *
Backstrom 0:f6e68b4ce169 14 */
Backstrom 0:f6e68b4ce169 15
Backstrom 0:f6e68b4ce169 16
Backstrom 0:f6e68b4ce169 17 #ifndef __IV18_DISPLAY_H_
Backstrom 0:f6e68b4ce169 18 #define __IV18_DISPLAY_H_
Backstrom 0:f6e68b4ce169 19
Backstrom 0:f6e68b4ce169 20 #include "mbed.h"
Backstrom 0:f6e68b4ce169 21 #include "VFDDisplay.h"
Backstrom 0:f6e68b4ce169 22
Backstrom 0:f6e68b4ce169 23 class IV18Display : public VFDDisplay
Backstrom 0:f6e68b4ce169 24 {
Backstrom 0:f6e68b4ce169 25 public:
Backstrom 0:f6e68b4ce169 26 IV18Display(PinName data, PinName clock, PinName latch, PinName blank);
Backstrom 0:f6e68b4ce169 27
Backstrom 0:f6e68b4ce169 28 virtual void writeDisplay(uint8_t digit, uint16_t segments);
Backstrom 0:f6e68b4ce169 29 //virtual void printTime(time_t t, uint8_t hundredths);
Backstrom 0:f6e68b4ce169 30 virtual void printTime(struct tm* tm, uint8_t hundredths);
Backstrom 0:f6e68b4ce169 31 virtual void printTimeLong(struct tm* tm, uint8_t hundredths);
Backstrom 0:f6e68b4ce169 32 virtual void printTimeSet(struct tm* tm, bool showSeconds = true);
Backstrom 0:f6e68b4ce169 33 virtual void printDate(struct tm* tm);
Backstrom 0:f6e68b4ce169 34
Backstrom 0:f6e68b4ce169 35 private:
Backstrom 0:f6e68b4ce169 36 virtual uint16_t calculateSegments(char c, uint8_t digit);
Backstrom 0:f6e68b4ce169 37 virtual void handleBlink(char d);
Backstrom 0:f6e68b4ce169 38 };
Backstrom 0:f6e68b4ce169 39
Backstrom 0:f6e68b4ce169 40 #endif // __IV18_DISPLAY_H_