새기능 #4
진행중[튜토리얼] LED DAC 제어, PCF8591 DAC 출력
100%
설명
PCF8591 모듈을 사용하여 라즈베리 파이로 LED의 밝기를 조절하는 DAC(Digital-to-Analog Converter) 예제 코드를 설명해 드릴게요. PCF8591은 아날로그 입력뿐만 아니라 8비트 DAC 출력 기능도 내장하고 있어, 0부터 255까지의 디지털 값을 아날로그 전압으로 변환하여 출력할 수 있습니다. 이 전압을 사용하여 LED의 밝기를 제어할 수 있습니다.
🚨 준비물
라즈베리 파이 (모든 모델)
PCF8591 A/D & D/A 컨버터 모듈
LED
저항 (약 220옴 ~ 330옴, LED 보호용)
브레드보드 (선택 사항)
점퍼 와이어
🔌 배선 (연결)
PCF8591 모듈과 LED, 그리고 라즈베리 파이의 연결 방법입니다.
PCF8591 ↔ 라즈베리 파이 (I2C 통신)
PCF8591 VCC ↔ 라즈베리 파이 3.3V (핀 1 또는 17)
PCF8591 GND ↔ 라즈베리 파이 GND (핀 6, 9, 14, 20, 25, 30, 34, 39 중 하나)
PCF8591 SDA ↔ 라즈베리 파이 SDA (핀 3, GPIO 2)
PCF8591 SCL ↔ 라즈베리 파이 SCL (핀 5, GPIO 3)
LED ↔ PCF8591
PCF8591 모듈에는 AOUT (Analog OUT) 또는 DAC 출력이라고 표시된 핀이 있습니다. 이 핀이 디지털 값을 아날로그 전압으로 변환하여 내보내는 곳입니다.
PCF8591 AOUT (DAC 출력) 핀 ↔ 저항 (220~330옴)
저항 ↔ LED의 긴 다리 (애노드)
LED의 짧은 다리 (캐소드) ↔ PCF8591의 GND 핀
⚙️ 소프트웨어 설정
이전 질문에서 이미 PCF8591을 위해 I2C를 활성화하고 smbus 라이브러리를 설치하셨을 것입니다. 만약 아직 안 하셨다면 아래 단계를 따르세요.
I2C 활성화: 라즈베리 파이에서 I2C 통신 기능을 활성화해야 합니다. 터미널을 열고 다음 명령어를 입력합니다.
sudo raspi-config
3 Interface Options → I5 I2C → Yes를 선택하여 I2C를 활성화합니다.
재부팅이 필요할 수 있습니다.
필요한 라이브러리 설치: PCF8591을 제어하기 위한 smbus 라이브러리가 필요합니다.
sudo apt update
sudo apt install -y python3-smbus i2c-tools
i2c-tools는 I2C 장치가 올바르게 연결되었는지 확인할 때 유용합니다.
PCF8591 주소 확인 (선택 사항): i2cdetect 명령어를 사용하여 PCF8591 모듈의 I2C 주소를 확인할 수 있습니다.
i2cdetect -y 1