12 Multicore
Le processeur RP2040 possède deux cœurs. C'est-à-dire qu'il est capable de faire tourner deux
programmes en parallèle. Il faut bien sûr faire attention à ne pas utiliser les mêmes ressources (port,
périphérique, interface etc...) dans les deux threads. Si les deux threads utilisent les mêmes ressources,
il faut dans ce cas utiliser les sémaphores tel que décrit
12.1 Python
Ce programme fait clignoter la LED interne à 10Hz dans le premier thread et affiche un compteur de
boucle toutes les secondes dans le second.
import
machine
import
utime
import
_thread
internal_led
= machine.Pin(25, machine.Pin.OUT)
def
second_thread():
compteur
=
0
while
True:
print(compteur)
utime.sleep(1)
compteur
_thread.start_new_thread(second_thread, ())
while
True:
internal_led.toggle()
utime.sleep(0.1)
=
compteur
+
1
ici
afin d'éviter un plantage.