Configurare initiala: --------------------- Activare SSH pentru Ubuntu MATE: sudo systemctl enable ssh Administrarea de la distanta a spatiului de lucru (eng. Desktop): sudo apt-get install xrdp ------------------------------------------------------------------ Python: ------- Creearea unui fisier text gol cu extensia ".py" - python: touch .py Modificarea continutului acestuia (cu ajutorul editorului de text 'nano'): nano .py Continutul unui fisier python: #!/usr/bin/python - pentru a specifica o cale absoluta (eng. absolute path) in Unix, anume inspre directorul ce contine bibleotecile aferente interpretorului de cod - python; # - introducerea unor indicatii in interiorul codului de program. Frazele care incep cu semnul diez "#" nu sunt luate in considerare! - exemplu: print "Text pentru afisare in consola!" --> unde "print" este o instructiune specifica limbajului de programare iar "Text pentru afisare in consola!" este argumentul instructiunii; Executarea unui fisier Python: sudo python .py unde instructiunea "sudo" ne ajuta sa executam aplicatia cu drept de administrator sau "Super User" in Linux; iar "python" este o indicatie transmisa terminalului pentru a identifica interpretorul de cod necesar in vederea compilarii si executarii. Introducerea bibleotecii necesare pentru activarea iesirilor / intrarilor digitale pentru uz general (eng. G.P.I.O. - Genera Purpose Input Output): import RPi.GPIO as GPIO Utilizare GPIO (exemplu pornire LED): #!/usr/bin/python #Specificare cale absoluta interpretor python; import RPi.GPIO as GPIO #Importarea bibleotecii pentru intrari / iesiri digitale de uz general G.P.I.O.; GPIO.setmode(GPIO.BCM) #Numerotarea pinilor standard impusa de chipul BroadCom prezent pe platforma; GPIO.cleanup() #Aducerea in stare de INTRARE a tuturor canalelor de intrare / iesire (GPIO); GPIO.setwarnings(False) #Ignorarea / ne-afisarea mesajelor de alerta / eroare cu privire la intrari / iesiri digitale; GPIO.setup(23,GPIO.OUT) #Configurarea pinului 24 ca si iesire digitala (similar cu instructiunea Arduino "pimode()" ); GPIO.setup(24,GPIO.OUT) print "Stare LED = Pornit" #Afisare in consola / terminal a mesajului "Stare LED = Pornit"; GPIO.output(23,GPIO.HIGH) #Punerea iesirii digitale 23 in starea "logic 1" sau +3.3 [V] (eng. logic HIGH) (similar Arduino "digitalWrite()"); GPIO.output(24,GPIO.HIGH) Itroducerea unei functii pentru intarzierea executiei (eng. delay - similar functie Arduino "delay()" ): time.sleep() OBSERVATIE: Este necesara importarea initiala a bibleotecii "time"; Introducerea buclelor de executie (eng. "while"): while 1: OBSERVATIE: Este necesar sa introducem un sub-aliniat de 3 spatii sub instructiunea "while 1" (eng. indent) Ceea ce este continut in bucla de executie este evidentiat prin aliniere la stanga cu trei spatii; Utilizare bucla de executie (exemplu: clipirea unui LED): #!/usr/bin/python import time #Importare bibleoteca "time"; import RPi.GPIO as GPIO GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) GPIO.setup(23,GPIO.OUT) while 1: #Stabilirea unei bucle infinite de executie; GPIO.output(23,GPIO.HIGH) #Pornire LED: time.sleep(1) #Suspendarea executiei pe perioada unei secunde; GPIO.output(23,GPIO.LOW) #Oprire LED; time.sleep(1) OBSERVATIE: Se va utiliza comanda "ctrl + c" pentru incheierea executiei programului in terminal / consola; ------------------------------------------------------------------------------------------------------------ Bibleografie: ------------- https://www.youtube.com/channel/UCRAvo5cQWyfog8nRzlf_jWg