Skip to content
This repository was archived by the owner on Sep 30, 2019. It is now read-only.

Commit a6d2bda

Browse files
committed
Update LCD_ DataTable.py
Rewrote a bit and organized the examples to flow better
1 parent d43d072 commit a6d2bda

File tree

1 file changed

+92
-35
lines changed

1 file changed

+92
-35
lines changed

Adafruit_CharLCDPlate/LCD_ DataTable.py

Lines changed: 92 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -17,22 +17,19 @@ class LCD_DataTable(Adafruit_CharLCDPlate):
1717
# Limited to 4 characters,
1818
# position is left or right,
1919
# line is 1-4
20-
def labelHalf(self, text, position, line):
20+
def updateHalfLabel(self, text, position, line):
21+
self.clearHalfDataSet(position,line)
2122
if position == "left":
22-
lcd.setCursor(0,line)
23-
eol.message(" :")
2423
lcd.setCursor(0,line)
2524
eol.message(text[0:4]+':')
2625
elif position == "right":
27-
lcd.setCursor(10,line)
28-
eol.message(" :")
2926
lcd.setCursor(10,line)
3027
eol.message('|'+text[0:4]+':')
3128

3229
# Limited to 4 characters,
3330
# position is left or right,
3431
# line is 1-4
35-
def valueHalf(self, text, position, line):
32+
def updateHalfValue(self, text, position, line):
3633
if position == "left":
3734
lcd.setCursor(5,line)
3835
eol.message(" ")
@@ -45,20 +42,28 @@ def valueHalf(self, text, position, line):
4542
eol.message(text[0:4])
4643

4744
# Writes up to a 9 character lable and value to a full line
48-
def wholeLine(self, label, value, line):
49-
self.clearLine(line)
45+
def updateWholeLineLabel(self, label, line):
46+
self.clearWholeLine(line)
5047
lcd.setCursor(0,line)
51-
eol.message(label[0:10] + ': ')
52-
lcd.setCursor(11,line)
48+
eol.message(label[0:9] + ': ')
49+
50+
# Writes up to a 9 character lable and value to a full line
51+
def updateWholeLineValue(self, value, line):
52+
lcd.setCursor(10,line)
5353
eol.message(value[0:10])
5454

5555
#Clears an entire line
56-
def clearLine(self, line):
56+
def clearWholeLine(self, line):
5757
lcd.setCursor(0,line)
5858
eol.message(" " * columns)
59-
59+
60+
#Clears an entire line
61+
def clearWholeLineValue(self, line):
62+
lcd.setCursor(10,line)
63+
eol.message(" " * 10)
64+
6065
# Clears just a half data set, label and value
61-
def clearDataSet(self, position,line):
66+
def clearHalfDataSet(self, position,line):
6267
if position == "left":
6368
lcd.setCursor(0,line)
6469
eol.message(" " * 10)
@@ -97,32 +102,84 @@ def clearHalfValue(self, position,line):
97102

98103
#Filling the table with bogus info
99104
lcd.clear()
100-
dt.labelHalf("Temp","left",0)
101-
dt.labelHalf("Mode","right",0)
102-
dt.labelHalf("Targ","left",1)
103-
dt.labelHalf("Fan","right",1)
104-
dt.valueHalf("Cool","right",0)
105-
dt.valueHalf("75.5","left",0)
106-
dt.valueHalf("Auto","right",1)
107-
dt.valueHalf("74.0","left",1)
108-
dt.wholeLine("Tempurature", "Too Hot",2)
109-
105+
dt.updateHalfLabel("Temp","left",0)
106+
dt.updateHalfLabel("Mode","right",0)
107+
dt.updateHalfLabel("Targ","left",1)
108+
dt.updateHalfLabel("Fan","right",1)
109+
dt.updateHalfValue("Cool","right",0)
110+
dt.updateHalfValue("75.5","left",0)
111+
dt.updateHalfValue("Auto","right",1)
112+
dt.updateHalfValue("74.0","left",1)
113+
dt.updateWholeLineLabel("Tempurature",2)
114+
dt.updateWholeLineValue("Too Hot!!!",2)
115+
dt.updateWholeLineLabel("Humidity",3)
116+
dt.updateWholeLineValue("100%!!!",3)
117+
110118
#Start testing updating and clearing parts
111-
sleep(5)
112-
dt.clearLine(0)
119+
120+
# Clearing entire lines
113121
sleep(2)
114-
dt.labelHalf("Temp","left",0)
115-
dt.valueHalf("76.0","left",0)
122+
dt.clearWholeLine(0)
123+
sleep(1)
124+
dt.clearWholeLine(3)
125+
sleep(1)
126+
127+
# Repopulating the lines just cleared
128+
dt.updateHalfLabel("Temp","left",0)
129+
dt.updateHalfValue("75.3","left",0)
130+
dt.updateHalfLabel("Mode","right",0)
131+
dt.updateHalfValue("Cool","right",0)
132+
dt.updateWholeLineLabel("Humidity",3)
133+
dt.updateWholeLineValue("100%!!!",3)
116134
sleep(2)
117-
dt.valueHalf("74.75","left",0)
135+
136+
# Clearing the entire Data set, both Label and Value
137+
dt.clearHalfDataSet("left",0)
138+
sleep(1)
139+
dt.clearHalfDataSet("right",0)
140+
sleep(1)
141+
dt.clearHalfDataSet("left",1)
142+
sleep(1)
143+
dt.clearHalfDataSet("right",1)
144+
sleep(2)
145+
146+
# Repopulating the half labels and values just removed
147+
dt.updateHalfLabel("Temp","left",0)
148+
dt.updateHalfLabel("Mode","right",0)
149+
dt.updateHalfLabel("Targ","left",1)
150+
dt.updateHalfLabel("Fan","right",1)
151+
152+
dt.updateHalfValue("75.5","left",0)
153+
dt.updateHalfValue("Cool","right",0)
154+
dt.updateHalfValue("74.0","left",1)
155+
dt.updateHalfValue("On","right",1)
118156
sleep(2)
119-
dt.labelHalf("Mode","right",0)
120-
dt.valueHalf("Both","right",0)
157+
158+
# Clearing the values in the half data sets
159+
dt.clearHalfValue("left",0)
160+
sleep(1)
161+
dt.clearHalfValue("right",0)
162+
sleep(1)
163+
dt.clearHalfValue("left",1)
164+
sleep(1)
165+
dt.clearHalfValue("right",1)
121166
sleep(2)
122-
dt.valueHalf("On","right",0)
167+
168+
# Repopulating half data set values
169+
dt.updateHalfValue("74.7","left",0)
170+
sleep(1)
171+
dt.updateHalfValue("Auto","right",0)
172+
sleep(1)
173+
dt.updateHalfValue("74.0","left",1)
174+
sleep(1)
175+
dt.updateHalfValue("On","right",1)
123176
sleep(2)
124-
dt.clearDataSet("left",0)
177+
178+
# Clearing the value on a full line entry
179+
dt.clearWholeLineValue(2)
180+
dt.clearWholeLineValue(3)
125181
sleep(2)
126-
dt.labelHalf("Tempurature","left",0)
127-
dt.valueHalf("85","left",0)
128-
sleep(5)
182+
183+
# Repopulating the values that was just removed
184+
dt.updateWholeLineValue("Still Hot",2)
185+
dt.updateWholeLineValue("90%",3)

0 commit comments

Comments
 (0)