commit
This commit is contained in:
parent
6a1571e8ce
commit
dcdfadbcbb
3 changed files with 74 additions and 47 deletions
46
blink.lua
46
blink.lua
|
@ -1,46 +0,0 @@
|
|||
-- écrit le 13/09/2024 par Lukian Leizour
|
||||
-- ce programme doit tourner sur un ESP32 sous LUARTOS
|
||||
|
||||
-- fonction permettant d'allumer la led bleu de l'ESP32
|
||||
function ledon ()
|
||||
pio.pin.setdir(pio.OUTPUT, pio.GPIO2) -- permet d'indiquer que la patte GPIO2 sert de sortie
|
||||
pio.pin.sethigh(pio.GPIO2) -- permet de mettre la tension au max
|
||||
end
|
||||
|
||||
-- fonction permettant d'eteindre la led bleu de l'ESP32
|
||||
function ledoff ()
|
||||
pio.pin.setdir(pio.OUTPUT, pio.GPIO2) -- permet d'indiquer que la patte GPIO2 sert de sortie
|
||||
pio.pin.setlow(pio.GPIO2) -- permet de mettre la tension au minimum
|
||||
end
|
||||
|
||||
-- fonction permettant d'allumer une led connectée sur la patte D18 de l'ESP32
|
||||
function ledon_18 ()
|
||||
pio.pin.setdir(pio.OUTPUT, pio.GPIO18) -- permet d'indiquer que la patte GPIO18 sert de sortie
|
||||
pio.pin.sethigh(pio.GPIO18) -- permet de mettre la tension au max
|
||||
end
|
||||
|
||||
-- fonction permettant d'eteindre une led connectée sur la patte D18 de l'ESP32
|
||||
function ledoff_18 ()
|
||||
pio.pin.setdir(pio.OUTPUT, pio.GPIO18) -- permet d'indiquer que la patte GPIO18 sert de sortie
|
||||
pio.pin.setlow(pio.GPIO18) -- permet de mettre la tension au minimum
|
||||
end
|
||||
|
||||
-- fonction permettant de faire clignoter la led de l'ESP32
|
||||
function blink (n) -- n : int, nombre d'itérations
|
||||
for j=1,n do
|
||||
ledon() -- appel de la fonction ledon
|
||||
tmr.delayms(200) -- le programme attend 200ms
|
||||
ledoff() -- appel de la fonctio ledoff
|
||||
tmr.delayms(200) -- le programme attend 200ms
|
||||
end
|
||||
end
|
||||
|
||||
-- fonction permettant de faire clignoter une led connectée sur la patte D18 de l'ESP32
|
||||
function blink_18 (n) -- n : int, nombre d'itérations
|
||||
for j=1,n do
|
||||
ledon_18() -- appel de la fonction ledon
|
||||
tmr.delayms(200) -- le programme attend 200ms
|
||||
ledoff_18() -- appel de la fonctio ledoff
|
||||
tmr.delayms(200) -- le programme attend 200ms
|
||||
end
|
||||
end
|
2
main.lua
2
main.lua
|
@ -1,5 +1,5 @@
|
|||
-- charge les fonctions de la led de la carte
|
||||
dofile("blink.lua")
|
||||
dofile("out.lua")
|
||||
|
||||
-- charge les foncitons
|
||||
|
||||
|
|
73
out.lua
Normal file
73
out.lua
Normal file
|
@ -0,0 +1,73 @@
|
|||
-- écrit le 13/09/2024 par Lukian Leizour
|
||||
-- ce programme doit tourner sur un ESP32 sous LUARTOS
|
||||
|
||||
-- fonction permettant d'allumer une led sur l'ESP32 sur une patte donnée
|
||||
function pinon (pin) -- pin : la patte sur laquelle la led est branchée
|
||||
pio.pin.setdir(pio.OUTPUT, pin) -- permet d'indiquer que la patte sert de sortie
|
||||
pio.pin.sethigh(pin) -- permet de mettre la tension au max
|
||||
end
|
||||
|
||||
-- fonction permettant d'eteindre une led sur l'ESP32 sur une patte donnée
|
||||
function pinoff (pin) -- pin : la patte sur laquelle la led est branchée
|
||||
pio.pin.setdir(pio.OUTPUT, pin) -- permet d'indiquer que la patte GPIO2 sert de sortie
|
||||
pio.pin.setlow(pin) -- permet de mettre la tension au minimum
|
||||
end
|
||||
|
||||
-- fonction permettant de faire clignoter la led de l'ESP32
|
||||
function blink (pin, n, delay) -- pin : la patte de sortie; n : int, nombre d'itérations; delay : le temps en ms que la led reste allumé et étteinte
|
||||
for i=1,n do
|
||||
pinon(pin) -- appel de la fonction ledon
|
||||
tmr.delayms(delay) -- le programme attend en fonction du délai donné
|
||||
pinoff(pin) -- appel de la fonctio ledoff
|
||||
tmr.delayms(delay) -- le programme attend en fonction du délai donné
|
||||
end
|
||||
end
|
||||
|
||||
-- fonction permettant d'allumer un buzzer pendant un temps donné
|
||||
function buzz(pin, delay) -- pin : la patte sur laquelle le buzzer est connecté; delay : le temps pendant lequel le buzzer reste allumé
|
||||
pinon(pin) -- on allume le buzzer
|
||||
tmr.delayms(delay) -- on attend pendand le temps désiré
|
||||
pinoff(pin) -- on étteint le buzzer une fois la durée atteinte
|
||||
end
|
||||
|
||||
-- fonction permettant de faire "clignoter" un buzzer sur un pin donné pour une durée donnée et un nombre d'itérations donné
|
||||
function blink_buzz(pin, n, delay) -- pin : la patte du buzzer; n : le nombre d'itérations; delay : le délai en ms
|
||||
for i=1,n do
|
||||
buzz(pin, delay) -- on allume le buzzer pendant la durée désirée
|
||||
tmr.delayms(delay) -- on attend avant de passer à la suite
|
||||
end
|
||||
end
|
||||
|
||||
-- fonction permettant de faire clignoter la led bleu du circuit de l'ESP32
|
||||
function blink_2(n) -- pin : la patte de sortie; n : int, nombre d'itérations
|
||||
blink(pio.GPIO2, n, 200) -- appel de la fonciton blink en lui donnant la bonne patte en paramètre ainsi que le temps d'éclairage
|
||||
end
|
||||
|
||||
-- fonction permettant d'afficher successivement les clouleurs Rouge, Vert et Bleu en connectant la led RGB sur les pins D18, D19 et D21
|
||||
function triColors(n) -- n : nombre de fois qu'on réalise le paterne
|
||||
for i=1,n do
|
||||
blink(pio.GPIO21, 1, 200) -- appel de la fonciton blink pour faire clignoter une fois la led en rouge pendant 200ms
|
||||
blink(pio.GPIO19, 1, 200) -- appel de la fonciton blink pour faire clignoter une fois la led en vert pendant 200ms
|
||||
blink(pio.GPIO18, 1, 200) -- appel de la fonciton blink pour faire clignoter une fois la led en bleu pendant 200ms
|
||||
end
|
||||
end
|
||||
|
||||
-- fonction qui envoie un signal SOS lumineux sur la led bleu du circuit de l'ESP32
|
||||
function sos_led(n) -- n : nombre de fois qu'on affiche le signal SOS
|
||||
for i=1,n do
|
||||
blink(pio.GPIO2, 3, 400) -- on clignotte 3 fois longuement
|
||||
blink(pio.GPIO2, 3, 200) -- on clignotte 3 fois courtement
|
||||
blink(pio.GPIO2, 3, 400) -- on clignotte 3 fois longuement
|
||||
tmr.delayms(400) -- on fait une longue pause de 400ms
|
||||
end
|
||||
end
|
||||
|
||||
-- fonction qui envoie un signal SOS sonore sur un buzzer branché sur la patte D18 de l'ESP32
|
||||
function sos_buzz(n) -- n : nombre de fois qu'on fait le signal SOS
|
||||
for i=1,n do
|
||||
blink_buzz(pio.GPIO18, 3, 400) -- on clignotte 3 fois longuement
|
||||
blink_buzz(pio.GPIO18, 3, 200) -- on clignotte 3 fois courtement
|
||||
blink_buzz(pio.GPIO18, 3, 400) -- on clignotte 3 fois longuement
|
||||
tmr.delayms(400) -- on fait une longue pause de 400ms
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue