먼저 I2C(SCL, SDA)가 무엇인지 알고싶다면 BH1750FVI센서를 I2C통신하는 아래의 링크를 먼저 확인한다.
이론도 포함되어 있으며 이론만 알면 아두이노, STM등 I2C를 지원하는 컨트롤러는 다 응용이 가능하다.
2021.11.11 - [프로그래밍/Python] - [Python] 라즈베리파이 I2C통신 feat.조도센서(BH1750FVI)
테스트 환경은 라즈베리파이 B, 라즈비안 데스크톱 버스터이다.
아래는 라즈베리파이 핀 정보이며 회로도는 첨부하였다.
아래 명령어는 라즈베리 핀을 확인하는 명령어이다.
gpio readall
물리적 핀번호 3, 5번이 기본적으로 설정되어있는 i2c 핀번호이며 채널 1(SCL.1, SDA.1)에 속한다.
아래 명령어를 실행하면 16진수 행렬이 나올텐데, 자세한건 모르나 채널1이 오픈되어있다고 생각하면 될 것 같다.
아래는 채널 1에 연결되어있는 센서 주소를 확인하는 명령어이다.
sudo i2cdetect -y 1
채널 0(SCL.0, SDA.0)은 물리적 핀번호 27, 28에 속한다.
아래는 채널 0에 연결되어있는 센서 주소를 확인하는 명령어이다.
sudo i2cdetect -y 0
하지만 명령어를 실행하면 에러가 뜰텐데 채널 0은 수동으로 설정을 해주어야 한다.
채널 0도 오픈하려면 아래 명령어를 실행해 편집기를 실행한 후
sudo vim /boot/config.txt
아래와 같이 dtparam=i2c_vc=on 을 추가 한 후 저장하고 reboot 한다.
다시 i2cdetect -y 0 을 실행해보자.
'프로그래밍 > Raspberry PI' 카테고리의 다른 글
[라즈베리파이] GUI 데스크톱 환경 설치 (0) | 2022.07.21 |
---|---|
[라즈베리파이] Node-RED 설치 (0) | 2022.06.07 |
[라즈베리파이/라즈비안] 서비스 등록 (자동 시작) (0) | 2022.05.24 |
[리눅스/라즈베리파이]fswebcam 배너삭제, 출력문 삭제 외 다른 기능들 (0) | 2021.09.03 |
[라즈비안/라즈베리파이] 메뉴바 사라질 때 대처법 (1) | 2021.06.10 |
댓글