Troubleshooting

Committer:
BenRJG
Date:
Fri Nov 09 14:24:39 2018 +0000
Revision:
17:b7cd66c5f845
Parent:
15:f8649829dff9
export to keil

Who changed what in which revision?

UserRevisionLine numberNew 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