Bonjour,
J'essaie de programmer ma microbit pour étudier la décharge d'un circuit RC.
Mon code :
L'erreur se situe à la ligne 40 : tout se passe comme si la duree enregistrée est nulle à chaque fois car j'obtiens une acquisition vide (juste les en-têtes). Par contre, si au lieu de mettre la variable duree, je mets la valeur que je saisis (par exemple 100), le programme fonctionne bien comme je souhaite qu'il le fasse (mesure toutes les echantillonnage millisecondes pendant la durée précisée).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 from microbit import * debut = 0 tempsPrec = 0 mesure = pin1 alimentation = pin0 saisie="" echantillonnage=0 duree=0 def reglages(): echantillonnage = int(input("Saisir la période d'échantillonnage (en ms) : ")) print(echantillonnage) #sleep(100) duree = int(input("Saisir la durée d'acquisition (en ms) : ")) print(duree) sleep(100) input("Saisir S pour lancer l'acquisition : ") tempsPrec=0 print("temps \t Uc") print("s \t V") def decharge(): alimentation.write_digital(0) def charge(): alimentation.write_digital(1) while mesure.read_analog() < 980: #print(mesure.read_analog()) sleep(10) reglages() charge() decharge() debut=running_time() while running_time() - debut < duree: if running_time() - tempsPrec >= echantillonnage: tempsPrec = running_time() print(running_time() - debut, end="") print("\t", end="") print(mesure.read_analog() * 3.3 / 1023)
Je n'arrive pas à voir quelle est l'erreur dans mon programme.
Merci
Partager