SPI Mode 4종.


SPI master 와 SPI Slave 의 모드가 동일해야 정상 SPI 통신 가능함. 

( -동시에 SPI 클럭도 칩마다 최고 속도가 다르며 최고속도 이하에서만 정상통신 가능)


SPI 통신 규격의 CPOL(0, 1) , CPHA(0, 1) 상태에 따라 4종의 SPI mode 가 있다. 


SPI mode 0 : CPOL = 0 , CPHA = 0

SPI mode 1 : CPOL = 0 , CPHA = 1

SPI mode 2 : CPOL = 1 , CPHA = 0

SPI mode 3 : CPOL = 1 , CPHA = 1



CPOL 의미.

SPI SCK 의 구분이다. 

CPOL = 0 : SPI SCK 의 아이들 상태 에서의  SCK 상태값 0 

- 즉 SPI 통신 개시되는 초기  SCK 값은 0에 시작하여 1->0->1... 식으로 클럭 발생.

CPOL = 1 : SPI SCK 의 아이들 상태 에서의  SCK 상태값 1

- 즉 SPI 통신 개시되는 초기 SCK 값은 1에서 시작하여 0->1->0... 식으로 클럭 발생.


참고 : STM32 의 데이터 시트, STM3CubeMX 등에서는 CPOL=0 을 Low, CPOL = 1 을 High 라고 표현함.  


CPHA 의미. 

CPHA = 0 : SPI SCK 의 첫에지에서 데이터(SPI MOSI, MISO) 래치 이뤄지는것. 

CPHA = 1 : SPI SCK 의 2번째 에지부터 데이터(SPI MOSI, MISO) 래치 이뤄지는것.


참고 : STM32 의 데이터 시트, STM3CubeMX 등에서는 CPHA=0 을 1Edge, CPOL = 1 을 2Edge 라고 표현함.  







첫등록 : 2019년 2월 23일

최종수정 : 2019년 10월 25일


본 글 단축주소 : https://igotit.tistory.com/2088





Posted by 리치굿맨
TAG

댓글을 달아 주세요