통신
데이터를 주고받는 것으로 수신과 송신을 통해 진행된다.
통신시 물리적인 통신모듈과 논리적인 통신 프로토콜이 다르다면 통신이 안된다.
즉! 통신간의 장비는 같은 모듈과 프로토콜로 통신을 진행한다
유선통신
Serial 통신
- 직렬 통신으로도 불리며 컴퓨터간 연결된 하나의 선로에서 정보를 주고받는 통신
- UART, spi, i2c ...
- 라인이 한개라 구조적으로 간단하며 양단간 송수신 거리가 멀어도 제한이 적다.
Parallel 통신
- bus, data bus, address bus 등으로 불림
- 여러개의 라인으로 동시에 송시신함으로써 속도가 빠르다
- 거리가 멀어지면 간섭이 많고 여러라인이 필요해 기술&돈 한계
무선통신
Bluetooth 통신
모듈
본체에서 분리된 작은부분으로 유기적 구성을 유지하다 필요시 합류하여 기능을 수행하는 것으로 완전기능을 수행하는 독립된 실체로 본다.
- 통신모듈 : 데이터를 송수신하는 회로, 데이터 패킷의 일부를 만드는 역할도 수행
데이터 패킷
package + bucket 으로 data를 전송시 비트단위로 따로보내는 것이 아닌 block단위로 통신하는 것을 의미
- header, data, tail로 구성
- header : 수신장치 인터넷주소, 순서, 제어정보등
- data : 사용자 데이터 등
- tail : 에러 정보 등
패킷을 사용할 경우 패킷의 고유번호를 알아야하고 이 순서를 양측 동일하게 사용해야 되기에 통신 프로토콜을 사용한다.
통신 프로토콜
통신규약으로 네트워크 통신에서 정해진 규칙을 말한다.
ex) 영어랑 한국말로 서로 통신하면 안된다.
패키지로 통신을 수행하는데 패키지의 사양을 통신 프로토콜이라고 부른다.
- package 에는 데이터, 송수신기 주소, 통신 식별정보, 에러판별정보 등이 포함되어 있다.

데이터 프레임 포맷
통신 펌웨어
- 송수신용 프로그램, 송수신모듈 제어 프로그램
- 사용자 프로그램에서 데이터를 받아 통신 프로토콜에 맞춰 패킷을 구성하고 송신 모듈까지 보낸다.