준비물: 라즈베리파이, GPIO 확장 보드, GPIO 확장 어댑터, 브레드보드, 점프선, LED 

라즈베리파이3 GPIO 핀번호
저항읽는 법


blog.naver.com/PostView.nhn?blogId=sisosw&logNo=221400905102&parentCategoryNo=&categoryNo=33&viewDate=&isShowPopularPosts=true&from=search

 

라즈베리파이에서 파이썬으로 LED 깜박이기 I

I. 파이썬 개발환경 실행하기■ GPIO를 제어할 때 관리자 권한으로 실행하는 방법라즈베리파이 GPI...

blog.naver.com

sudo apt-get install python-dev
sudo apt-get install python-rpi.gpio

1초마다 LED 깜빡거림
ctrl+c로 LED끄기 

 

- Programming->Thonny Python IDE에서 실행한 코드 

위의 코드와 동일 + LED 1개 추가됨
위의 코드와 동일 

 

입력받은 수 만큼 LED 깜빡거리기 


- 스위치 연결 

알아야 할 개념 : 풀업저항, 풀다운저항 

m.blog.naver.com/PostView.nhn?blogId=jwcreative&logNo=220718533427&proxyReferer=https:%2F%2Fwww.google.com%2F

 

플로팅 그리고 풀업저항, 풀다운저항

안녕하세요. 상상대장간의 연금술사 흥군입니다. 가능하면 전자공학에 대해서 잘 모르는 초보자에게도 쉽게...

blog.naver.com

shek.tistory.com/47

 

풀업(Pull-Up) 저항과 풀다운(Pull-Down) 저항

# 플로팅(Floating) 풀업 저항(Pull-Up Register)과 풀다운 저항(Pull-Down Register)에 앞서, 플로팅(Floating) 이란? INPUT으로 설정된 핀에는 5V(VCC), 또는 0V(GND)의 전압을 입력해주는 것이 일반적 입니다...

shek.tistory.com

 


-R,G,B 중에서 원하는 색상을 입력하였을 때 출력되도록 만들기 


-모션감지 센서 

- 사진에서 왼쪽이 센서의 민감도(Sensitivity)를 조절할 수 있는 ‘감도 조절부’이며, 시계방향으로 돌리면 민감도를 낮춰준다. 반대로 반시계 방향은 민감도를 올려준다.


- 오른쪽은 ‘신호 지속시간 조절부’ 이다. 시계방향은 지속시간을 길게, 반시계방향은 지속시간을 짧게 해준다.

 

m.blog.naver.com/PostView.nhn?blogId=icbanq&logNo=221639692484&proxyReferer=https:%2F%2Fwww.google.com%2F

 

반돌이's 라즈베리파이 - PIR 센서와 LED 를 연동하기!

안녕하세요 나도메이커의 나도비입니다오늘은 라즈베리파이에서 인체 감지센서를 이용하여LED를 ON/O...

blog.naver.com


-PWM

펄스 주기에서 On 되어있는 비율을 duty라고 하며, duty 값이 낮을수록 출력 전압은 낮아진다.

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM) #GPIO.BOARD

LED_R = 13
LED_G = 19
LED_B = 26

GPIO.setup(LED_R, GPIO.OUT)
GPIO.setup(LED_G, GPIO.OUT)
GPIO.setup(LED_B, GPIO.OUT)

RED= GPIO.PWM(LED_R,100)
GREEN= GPIO.PWM(LED_G,100)
BLUE= GPIO.PWM(LED_B,100)

RED.start(0)
GREEN.start(0)
BLUE.start(0)

color= input()

try:
    while True:
        if color == 'R':
          for i in range(0,100):
            RED.ChangeDutyCycle(i)
            time.sleep(0.05)
        elif color == 'G':
          for i in range(0,100):
            GREEN.ChangeDutyCycle(i)
            time.sleep(0.05)
        elif color == 'B':
          for i in range(0,100):
            BLUE.ChangeDutyCycle(i)
            time.sleep(0.05)
        elif color == 'RG' or 'GR':
          for i in range(0,100):
            RED.ChangeDutyCycle(i)
            GREEN.ChangeDutyCycle(i)
            time.sleep(0.05)
        elif color == 'RB' or 'BR':
          for i in range(0,100):
            RED.ChangeDutyCycle(i)
            BLUE.ChangeDutyCycle(i)
            time.sleep(0.05)
        elif color == 'GB' or 'BG':
          for i in range(0,100):
            GREEN.ChangeDutyCycle(i)
            BLUE.ChangeDutyCycle(i)
            time.sleep(0.05)
        elif color == 'RGB':
          for i in range(0,100):
            RED.ChangeDutyCycle(i)
            GREEN.ChangeDutyCycle(i)
            BLUE.ChangeDutyCycle(i)
            time.sleep(0.05)        
        
except KeyboardInterrupt:
    GPIO.cleanup()

 

+ Recent posts