- 플로팅 현상
- 스위치를 누르지않아도 LED가 껏다가 켜지는 현상
- 제거하기위해서는 풀업저항 또는 풀다운저항을 사용한다.
- 풀다운저항이란
- 저항의 한쪽부분이 그라운드로 연결
- 스위치를 누르기 전에는 항상 LOW 신호를 입력받는다.
- 저항을 써서 평상시의 값을 0v로 만들어주는 것
- 풀업저항
- 기본신호가 High신호
- 저항이 그라운드가 아닌 5V에 연결되어있는 상태
데이터 전송방식
- 동기식
- 데이터를 전송할때 한 비트씩 데이터를 전송함으로 물리적인 클럭선이 필요하다.
- 비동기식
- 물리적인 클럭선이 없는대신 Baud Rate라는 초당전송비트라는 개념이 존재한다. 클럭대신 시간을 기준 데이터전송
- 통신하는 두 장치간에 Baud Rate가 일치해야한다.
UART 통신으로 데이터를 주고 받아보자
- 직렬 통신 방식
- 하드웨어 내부가 어떻게 동작하는지 디버깅하는 용도로 주로 사용
- 주로 비동기 통신
- 클럭라인이 필요없어서 단순히 선 두가닥(전송, 수신)으로 통신한다.
- 폴링방식으로 데이터 송수신// 폴링이란 while문과 if문으로 상태변화를 검사하는것,
cpu 클럭을 이용해서 데이터가 수신됬는지 확인하는것
- 인터럽트방식
- DMA방식을 통해 ADC 결과값을 저장해보자
- DMA방식
- DMA컨트롤러가 ADC결과를 자동으로 우리가 원하는 변수에 저장
- DAC
- 오픈드레인 방식
- I2C통신을 통해서 EEPROM에 데이터 읽고 쓰기
- SPI 통신
- 음성코덱장치와 SPI통신을 해보자
- SDIO 통신
- FAT File System
- 이더넷(ETH)을 이용해서 pc와 stm간의 UDP통신을 통해 데이터를 주고 받아보자(소켓 통신프로그램을 활용)