diff --git a/src/ESP32/3_leds_3.py b/src/ESP32/3_leds_3.py new file mode 100644 index 0000000..cb1990a --- /dev/null +++ b/src/ESP32/3_leds_3.py @@ -0,0 +1,89 @@ +from machine import Pin +import utime + + +class taller1: + led_board = Pin(2, Pin.OUT, value=0) + led_red = Pin(21, Pin.OUT, value=0) + led_blue = Pin(22, Pin.OUT, value=0) + led_yellow = Pin(23, Pin.OUT, value=0) + + button_left = Pin(5, Pin.IN, Pin.PULL_UP) + button_right = Pin(4, Pin.IN, Pin.PULL_DOWN) + + leds = [led_red, led_blue, led_yellow] + + DEBOUNCE = 60 + DELAY = 120 + + def __init__(self): + pass + + def left_a_right(self): + for led in self.leds: + led.on() + utime.sleep_ms(self.DELAY) + led.off() + utime.sleep_ms(self.DELAY) + + def right_a_left(self): + for i in range(2, -1, -1): + self.leds[i].on() + utime.sleep_ms(self.DELAY) + self.leds[i].off() + utime.sleep_ms(self.DELAY) + + def led_todo(self): + while True: + if self.button_left.value() == 1 and self.button_right.value() == 1: + for led in self.leds: + led.on() + utime.sleep_ms(self.DELAY) + else: + for led in self.leds: + led.off() + utime.sleep_ms(self.DELAY) + break + + def loop(self): + while True: + if self.button_left.value() == 1 and self.button_right.value() == 1: + self.led_todo() + pass + + if self.button_left.value() == 1: + self.left_a_right() + pass + + if self.button_right.value() == 1: + self.right_a_left() + pass + + utime.sleep_ms(self.DEBOUNCE) + + def setup1(self): + self.led_board.on() + utime.sleep(1) + self.led_board.off() + + self.led_red.on() + utime.sleep(1) + self.led_red.off() + + self.led_blue.on() + utime.sleep(1) + self.led_blue.off() + + self.led_yellow.on() + utime.sleep(1) + self.led_yellow.off() + + +def main(): + program = taller1() + program.setup1() + program.loop() + +if __name__ == '__main__': + main() + diff --git a/src/ESP32/5_common_cathode.py b/src/ESP32/5_common_cathode.py new file mode 100644 index 0000000..c857061 --- /dev/null +++ b/src/ESP32/5_common_cathode.py @@ -0,0 +1,96 @@ + +from machine import Pin +import utime +from time import sleep + + + + +class taller2: + # display_common_cathode + catodos = ( + int('3f', 16), + int('06', 16), + int('5b', 16), + int('4f', 16), + int('66', 16), + int('6d', 16), + int('7d', 16), + int('07', 16), + int('7f', 16), + int('67', 16) + ) + + display_pins = ( + 13, + 12, + 14, + 27, + 26, + 33, + 25, + 32 + ) + + bit = 1 + contador = 0 + display = list() + sentido = True + + def __init__(self): + # GPIO + for pin in self.display_pins: + self.display.append(Pin(pin, Pin.OUT, value=0)) + + + while True: + self.display_show() + + if self.sentido == True: + self.contador = self.contador + 1 + else: + self.contador = self.contador - 1 + + if self.contador == 9: + self.sentido = False + + if self.contador == 0: + self.sentido = True + + utime.sleep(1) + + + + def display_show(self): + self.bit = 1 + for segmento in self.display: + if (self.catodos[self.contador] & self.bit) == 0: + segmento.off() + else: + segmento.on() + self.bit = self.bit << 1 + + +def main(): + secmentos = { + 'a': Pin(13, Pin.OUT, value=0), + 'b': Pin(12, Pin.OUT, value=0), + 'c': Pin(14, Pin.OUT, value=0), + 'd': Pin(27, Pin.OUT, value=0), + 'e': Pin(26, Pin.OUT, value=0), + 'f': Pin(33, Pin.OUT, value=0), + 'g': Pin(25, Pin.OUT, value=0), + 'dp': Pin(32, Pin.OUT, value=0) + } + + for key, value in secmentos.items(): + value.on() + utime.sleep_ms(160) + value.off() + + program = taller2() + +if __name__ == '__main__': + main() + + diff --git a/src/ESP32/README.md b/src/ESP32/README.md index 2af1eae..23b09d8 100644 --- a/src/ESP32/README.md +++ b/src/ESP32/README.md @@ -16,10 +16,13 @@ ## Boot -`"thonny" > "tools" > "Options..." > "Interpreter" > "Install or update MicroPython (esptool)" >` +`"thonny" > "tools" > "Options..." > "Interpreter" > "Install or update MicroPython (esptool)"` `"Target port" = ""` + `"MicroPython family" = "ESP32"` + `"variant" = "Espressif ESP32 / WROOM"` + `"version" = "1.26.1` diff --git a/src/ESP32/template/1_hello_world.py b/src/ESP32/template/1_hello_world.py new file mode 100644 index 0000000..30dbd4a --- /dev/null +++ b/src/ESP32/template/1_hello_world.py @@ -0,0 +1,9 @@ +from machine import Pin +import utime +from time import sleep + +led = Pin(2, Pin.OUT) + +while True: + led.value(not led.value()) + sleep(0.5) diff --git a/src/ESP32/template/2_one_led.py b/src/ESP32/template/2_one_led.py new file mode 100644 index 0000000..9ffae4a --- /dev/null +++ b/src/ESP32/template/2_one_led.py @@ -0,0 +1,13 @@ +from machine import Pin +import utime +from time import sleep + +def main(): + pinMode = Pin(5, Pin.OUT) + pinMode.value(0) + while True: + pinMode.value(not pinMode.value()) + sleep(1) + +if __name__ == '__main__': + main() diff --git a/src/ESP32/template/3_button.py b/src/ESP32/template/3_button.py new file mode 100644 index 0000000..c44067b --- /dev/null +++ b/src/ESP32/template/3_button.py @@ -0,0 +1,20 @@ +from machine import Pin +import utime +from time import sleep + +def main(): + button_up = Pin(4, Pin.IN, Pin.PULL_UP) + button_up2 = Pin(5, Pin.IN, Pin.PULL_UP) + + pin_board = Pin(2, Pin.OUT) + + while True: + if button_up.value() == 1: + pin_board.value(not pin_placa.value()) + sleep(1) + if button_up2.value() == 1: + pin_board.value(not pin_placa.value()) + sleep(1) + +if __name__ == '__main__': + main() diff --git a/src/thonny/README.md b/src/thonny/README.md new file mode 100644 index 0000000..6f320d4 --- /dev/null +++ b/src/thonny/README.md @@ -0,0 +1,36 @@ +# Thonny + +`MicroPython` + + +## Led + + +### (HIGH) status +led.value(1) +led.on() + +### (LOW) status + +led.value(0) +led.off() + + +### Pin +led_placa = Pin(2, Pin.OUT, value=1) + +### Button +boton_up = Pin(4, Pin.IN, Pin.PULL_DOWN) + + +## Mod + +### Time + +import utime + +utime.sleep() + +utime.sleep_ms() + +utime.sleep_us()