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

Dependencies:   BME280 BMP280 TextLCD

Working Repository

LCD.hpp

Committer:
thomasmorris
Date:
2018-01-08
Revision:
47:6d128e500875
Parent:
28:09b5c46c8afd
Child:
48:244d6d81bb52

File content as of revision 47:6d128e500875:

#ifndef _LCD_HPP_ //Known as header guards
#define _LCD_HPP_

#include <string>
#include "mbed.h"
#include "rtos.h"
#include "SERIAL.hpp"
#include <iostream>
#include <sstream>
#include "sample_hardware.hpp"
#include "TIME.hpp"

#define Default_Mode_Toggle_Time 3000
static char LCD_buffer [50];
using namespace std;
static Mutex Time_Lock_Main;
 
 
void LCD_Write_Year();
void LCD_Write_Month();
void LCD_Write_Day();
void LCD_Write_Hour();
void LCD_Write_Minute();
void LCD_Write_Seconds();
void LCD_Print_Output();
static int mode = 0;//Used to switch modes in serial comms 
 
class LCD //This creates a class called Led
{
    
public: 
 
    LCD(PinName E, PinName RS, PinName RW, PinName DB0, PinName DB1, PinName DB2, PinName DB3, PinName DB4, PinName DB5, PinName DB6, PinName DB7);
    ~LCD();
    void clock_in();
    void Function_Set();
    void Display_Off();
    void Display_Clear();
    void Entry_Mode_Set();
    void Display_On();
    void DDRAM_Address(int Address);
    void Write_String(string Word);
    void Initialise();
    
private:    
 
    DigitalOut _E;
    DigitalOut _RS;
    DigitalOut _RW;
    
    DigitalOut _DB0;
    DigitalOut _DB1;
    DigitalOut _DB2;
    DigitalOut _DB3;
    DigitalOut _DB4;
    DigitalOut _DB5;
    DigitalOut _DB6;
    DigitalOut _DB7;
    
};
 
 
static LCD LCD(D8,D9,D4,A0,A1,A2,A3,D7,D6,D3,D1);//LCD object creation via constructor
#endif