Mesaj S.O.S. transmis printr-un LED conectat la Raspberry Pi + cod Python
Salutare prieteni!
Mai jos veți găsi primul meu program făcut în Python pe Raspberry Pi. Este vorba de un program care repetă vizual mesajul S.O.S. transmis printr-un LED conectat la GPIO-ul plăcii Raspberry Pi.
Mesajul se repetă într-o buclă ce poate fi oprită oricand apăsând CTRL+C.
Clipul video care vă arată cum funcționează programul:
Schema conectării LED-ului la GPIO:
Iată codul meu (*Free to copy and use for educational purpose):
# Copyright 2020 by Sebastian Chetroni - ZCoder.ro
# Free to copy and use for educational purposes
from time import sleep
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(8, GPIO.OUT)
# Copyright 2020 by Sebastian Chetroni - ZCoder.ro
# Mai jos incepe bucla care se va repeta la infinit
while True:
# Tiparim in consola prima litera S
print('S.')
# Incepem sa aprindem si sa stingem LED-ul pentru a transmite litera S
GPIO.output(8, GPIO.HIGH) # aprindem LED-ul
sleep(0.3) #facem pauza 0,3sec
GPIO.output(8, GPIO.LOW) # stingem LED-ul
sleep(0.1) #facem pauza 0,1sec
GPIO.output(8, GPIO.HIGH) # aprindem LED-ul
sleep(0.3) #facem pauza 0,3sec
GPIO.output(8, GPIO.LOW) # stingem LED-ul
sleep(0.1) #facem pauza 0,1sec
GPIO.output(8, GPIO.HIGH) # aprindem LED-ul
sleep(0.3) #facem pauza 0,3sec
GPIO.output(8, GPIO.LOW) # stingem LED-ul
sleep(0.6) #facem pauza 0,6sec
# Tiparim in consola prima litera O
print('O.')
# Incepem sa aprindem si sa stingem LED-ul pentru a transmite litera O
GPIO.output(8, GPIO.HIGH)
sleep(0.6)
GPIO.output(8, GPIO.LOW)
sleep(0.1)
GPIO.output(8, GPIO.HIGH)
sleep(0.6)
GPIO.output(8, GPIO.LOW)
sleep(0.1)
GPIO.output(8, GPIO.HIGH)
sleep(0.6)
GPIO.output(8, GPIO.LOW)
sleep(0.6)
# Tiparim in consola prima litera S
print('S.')
# Incepem sa aprindem si sa stingem LED-ul pentru a transmite litera S
GPIO.output(8, GPIO.HIGH)
sleep(0.3)
GPIO.output(8, GPIO.LOW)
sleep(0.1)
GPIO.output(8, GPIO.HIGH)
sleep(0.3)
GPIO.output(8, GPIO.LOW)
sleep(0.1)
GPIO.output(8, GPIO.HIGH)
sleep(0.3)
GPIO.output(8, GPIO.LOW)
sleep(2) # facem pauza 2 secunde pana la urmatorul mesaj SOS
print('\n\n') # Lasam doua randuri libere in consola pana la urmatorul mesaj SOS
Mai multe detalii despre codul morse găsiți aici: ro.wikipedia.org/wiki/Codul_Morse
Author: Sebastian Chetroni
Website: https://zcoder.ro
Articole recente
- Olimpiada Nationala de Informatica 2023. Rezolvare problema „Cadouri” in C++, clasa a V-a
- Olimpiada Nationala de Informatica 2023. Rezolvare problema „Patinaj” in C++, clasa a V-a
- Olimpiada Judeteana de Informatica 2018. Rezolvare problema „Forus” in C++, clasa a V-a
- Olimpiada Judeteana de Informatica 2018. Rezolvare problema „Patrate” in C++, clasa a V-a
- Olimpiada Judeteana de Informatica 2019. Rezolvare problema „Cartele” in C++, clasa a V-a
Comentarii recente
- irina c la Olimpiada Judeteana de Informatica 2021. Rezolvare problema „Concurs” in C++, clasa a V-a
- M la Olimpiada Judeteana de Informatica 2022. Rezolvare problema „Sume si secvente” in C++, clasa a V-a
- Sebastian Chetroni la Olimpiada Judeteana de Informatica 2023. Rezolvare problema “Aeriana” in C++, clasa a V-a
- andrei toma la Olimpiada Judeteana de Informatica 2023. Rezolvare problema “Aeriana” in C++, clasa a V-a
- andrei nicolescu la Am fost in tabara educationala de vara Atlantykron. Voi mai merge




Eroare in linia 4
import RPi.GPIO as GPIO
ModuleNotFoundError: No module named ‘RPi’
Salut George,
Programul este facut sa functioneze pe un Raspberry Pi cu sistemul lui de operare: Raspbian OS / RaspberryPi OS.
Daca incerci sa il pornesti de pe un calculator/laptop cu Windows nu va functiona.
Libraria GPIO este disponibila doar pe Raspberry Pi, GPIO reprezentand acei 40 de pini la care se pot conecta diverse accesorii/senzori/motorase, etc.
iti las aici documentatia pentru GPIO: https://www.raspberrypi.org/documentation/usage/gpio/
Daca totusi pornesti programul de pe un Raspberry Pi si nu iti functineaza, te rog sa-mi spui si cautam variante pentru a-l face sa functioneze.
Succes!