Delay 최적화 시키기


main.c

Makefile

smart.h




직렬 병렬 통신


직렬 통신(Serial Signal) - 선이 적고, 시간증가, 비용 작음.

USB는 고속 시리얼,

UART(Universal Synchronous and Asynchronous serial Receiver and Transmitter

- 일반적인 비동기 송.수신 장치 저속 시리얼 Tx(본인 입장에서 가는선), 

   Rx(본인 입장에서 오는선),GND(그라운드선)로 구성되어 있다.

  UDRn에서 n은 0이나 1 number를 뜻함. 

대표적으로 USB가 직렬통신이다. 그리고

UART(Universal Synchronous and Asynchronous serial Receiver and Transmitter)이다.

UART는 일반적인 동기 비동기 수신 송신 장치의 양자이다. 보통 UART라고 부르지만 우리가 사용하는 

ATMega 제조사에서는 USART라고 한다. 수신과 송신을 하는 장치의 약자로써 UART는 

쓰기와 읽기 두 가지의 선이 존재한다고 본다. 

Data sheet에서 보면 Dual Programmable Serial USARTs라고 2개의 USART가 있다.

(USART가 2개 있는 것은 읽기 쓰기의 선이 2개가 아닌 실제로 2개가 존재한다.)

실제 주소값을 알아보면 같음을 알 수 있다. 

다만 ATMega가 읽기명령을 하게 되면 읽기 bit를 쓰기 명령을 하게 되면 쓰기 bit로 나타나며

이것은 프로그래머가 신경쓰지 않아도 자체적인 CPU에서 알아서 처리한다.

병렬 통신 - 버스통신으로 보면 되고, 많이 보낼 수 있지만 비용이 증가한다.

일반적으로 CPU내에 BUS로 각각의 장치들이 연결되어 있는데 이것을 병렬통신이라고 한다.