Ardumotive Arduino Greek Playground
  • Home
    • About us
    • License
  • Arduino
    • Tutorials
    • Workshop
  • Raspberry Pi
  • DIY 3D Printer
  • News
    • Events >
      • Unboxing & Review
    • Blog
The 1st Arduino Playground in Greece - Open Source Hardware

Ένα LED, πολλά χρώματα!

                          13/9/2018
Available Languages
Picture
Picture

Εισαγωγή

Picture
Ένα RGB LED (Red, Green, Blue) διαθέτει 4 ακροδέκτες, έναν για κάθε χρώμα και έναν κοινής ανόδου ή καθόδου. Στο εσωτερικό του κρύβει τρία led, ένα για το κάθε χρώμα, τα οποία μπορούν να συνδυαστούν για να δώσουν ένα μεγάλο φάσμα χρωμάτων στον χρήστη. Ουσιαστικά πρόκειται για 3 σε 1 led!
Σε αυτόν τον οδηγό θα μάθετε πως να χρησιμοποιείτε ένα RGB LED με το Raspberry αποδίδοντας διαφορετικά χρώματα.

Τα υλικά που θα χρειαστούμε

Για το tutorial αυτό θα χρειαστούμε: 
  • GPIO Breakout(προαιρετικό)
  • Breadboard
  • RGB LED
  • 3x220 Ohm αντιστάσεις
Picture

Το κύκλωμα

Picture
Οι συνδέσεις είναι αρκετά εύκολες, δείτε την παραπάνω εικόνα με το σχηματικό του κυκλώματος σε breadboard.
Picture
Υπάρχουν δύο είδη RGB LED. Ένα κοινής καθόδου και ένα κοινής ανόδου. Η διαφορά τους είναι πως για να ανάψει ένα RGB LED κοινής καθόδου χρειάζεται να το βάλουμε στην κατάσταση HIGH, ενώ το RGB LED της κοινής ανόδου αν θέλουμε να το κάνουμε να ανάψει θα πρέπει  να το έχουμε στην κατάσταση LOW.

Python code

Το πρώτο βήμα είναι να εισάγουμε τις βιβλιοθήκες για το GPIO και Sleep. Στην συνέχεια θέτουμε το GPIO ως BCM και δηλώνουμε τα pins των τριών χρωμάτων (κόκκινο, πράσινο και μπλέ). Αμέσως μετά με την εντολή GPIO.setup λέμε πως είναι έξοδοι. Με την εντολή def ονομα(): δημιουργούμε μία συνάρτηση όπου μέσα σε αυτή θα βάλουμε τις καταστάσεις των τριών βασικών χρωμάτων σε HIGH και LOW φτιάχνοτας με συνδιασμούς διάφορα χρώματα όπως είναι το άσπρο, κόκκινο, πράσινο, μπλέ, κίτρινο, μωβ και το γαλάζιο. Στο τέλος με την επανάληψη while True: και χρησιμοποιώντας μόνο τα ονόματα των συναρτήσεων και της εντολής sleep() θα κάνουμε το LED μας να ανάβει το ένα χρώμα μετά το άλλο με διαφορά ενός δευτερολέπτου.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#libraries
import RPi.GPIO as GPIO
from time import sleep
#disable warnings (optional)
GPIO.setwarnings(False)
#Select GPIO Mode
GPIO.setmode(GPIO.BCM)
#set red,green and blue pins
redPin = 12
greenPin = 19
bluePin = 13
#set pins as outputs
GPIO.setup(redPin,GPIO.OUT)
GPIO.setup(greenPin,GPIO.OUT)
GPIO.setup(bluePin,GPIO.OUT)

def turnOff():
    GPIO.output(redPin,GPIO.HIGH)
    GPIO.output(greenPin,GPIO.HIGH)
    GPIO.output(bluePin,GPIO.HIGH)
    
def white():
    GPIO.output(redPin,GPIO.LOW)
    GPIO.output(greenPin,GPIO.LOW)
    GPIO.output(bluePin,GPIO.LOW)
    
def red():
    GPIO.output(redPin,GPIO.LOW)
    GPIO.output(greenPin,GPIO.HIGH)
    GPIO.output(bluePin,GPIO.HIGH)

def green():
    GPIO.output(redPin,GPIO.HIGH)
    GPIO.output(greenPin,GPIO.LOW)
    GPIO.output(bluePin,GPIO.HIGH)
    
def blue():
    GPIO.output(redPin,GPIO.HIGH)
    GPIO.output(greenPin,GPIO.HIGH)
    GPIO.output(bluePin,GPIO.LOW)
    
def yellow():
    GPIO.output(redPin,GPIO.LOW)
    GPIO.output(greenPin,GPIO.LOW)
    GPIO.output(bluePin,GPIO.HIGH)
    
def purple():
    GPIO.output(redPin,GPIO.LOW)
    GPIO.output(greenPin,GPIO.HIGH)
    GPIO.output(bluePin,GPIO.LOW)
    
def lightBlue():
    GPIO.output(redPin,GPIO.HIGH)
    GPIO.output(greenPin,GPIO.LOW)
    GPIO.output(bluePin,GPIO.LOW)
    
while True:
    turnOff()
    sleep(1) #1second
    white()
    sleep(1)
    red()
    sleep(1)
    green()
    sleep(1)
    blue()
    sleep(1)
    yellow()
    sleep(1)
    purple()
    sleep(1)
    lightBlue()
    sleep(1)
Κατεβάστε τον κώδικα απ' εδώ και ανοίξτε το αρχείο με το Thonny Python IDE ή από το terminal.
rgbledtutorial.zip
File Size: 0 kb
File Type: zip
Download File

Συγχαρητήρια!

Μόλις ολοκληρώσατε άλλο ένα "How to" tutorial και μάθατε πως να χρησιμοποιείτε ένα RGB LED!
Ελπίζω να σας άρεσε, αν θέλετε μπορείτε να αφήσετε το σχόλιο σας παρακάτω.

Video in Greek language

Picture

Search Engine

Picture

Licence 

Picture

Help us to grow up!

Picture


Donate us
About us
License
Cookies policy

Visit the biggest Arduino Shop in Greece!

Picture
find us on dwrean.net
find us on Codebender
find us on Instructables
Developed and designed by Vasilakis Michalis Copyright © 2013 Ardumotive All Rights Reserved
All trademarks referenced herein are properties of their
Powered by Create your own unique website with customizable templates.
Design by DivTag Templates