이전 포스팅에 이어 CAN, SPI와 I2C를 비교해보자. FeatureCANSPII2CCommunication TypeMulti-Master, Multi-Slave, BroadcastSingle Master-Multi Slave (typically)Multi-Master, Multi-Slaved, AddressedPhysical WiringTwo wires (CAN High, CAN Low)Four wires (MOSI, MISO, SCLK, SS)Two wires (SDA, SCL)SpeedUp to 1 Mbps (Standard CAN)UP to several Mbps (usually 10+ Mbps)Up to 3.4 Mbps (High-Speed mode)Data IntegrityHigh (wit..
마이크로 컨트롤러와 주변 장치 (peripheral devices) 간의 연결 및 통신을 위해 널리 사용되는 통신 프로토콜인 CAN (Controller Area Network), SPI (Serial Peripheral Interface) 와 I2C (Inter-Integrated Circuit) 에 대해 알아보자.CAN (Controller Area Network): CAN 은 자동차, 산업 및 의료용 애플리케이션에 여러 장치를 연겨랗기 위해 자주 사용되는 강력한 저속 통신 프로토콜이다. 특히 열악한 환경에서의 신뢰성으로 잘 알려져 있다.FeaturesMulti-Master Capability: bus가 여유가 있을 때 네트워크의 모든 디바이스가 메시지를 보낼 수 있다.Broadcast Communi..
이전 포스팅에 이어 SPI 에 좀 더 알아보자. SPI_receive (uint8_t received_data = 0xAB; ) 는 앞선 예제에서 데모용으로 사용된 placeholder 다. 실제 SPI_receive 구현에서 수신된 데이터는 고정된 값이 아니며 이러한 방식으로 하드코딩되지 않는다. 대신 SPI_receive 는 SPI 데이터 레지스터 또는 SPI 전송이 발생할 때 자동으로 채워지는 하드웨어 버퍼에서 읽는다. 실제 구현에서 일반적으로 작동하는 방식은 아래와 같다. SPI Registers or BUffers: SPI 마스터가 SPI_send 를 통해 데이터를 전송하면 클록 신호가 MOSI 라인을 통해 데이터를 전송하고 동시에 MISO 라인에서 들어오는 데이터를 전송한다. 슬레이브로부터 도..
- Total
- Today
- Yesterday
- 소켓 프로그래밍
- 티스토리챌린지
- 투 포인터
- 리트코드
- java
- 오블완
- 파이썬
- defaultdict
- join
- leetcode
- 머신 러닝
- 이코노미스트 에스프레소
- The Economist Espresso
- Android
- tf-idf
- 이코노미스트
- 안드로이드
- Hash Map
- min heap
- socket programming
- The Economist
- 딕셔너리
- Python
- machine learning
- Computer Graphics
- DICTIONARY
- C++
- ml
- vertex shader
- I2C
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |