spi 통신 예제

먼저 전자 통신에 대한 몇 가지 기본 개념부터 시작하여 SPI의 작동 방식을 자세히 설명합니다. 다음 기사에서는 UART 기반 통신에 대해 설명하고 세 번째 기사에서는 I2C에 대해 설명합니다. 당신은 자신에 대해 생각할 수 있습니다, 자기, 그 단방향 통신에 좋은 소리, 하지만 당신은 어떻게 반대 방향으로 다시 데이터를 보낼 수 있습니까? 상황이 약간 더 복잡해지는 곳은 다음과 같습니다. 보드의 스위치 수가 증가함에 따라 필요한 GPO 수가 크게 증가합니다. 예를 들어, 테스트 계측 시스템과 많은 수의 스위치를 설계할 때 시스템의 채널 수를 늘리는 데 사용됩니다. 4 × 4 크로스 포인트 매트릭스 구성에서 4 개의 ADG1412가 사용됩니다. 이 시스템에는 16개의 GPI가 필요하므로 표준 마이크로 컨트롤러에서 사용 가능한 GPI가 제한됩니다. 도 10은 마이크로컨트롤러의 16개의 GPIOs를 사용하여 4개의 ADG1412s의 연결을 나타낸다. 이 기사에서 SPI에 대한 더 나은 이해를 얻었으면 합니다. 이 시리즈의 2부로 계속 하여 UART 기반 통신에 대해 알아보거나 I2C 프로토콜에 대해 논의하는 3부로 이동합니다. 직렬 주변 장치 인터페이스 또는 SPI는 두 장치 간의 양방향 통신에 사용되는 매우 일반적인 통신 프로토콜입니다. 표준 SPI 버스는 4개의 신호, 마스터 아웃 슬레이브 인(MOSI), 마스터 인 슬레이브 아웃(MISO), 시계(SCK) 및 슬레이브 셀렉트와 슬레이브 셀렉트와 함께 구성됩니다. 비동기 직렬 인터페이스와 달리 SPI는 대칭이 아닙니다.

SPI 버스에는 마스터가 하나있고 하나 이상의 슬레이브가 있습니다. 마스터는 버스의 모든 노예와 대화할 수 있지만 각 슬레이브는 마스터에게만 이야기할 수 있습니다. 버스의 각 슬레이브에는 고유한 슬레이브 선택 신호가 있어야 합니다. 마스터는 슬레이브 선택 신호를 사용하여 이야기할 슬레이브를 선택합니다. SPI에는 클럭 신호도 포함되어 있기 때문에 두 장치 모두 데이터 속도에 동의할 필요가 없습니다. 유일한 요구 사항은 시계가 관련된 모든 장치의 최대 주파수보다 낮다는 것입니다. 호스트에서 주소 주기 및 더미 바이트를 보낸 후 구성 요소는 데이터 바이트를 보내기 시작합니다. 각 클럭 주기는 4IO 라인에 분산된 데이터 니블로 구성되며, 데이터 바이트당 총 2개의 클럭 사이클이 있습니다. 우리의 간단한 읽기 트랜잭션에 필요한 16 클럭 사이클에 이것을 비교 하 고 쿼드 모드는 고속 플래시 메모리 응용 프로그램에 대 한 인기를 얻고 있다 이유를 쉽게 볼 수! SPI 운동기 명령 언어로 이 시퀀스를 만들려면 예제 코드를 사용합니다: 직렬 주변 장치 인터페이스(SPI)는 하나 이상의 주변 장치와 빠르게 통신하기 위해 마이크로 컨트롤러에서 사용하는 동기 식 직렬 데이터 프로토콜입니다. 거리.

또한 두 마이크로 컨트롤러 간의 통신에 사용할 수 있습니다. 이 표준을 통해 설계자는 20~66MHz의 속도로 1비트, 2비트 또는 4비트 통신을 사용할 수 있으므로 설계자는 성능과 비용을 더 절충할 수 있습니다. [24] 그림 13은 예시용이다. ADGS1412 데이터 시트는 SDO 핀의 풀업 저항을 권장합니다. 데이지 체인 모드에 대한 자세한 내용은 ADGS1412 데이터 시트를 참조하십시오.