Bonjour à tous,

Je vous expose mon petit souci; je modernise la maquette d'un musée en ajoutant un écran qui affiche une image tout en allumant la Led correspondante sur la maquette, ensuite la Led change et l'image aussi. L'allumage des Led est géré (le code peut certainement être simplifié) sans difficulté. Le problème se pose lorsque j'affiche mon image... Le code gérant les Leds ne tourne plus. C'est certainement une bêtise mais n'ayant aucune notion de phyton et quelque cours de programmation en visualbasic datant de plus de 10 ans... Ici la version avec 3 Led en réalité il y en a 15 mais ça ne change rien au principe je pense. Voici le code:

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
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
98
99
100
from tkinter import *
import tkinter as tk
import RPi.GPIO as GPIO #importation de la blibliothèque
import time
 
 
continuer = True #va me permettre de faire une boucle infinie
 
GPIO.setmode(GPIO.BOARD)#definit le mode de numérotation
GPIO.setwarnings(False) #on coupe les message d'alerte
 
LED_1 = 7 #on definit le numéro du GPIO qui alimente la led
LED_2 = 11
LED_3 = 12
LED_4 = 13
LED_5 = 15
LED_6 = 16
LED_7 = 18
LED_8 = 22
LED_9 = 29
LED_10 = 31
LED_11 = 32
LED_12 = 33
LED_13 = 35
LED_14 = 36
LED_15 = 37
 
#Les lignes ci dessous permettent d'éteindre toutes les led allumées au cas ou
GPIO.setup(LED_1, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_1, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_2, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_2, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_3, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_3, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_4, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_4, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_5, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_5, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_6, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_6, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_7, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_7, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_8, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_8, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_9, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_9, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_10, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_10, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_11, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_11, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_12, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_12, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_13, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_13, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_14, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_14, GPIO.LOW) #on l'éteint
 
GPIO.setup(LED_15, GPIO.OUT) #active le controle du GPIO
GPIO.output(LED_15, GPIO.LOW) #on l'éteint
 
continuer = True #va me permettre de faire une boucle infinie
 
while continuer:
    root = tk.Tk()
    photo = tk.PhotoImage(file='rampe_acces.png')#on charge la photo
    root.attributes ('-fullscreen', True)#definit la fentre en plein écran
    label= tk.Label(root, image=photo)
    label.pack()
    root.bind('<Escape>', lambda e: root.destroy())#utilise la touche escape pour quitter
    root.mainloop()
 
    GPIO.setup(LED_1, GPIO.OUT) #active le controle du GPIO
    GPIO.output(LED_1, GPIO.HIGH) #on l'allume
    time.sleep(5)
    GPIO.output(LED_1,GPIO.LOW) #on éteint
 
 
    GPIO.setup(LED_2, GPIO.OUT) #active le controle du GPIO
    GPIO.output(LED_2,GPIO.HIGH) #on l'allume
    time.sleep(5)
    GPIO.output(LED_2, GPIO.LOW) #on éteint
 
 
    GPIO.setup(LED_3, GPIO.OUT) #active le controle du GPIO
    GPIO.output(LED_3, GPIO.HIGH)#on l'allume
    time.sleep(5)
    GPIO.output(LED_3,GPIO.LOW)