CaryCoders / Mbed 2 deprecated SX1276_GPS

Dependencies:   SX1276Lib AdaFruit_RGBLCD MCP23017 mbed

Fork of AdaFruit_RGBLCD by Justin Howard

Committer:
vtraveller
Date:
Thu Oct 09 08:03:20 2014 +0000
Revision:
25:24654d08a99a
Parent:
15:d1eaddb363be
Updated with new LCD and Key abstraction (to support different LCDs and Keyboard input).

Who changed what in which revision?

UserRevisionLine numberNew contents of line
vtraveller 10:3fcab08717fc 1 #include "mbed.h"
vtraveller 10:3fcab08717fc 2 #include "TitleModule.h"
vtraveller 25:24654d08a99a 3 #include "time_helper.h"
vtraveller 10:3fcab08717fc 4
vtraveller 25:24654d08a99a 5 TitleModule::TitleModule
vtraveller 25:24654d08a99a 6 (
vtraveller 25:24654d08a99a 7 Serial & in_cDisplay,
vtraveller 25:24654d08a99a 8 RTclock & in_cRTclock
vtraveller 25:24654d08a99a 9 )
vtraveller 13:9641bc42db92 10 : Module(in_cDisplay)
vtraveller 25:24654d08a99a 11 , m_cRTclock(in_cRTclock)
vtraveller 10:3fcab08717fc 12 {
vtraveller 25:24654d08a99a 13 ::memset(&m_sLastTM,0,sizeof(m_sLastTM));
vtraveller 10:3fcab08717fc 14 }
vtraveller 10:3fcab08717fc 15
vtraveller 10:3fcab08717fc 16 TitleModule::~TitleModule()
vtraveller 10:3fcab08717fc 17 {
vtraveller 10:3fcab08717fc 18 }
vtraveller 10:3fcab08717fc 19
vtraveller 25:24654d08a99a 20 void TitleModule::show(bool in_bRefresh)
vtraveller 10:3fcab08717fc 21 {
vtraveller 25:24654d08a99a 22 tm sTM;
vtraveller 25:24654d08a99a 23
vtraveller 25:24654d08a99a 24 // to get the current time information
vtraveller 25:24654d08a99a 25 if (!m_cRTclock.getTime(sTM)) GetTime(sTM);
vtraveller 25:24654d08a99a 26
vtraveller 25:24654d08a99a 27 // if refreshing - only update if there's a change
vtraveller 25:24654d08a99a 28 if (in_bRefresh)
vtraveller 25:24654d08a99a 29 {
vtraveller 25:24654d08a99a 30 // Check for change based on hour (rest is irrelevant)
vtraveller 25:24654d08a99a 31 if (sTM.tm_hour == m_sLastTM.tm_hour) return;
vtraveller 25:24654d08a99a 32 }
vtraveller 25:24654d08a99a 33
vtraveller 25:24654d08a99a 34 // Ensure internal struct has new TM data
vtraveller 25:24654d08a99a 35 ::memcpy(&m_sLastTM,&sTM,sizeof(m_sLastTM));
vtraveller 25:24654d08a99a 36 if (sTM.tm_hour < 6) m_cDisplay.printf("Night Time ");
vtraveller 25:24654d08a99a 37 else if (sTM.tm_hour < 12) m_cDisplay.printf("Morning Time ");
vtraveller 25:24654d08a99a 38 else if (sTM.tm_hour < 18) m_cDisplay.printf("Afternoon Time ");
vtraveller 25:24654d08a99a 39 else if (sTM.tm_hour < 21) m_cDisplay.printf("Evening Time ");
vtraveller 25:24654d08a99a 40 else m_cDisplay.printf("Bedtime ");
vtraveller 10:3fcab08717fc 41 }