Ik heb een ESP8266 D1 mini waarop ik een TM1638 heb aangesloten. Ik heb al verschillende voorbeelden van het internet geplukt maar bij geen enkele van de voorbeelden krijg ik de knoppen aan de praat. Ik heb een andere TM1638 aangesloten: zelfde probleem.
Ziet iemand wat er mis is met onderstaande code? De display geeft "test 0" weer maar that's it. Hij gaat naar case0 en geraakt daar niet uit. De serial monitor geeft dit weer: (altijd 0, ook al druk ik op een knop en hou ik die ingedrukt)
Ziet iemand wat er mis is met onderstaande code? De display geeft "test 0" weer maar that's it. Hij gaat naar case0 en geraakt daar niet uit. De serial monitor geeft dit weer: (altijd 0, ook al druk ik op een knop en hou ik die ingedrukt)
code:
1
2
3
4
5
6
7
| 21:52:44.058 -> 0 21:52:44.058 -> 0 21:52:44.058 -> 0 21:52:44.058 -> 0 21:52:44.058 -> 0 21:52:44.058 -> 0 21:52:44.058 -> 0 |
code:
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
| #include <TM1638.h>
int strobe = 14;
int clck = 12;
int data = 13;
int dots = 0x0; // display all decimal points, value in hexadecimal
int leds = 0xFF; // mask to display LEDS
byte keys; // key value
double number; // number to display
// define a module
TM1638 module(data, clck, strobe);
void setup() {
Serial.begin(9600);
module.clearDisplay(); // clear the display
}
void loop() {
// display a number
switch(keys){
case 0:
module.setDisplayToString("test 0 ");
break;
case 1:
module.setDisplayToString("test 1 ");
break;
case 2:
module.setDisplayToString("test 2 ");
break;
case 4:
module.setDisplayToString("test 3 ");
break;
case 8:
module.setDisplayToString("test 4 ");
break;
case 16:
break;
case 32:
break;
case 64:
break;
case 128:
break;
default:
break;
}
getKeyPressed();
}
void getKeyPressed(){
keys = module.getButtons();
Serial.println(keys);
// light the LED
module.setLEDs(keys & leds);
} |