Time: 17:33 Date: 10/12/2017 Description: Task 1,7,8 Currently Functioning

Dependencies:   BME280 BMP280 TextLCD

Working Repository

Committer:
thomasmorris
Date:
Mon Jan 08 21:53:40 2018 +0000
Revision:
47:6d128e500875
Parent:
28:09b5c46c8afd
Child:
48:244d6d81bb52
FINAL working copy

Who changed what in which revision?

UserRevisionLine numberNew contents of line
chills 20:cbb71f84cff9 1 #ifndef _LCD_HPP_ //Known as header guards
chills 20:cbb71f84cff9 2 #define _LCD_HPP_
chills 20:cbb71f84cff9 3
chills 20:cbb71f84cff9 4 #include <string>
thomasmorris 47:6d128e500875 5 #include "mbed.h"
thomasmorris 47:6d128e500875 6 #include "rtos.h"
thomasmorris 47:6d128e500875 7 #include "SERIAL.hpp"
thomasmorris 47:6d128e500875 8 #include <iostream>
thomasmorris 47:6d128e500875 9 #include <sstream>
thomasmorris 47:6d128e500875 10 #include "sample_hardware.hpp"
thomasmorris 47:6d128e500875 11 #include "TIME.hpp"
thomasmorris 47:6d128e500875 12
thomasmorris 47:6d128e500875 13 #define Default_Mode_Toggle_Time 3000
thomasmorris 47:6d128e500875 14 static char LCD_buffer [50];
thomasmorris 47:6d128e500875 15 using namespace std;
thomasmorris 47:6d128e500875 16 static Mutex Time_Lock_Main;
thomasmorris 47:6d128e500875 17
thomasmorris 47:6d128e500875 18
thomasmorris 47:6d128e500875 19 void LCD_Write_Year();
thomasmorris 47:6d128e500875 20 void LCD_Write_Month();
thomasmorris 47:6d128e500875 21 void LCD_Write_Day();
thomasmorris 47:6d128e500875 22 void LCD_Write_Hour();
thomasmorris 47:6d128e500875 23 void LCD_Write_Minute();
thomasmorris 47:6d128e500875 24 void LCD_Write_Seconds();
thomasmorris 47:6d128e500875 25 void LCD_Print_Output();
thomasmorris 47:6d128e500875 26 static int mode = 0;//Used to switch modes in serial comms
chills 20:cbb71f84cff9 27
chills 20:cbb71f84cff9 28 class LCD //This creates a class called Led
chills 20:cbb71f84cff9 29 {
chills 20:cbb71f84cff9 30
chills 20:cbb71f84cff9 31 public:
chills 20:cbb71f84cff9 32
chills 20:cbb71f84cff9 33 LCD(PinName E, PinName RS, PinName RW, PinName DB0, PinName DB1, PinName DB2, PinName DB3, PinName DB4, PinName DB5, PinName DB6, PinName DB7);
chills 20:cbb71f84cff9 34 ~LCD();
chills 20:cbb71f84cff9 35 void clock_in();
chills 20:cbb71f84cff9 36 void Function_Set();
chills 20:cbb71f84cff9 37 void Display_Off();
chills 20:cbb71f84cff9 38 void Display_Clear();
chills 20:cbb71f84cff9 39 void Entry_Mode_Set();
chills 20:cbb71f84cff9 40 void Display_On();
chills 20:cbb71f84cff9 41 void DDRAM_Address(int Address);
chills 20:cbb71f84cff9 42 void Write_String(string Word);
chills 20:cbb71f84cff9 43 void Initialise();
chills 20:cbb71f84cff9 44
chills 20:cbb71f84cff9 45 private:
chills 20:cbb71f84cff9 46
thomasmorris 25:36699ed589ab 47 DigitalOut _E;
thomasmorris 28:09b5c46c8afd 48 DigitalOut _RS;
chills 20:cbb71f84cff9 49 DigitalOut _RW;
chills 20:cbb71f84cff9 50
chills 20:cbb71f84cff9 51 DigitalOut _DB0;
chills 20:cbb71f84cff9 52 DigitalOut _DB1;
chills 20:cbb71f84cff9 53 DigitalOut _DB2;
chills 20:cbb71f84cff9 54 DigitalOut _DB3;
chills 20:cbb71f84cff9 55 DigitalOut _DB4;
chills 20:cbb71f84cff9 56 DigitalOut _DB5;
chills 20:cbb71f84cff9 57 DigitalOut _DB6;
chills 20:cbb71f84cff9 58 DigitalOut _DB7;
chills 20:cbb71f84cff9 59
chills 20:cbb71f84cff9 60 };
chills 20:cbb71f84cff9 61
chills 20:cbb71f84cff9 62
thomasmorris 47:6d128e500875 63 static LCD LCD(D8,D9,D4,A0,A1,A2,A3,D7,D6,D3,D1);//LCD object creation via constructor
chills 20:cbb71f84cff9 64 #endif