Comment éviter un temps de pause dans le programme ? Alternative à "Attendre"

Démarré par etyo, décembre 25, 2019, 05:39:56 pm

« précédent - suivant »

etyo

Bonjour à tous,

Bonjour à tous, message d'un néophyte, pour une question peut-être déjà posée (mais j'ai pas trouvé sur le forum) :

j'essaie de préparer un programme permettant de faire varier les paramètres d'un son émis par un buzzer à l'aide de potentiomètres.

Est-il possible d'utiliser une autre fonction que "Attendre ..." pour la gestion des délais ?
J'ai lu qu'il existe une alternative, "Milli", sur Arduino. Cette fonction existe-t-elle dans Blockly@ ?

Cela me permettrait de faire varier les paramètres du son pendant son exécution.

Merci d'avance

SebCanet

Bonjour,
dans la catégorie Arduino -> temps & durée, il y a 2 blocs différents pour ça :
Vous ne pouvez pas voir les fichiers joints de cette section.

Si besoin on peut créer d'autres blocs.

Bons tests.

etyo

Le bloc "Faire une temporisation de ..." inscrit "Delay" dans le code. Ce qui occasionne une pause dans le programme. A ce que je découvre sur les forums, il semble que la fonction "Millis" n'en fait pas, elle permet de prendre un repère temporel, tout en laissant le Loop se poursuivre.

L'origine de ma question : comment faire varier instantanément la luminosité d'une LED en fonction d'une photorésistance, tout en affichant la valeur de la photorésistance sur le port série tous les 500ms.

Au pire, je remplace "Delay" par "millis" dans le code, B@ m'ayant déjà permis d'en écrire la quasi-totalité.

Merci quand même pour cette réponse rapide.

SebCanet

Salut,
voilà de quoi aider je pense :
Vous ne pouvez pas voir les fichiers joints de cette section.
La fonction millis() est utilisée mais il faut faire attention au typage de la variable 'timing' qui la stocke à la déclarer en nombre entier long si ça dure trop longtemps.

Bons test.