Page 51 - 최강 아두이노 퍼스트 참고서
P. 51
아두이노 프로그래밍 코드에서는 SPI 통신을 사용하기 위해 #include <SPI.h> 선언하여 함수,
클래스 등을 사용할 수 있습니다.
아두이노에서 많이 사용되는 SPI 통신 모듈로는 SD 카드 모듈, 이더넷 네트워크 모듈 이 있습
니다. 그 외에 RFID, NFC 모듈과 아두이노와의 SPI 통신 등이 있습니다.
아두이노에서 2 개의 SPI 통신 기기 사용하기
프로젝트의 목적에 따라 1 개 이상의 SPI 모듈을 사용해야 하는 경우가 있습니다. 아두이노 보
드가 마스터이고 나머지 2 개의 SPI 기기는 슬레이브 방식으로 통신을 하 게 됩니다.
SPI 기본 포트의 설명을 조금이라도 이해되는 상태라면 안다면 어렵지 않게 1 개 이상 의 SPI
모듈을 아두이노 보드에 적용하여 사용 할 수 있습니다.
SPI 통신 포트 중 SS (Slave Select)포트는 고정적이지 않습니다. 아두이노에서의 1 개 이상의
SPI 기기를 사용하는 경우에는 SS 포트 연결 시 다른 포트를 지정하여 사용할 수 있습니다. 용
어 그대로 SS 로 지정된 포트가 LOW(or HIGH)일 경우에는 해당 SPI 포트에 연결된 장치와
통신을 한다는 의미입니다. SS 포트는 사용자가 정할 수 있습니다. SS 포트는 다른 디지털 포
트로 지정하여 사용 가능합니다. D9, D8, D7 등의 포트를 프로그래밍에서 사용할 수 있습니
다.
SPI 방식의 RFID 리더기 모듈에서 읽어 들인 출입 카드의 내용을 SPI 방식의 SD 카드에 저장
하는 경우 2 개의 SPI 기기와 통신을 해야 합니다.
이런 경우에는 위에서도 언급 되어 있듯이 SS 포트만 다른 디지털 포트(HIGH, LOW 가능 포
트)를 지정하여 사용할 수 있습니다.
SPI 통신 포트 SCK, MISO, MOSI 포트에는 2 개의 기기를 병렬로 연결하면 됩니다.
I2C 통신
Inter-Integrated Circuit, I2C 라는 단어와 IIC 는 같은 의미입니다.
I2C(Inter Integrated Circuit)는 MCU(마이크로프로세서장치)와 저속 주변 장치 사이 의 통신
을 위한 규약입니다. 필립스 회사에서 개발되어 현재도 많이 사용되는 방식입니다.
TWI (Two Wire Interface), eye-squared-see, Inter IC Control, 통신 방식에 대한 용도 및 접근
방식에 따른 표현 단어가 조금 다를 뿐 같은 의미입니다. SPI 통신과는 다르게 2 라인을 사용
합니다. 2 가닥의 선으로 통신한다는 것이 큰 장점 중에 하나이기도 합니다.
SDA 는 데이터 통신을 위한 포트입니다. SCL 은 동기화 클럭 조절 통신을 위한 포트입니다.
I2C 통신은 데이터 전송을 위해 하나의 포트 (연결)가 사용되므로, 데이터는 한번에 한 방향
51