Time: 17:33 Date: 10/12/2017 Description: Task 1,7,8 Currently Functioning
Dependencies: BME280 BMP280 TextLCD
Working Repository
LCD.hpp@47:6d128e500875, 2018-01-08 (annotated)
- 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?
User | Revision | Line number | New 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 |