[STM32] 2024-01-09-STM32 7일차 _SPI
개념정리
SPI
주로 연산 능력이 없는 장치와 통신할떄 사용
동기식 직렬통신에 가장 기본적인 형태
SPI 통신은 기본 4개의 선을 통신
통신속도가 더빠르고 규격이 간단하다
4개의 선
- SCLK - 클럭 전송라인
- MOSI - master out slave in (슬레이브 경우 = SDI, DI)
- MOSO - master in slave out (슬레이브 경우 = SDO, DO)
- CS - Chip Select (Active Low)
데이터 시트를 보면 SPI 대신 시리얼 인터페이스 또는 데이터 인터페이스 라고 표현하기도함
I2C와 비교
I2C는 장치의 주소를 먼저 보내고 응답을 받는 방식 SPI 는 해당 절차없이 CS 핀만 Low 떨어뜨린다
전이중 통신이 가능하다 => 송수신이 동시에 할 수 있다.
IDLE 상태 통신을 안하고 있는 상태
클럭의 위성 . 클럭의 데이터 읽을떄 어느시점에서 읽을지
CPOL = IDLE 상태 CPHA- 몇번쨰 엣지에서 읽을지 선택
개발 환경 세팅
Mode - 통신 방식 Hardware NSS Signal - ChipSelect 방식 설정 Data size - 전송 방식 First Bit - 높은비트 먼저 보냈지 늦은 비트 보낼지 선택 Prscalrer - 보내는 속도
CPOL - SPI 슬레이브 설정 참고해서 설정 CPOA - SPI 슬레이브 설정 참고해서 설정
세부설정
DMA 설정
소스코드
출처
- 참고 영상강의 자료 https://www.youtube.com/watch?v=_7Ll95FITn4&list=PLUaCOzp6U-RqMo-QEJQOkVOl1Us8BNgXk&index=4&ab_channel=ChrisWonyeobPark
댓글남기기