forked from bborncr/nextion
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Nextion.h
103 lines (68 loc) · 2.87 KB
/
Nextion.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
/*
HMI Nextion Library
Itead NX4827T043_011
http://imall.itead.cc/nextion-nx2432t043.html
Bentley Born
Ricardo Mena C
http://crcibernetica.com
License
**********************************************************************************
This program is free software; you can redistribute it
and/or modify it under the terms of the GNU General
Public License as published by the Free Software
Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will
be useful, but WITHOUT ANY WARRANTY; without even the
implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public
License for more details.
You should have received a copy of the GNU General
Public License along with this program.
If not, see <http://www.gnu.org/licenses/>.
Licence can be viewed at
http://www.gnu.org/licenses/gpl-3.0.txt
Please maintain this license information along with authorship
and copyright notices in any redistribution of this code
**********************************************************************************
*/
#ifndef __NEXTION_H__
#define __NEXTION_H__
#include <Arduino.h>
#define USE_SOFTWARE_SERIAL //Comment this line for use HardwareSerial
#if defined(USE_SOFTWARE_SERIAL)
#include <SoftwareSerial.h>
#endif
class Nextion{
private:
void flushSerial();
#if defined(USE_SOFTWARE_SERIAL)
SoftwareSerial *nextion;
#else
HardwareSerial *nextion;
#endif
public:
Nextion(){};//Empty contructor
#if defined(USE_SOFTWARE_SERIAL)
Nextion(SoftwareSerial &next, uint32_t baud);//Constructor
#else
Nextion(HardwareSerial &next, uint32_t baud);//Constructor
#endif
void buttonToggle(boolean &buttonState, String objName, uint8_t picDefualtId, uint8_t picPressedId);
uint8_t buttonOnOff(String find_component, String unknown_component, uint8_t pin, int btn_prev_state);
boolean setComponentValue(String component, int value);
//boolean ack(void);//Deprecated
boolean ack(void);
unsigned int getComponentValue(String component);
boolean setComponentText(String component, String txt);
boolean updateProgressBar(int x, int y, int maxWidth, int maxHeight, int value, int emptyPictureID, int fullPictureID, int orientation=0);
String getComponentText(String component, uint32_t timeout = 100);
String listen(unsigned long timeout=100);
// String listenNextionGeneric(unsigned long timeout=100);
void sendCommand(const char* cmd);
uint8_t pageId(void);
boolean init(const char* pageId = "0");
};
#endif