Servus, bin neu hier im Forum und habe ein Problem mit der Programmierung meines RP pico. Ich will die Timerfunktion verstehen. Sie soll ja den Prozessor nicht blockieren wie dir Sleepfunktion. Dazu habe ich ein Program geschrieben bzw zusammenkopiert, das eine Led 2 Sekunden leuchten läßt und währenddessen ein Thermometer Und Feuchtigkeitsmesser (dht11) ausliest. Hier der 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 |
|
72 |
|
Das ganze Drumrum um das Auslesen der Sensoren hab ich nicht angehängt Die meisten Zähler und print Befehle hab ich nur eingefügt um zu sehen wann er was macht bzw. nicht macht. Das Problem erscheint nach dem Aufruf von "add_repeating_timer_ms" in Zeile 52. Wenn ich die Zeile prinf... (Zeile 56) habe durchläuft es die Whileschleifen sauber und wenn nicht (auskommentiert oder gelöscht) dann nicht! Ich will aber den ganzen Mist den er mir dann schickt nicht haben und ich will das Verhalten verstehen. Zum Schluß: bin mir nicht sicher ob ich die Ausgaben richtig eingebunden habe, hab aber nix gefunden wie die formatiert werden sollten.
Und jetzt erst mal vielen Dank für Antworten. Das ist die Ausgabe mit Zeile 56: das kommt jetzt 0
Humidity = 56.0%, Temperature = 20.0C (68.0F)
das ist der nix_schalter am Anfang der Whileschleife 0,
das kommt jetzt 0, 2, 0.000000, 536876024,
Humidity = 0.0%, Temperature = 0.0C (32.0F)
das ist der nix_schalter am Anfang der Whileschleife 1,
das ist der nix_schalter am Anfang der Whileschleife 1, ...ca 33000 mal dann das ist der nix_schalter am Eingang 1,
das ist der nix_schaltdas ist der nix_schalter am Anfang der Whileschleife 1,
das kommt jetzt 1, 33390, 0.000000, 0,
Humidity = 56.0%, Temperature = 20.0C (68.0F)
das ist der nix_schalter am Anfang der Whileschleife 1,
das ist der nix_schalter am Anfang der Whileschleife 1, ... usw
Hier die Ausgabe ohne Zeile 56: das kommt jetzt 0
Humidity = 55.0%, Temperature = 20.0C (68.0F)
das kommt jetzt 0, 2, 0.000000, 536876024,
Humidity = 0.0%, Temperature = -infC (-infF)
das ist der nix_schalter am Eingang 1,
das ist der nix_schalter am Ausgang 0,
das ist der nix_schalter am Eingang 1,
das ist der nix_schalter am Ausgang 0, ... usw.