Ben Gordon
/
ELEC351_GroupA-branch1
Troubleshooting
LCD.hpp@15:f8649829dff9, 2018-11-08 (annotated)
- Committer:
- BenRJG
- Date:
- Thu Nov 08 23:13:15 2018 +0000
- Revision:
- 15:f8649829dff9
- Parent:
- 12:edf31d0a61f0
Created multiple dateTime functions (may be replaced)
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
BenRJG | 0:f8fe58d43763 | 1 | #ifndef _LCD_HPP |
BenRJG | 0:f8fe58d43763 | 2 | #define _LCD_HPP |
BenRJG | 7:0213c3702c99 | 3 | |
BenRJG | 0:f8fe58d43763 | 4 | #include "mbed.h" |
BenRJG | 7:0213c3702c99 | 5 | #include "DataTypes.hpp" |
BenRJG | 0:f8fe58d43763 | 6 | |
BenRJG | 0:f8fe58d43763 | 7 | #define CLEAR 0x01 |
BenRJG | 0:f8fe58d43763 | 8 | #define RETURN 0x02 |
BenRJG | 0:f8fe58d43763 | 9 | |
BenRJG | 0:f8fe58d43763 | 10 | #define ENTRYMODE 0x04 |
BenRJG | 0:f8fe58d43763 | 11 | #define I 0x02 |
BenRJG | 0:f8fe58d43763 | 12 | #define shift 0x01 |
BenRJG | 0:f8fe58d43763 | 13 | |
BenRJG | 0:f8fe58d43763 | 14 | #define DISPLAY 0x08 |
BenRJG | 0:f8fe58d43763 | 15 | #define on 0x04 |
BenRJG | 0:f8fe58d43763 | 16 | #define cursor 0x02 |
BenRJG | 0:f8fe58d43763 | 17 | #define blink 0x01 |
BenRJG | 0:f8fe58d43763 | 18 | |
BenRJG | 10:4f8b0c09bd2c | 19 | #define FUNC 0x20 |
BenRJG | 0:f8fe58d43763 | 20 | #define bit8 0x10 |
BenRJG | 0:f8fe58d43763 | 21 | #define lines2 0x08 |
BenRJG | 0:f8fe58d43763 | 22 | #define dots11 0x04 |
BenRJG | 0:f8fe58d43763 | 23 | |
BenRJG | 0:f8fe58d43763 | 24 | #define control 0 |
BenRJG | 0:f8fe58d43763 | 25 | #define text 1 |
BenRJG | 0:f8fe58d43763 | 26 | |
BenRJG | 0:f8fe58d43763 | 27 | #define write 0 |
BenRJG | 0:f8fe58d43763 | 28 | #define read 1 |
BenRJG | 0:f8fe58d43763 | 29 | |
BenRJG | 9:f8c8f0b11893 | 30 | #define LINE1 0x00 |
BenRJG | 9:f8c8f0b11893 | 31 | #define LINE2 0x40 |
BenRJG | 0:f8fe58d43763 | 32 | |
BenRJG | 0:f8fe58d43763 | 33 | class LCD{ |
BenRJG | 0:f8fe58d43763 | 34 | public: |
BenRJG | 4:bb7a78619678 | 35 | LCD(PinName rs, PinName e, PinName d4, PinName d5, PinName d6, PinName d7) : _LCD_RS(rs), _LCD_E(e), LCD_DDRAM(d4,d5,d6,d7) {} |
BenRJG | 0:f8fe58d43763 | 36 | void INIT(); |
BenRJG | 0:f8fe58d43763 | 37 | void clear(); |
BenRJG | 12:edf31d0a61f0 | 38 | void display(BYTE* str, UINT_16 location=NULL); |
BenRJG | 8:e34e23edfc84 | 39 | void putt(U_BYTE c); |
BenRJG | 15:f8649829dff9 | 40 | void pos(UINT_16 location); |
BenRJG | 15:f8649829dff9 | 41 | |
BenRJG | 15:f8649829dff9 | 42 | void enableCursor(); |
BenRJG | 15:f8649829dff9 | 43 | void disableCursor(); |
BenRJG | 0:f8fe58d43763 | 44 | private: |
BenRJG | 0:f8fe58d43763 | 45 | DigitalOut _LCD_RS; |
BenRJG | 0:f8fe58d43763 | 46 | DigitalOut _LCD_E; |
BenRJG | 0:f8fe58d43763 | 47 | BusOut LCD_DDRAM; |
BenRJG | 0:f8fe58d43763 | 48 | private: |
BenRJG | 7:0213c3702c99 | 49 | void cmdLCD(U_BYTE cmd); |
BenRJG | 0:f8fe58d43763 | 50 | void LCD_strobe(void); |
BenRJG | 7:0213c3702c99 | 51 | void set_LCD_data(U_BYTE d); |
BenRJG | 8:e34e23edfc84 | 52 | UINT_32 findSpace(U_BYTE* str); |
BenRJG | 0:f8fe58d43763 | 53 | }; |
BenRJG | 0:f8fe58d43763 | 54 | #endif |