Bonjour,

comment utiliser l'interruption avec le python ?
voici le code qui me permet de lancer le lecteur mp3:

Code python : 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
 
import npxMp3
from machine import Pin, UART
import array, time
 
interStart = Pin(17, Pin.IN, Pin.PULL_UP) # broche en entree pullup actif
uart = UART(0, baudrate=9600) # on défni l 'UART en pin 0 et 1
 
isPause = 0;
volume = 5;
 
npxMp3.reset()
 
interStart.irq(
        lambda pin: print(
            "PLAY IRQ !:",initPlay()
        ), # fonction inline
        Pin.IRQ_FALLING # mode de déclenchement
)
 
def initPlay():
        print("initPlay ...")
        init_ok = 0;
        if(init_ok) == 0 :
            init_ok = 1
            npxMp3.set_vol(50)
            npxMp3.set_folder(1)
            npxMp3.play()
Si je met à 0 la broche 17, je dois lancer mon mp3, le problème c'est que il se lance bien, mais
l'interruption lance 4 fois "Play", le le vois en faisant un print play init ... alors que je souhait qu'il le lance une seul fois ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
>>> initPlay ...
PLAY IRQ !: None
initPlay ...
PLAY IRQ !: None
initPlay ...
PLAY IRQ !: None
initPlay ...
PLAY IRQ !: None
initPlay ...
PLAY IRQ !: None
merci de vos réponse