라즈베리파이:GPIO

학교의 모든 지식. SMwiki
Sam (토론 | 기여)님의 2022년 10월 26일 (수) 22:51 판
둘러보기로 이동 검색으로 이동

틀:라즈베리파이

  1. 라즈베리파이:개요
    1. 틀:우분투
    2. 라즈베리파이:무선랜
    3. 라즈베리파이:블루투스
  2. 라즈베리파이:파이썬 제어
  3. 라즈베리파이:하드웨어
    1. 라즈베리파이:GPIO
      1. 라즈베리파이:시리얼 통신
    2. 라즈베리파이:카메라
    3. 라즈베리파이:서보모터
    4. 라즈베리파이:모터

개요

general-purpose input/output. 다용도 입출력. 라즈베리파이 보드에서 센서들을 추가하기 위해 기본적으로 사용되는 인터페이스. 기본적으로 아두이노와 유사한 구조로, 핀을 통해 신호를 읽거나 내뱉는 방식이다.

유의

GPIO 핀으로 3.3V 이상이 들어오지 않게 각별히 주의하자.

다양하게 제어하는 방식이 있지만, 파이썬이 적절한 대안일 듯하다.

파이썬의 RPi.GPIO, WiringPi로 제어가 가능하다.

입출력

입력

3.3V까지 받아들이며, 디지털신호만 받는다. 아날로그를 받기 위해선 ADC기능을 가진 IC를 사용해야 한다.

SPI 통신

Serial Peripheral Interface. 시리얼 통신을 사용하려면 다음과 같은 과정이 필요하다.

과정 설명 방법
설정 라즈베리파이의 설정을 변경한다. 라즈베리파이 설정 > 인터페이스 > SPI, I2C를 Enable로 설정
리부팅 설정을 반영하기 위해. sudo reboot
SPI라이브러리 설치 설치하고자 하는 위치에서 실행한다. git clone [./Git://github.com/doceme/py-spidev git://github.com/doceme/py-spidev]
파이썬에서의 활용
import spidev

spi = spidev.SpiDev()  # 인스턴스 생성.
spi.open(0,0)  # 통신 시작.
spi.max_speed_hz = 100000  # 통신속도 설정.