[STM32] 17. I2C 통신 함수 종류
·
🧊 STM32
📌 1. 주요 I2C HAL 함수STM32Cube HAL 기능을 기반으로 차단 모드, 인터럽트 모드 또는 DMA 모드의 3가지 모드로 I2C 데이터 전송을 수행할 수 있다.⚙️ 1. Blocking Mode통신은 폴링 모드로 수행되며, 모든 데이터 처리 상태는 전송 완료 후 동일한 기능으로 반환된다.HAL_I2C_Master_Transmit()HAL_I2C_Master_Receive()HAL_I2C_Slave_Transmit()HAL_I2C_Slave_Receive()HAL_I2C_Mem_Write()HAL_I2C_Mem_Read()⚙️ 2. Non-Blocking Mode통신은 Interrupts 또는 DMA를 사용하여 수행되며, 이러한 함수는 전송 시작 상태를 반환한다. 인터럽트 모드를 사용할 때는..
[C/C++ Tip] 6. UNION 공용체와 STRUCT 구조체로 패킷 만들기
·
🔷 C언어 30강
Union 은 C 언어에서 서로 다른 데이터 타입을 하나의 메모리 공간에서 저장할 수 있게 하는 키워드이다. 이는 구조체(struct)와 비슷하지만, Union  내의 모든 멤버가 같은 메모리 주소를 공유한다는 점에서 차이가 있다. 결과적으로, 한 시점에 하나의 멤버만 저장하고 사용할 수 있으며, 가장 큰 크기의 멤버에 의해 union의 전체 크기가 결정된다. 이를 통해 메모리를 효율적으로 사용할 수 있지만, 멤버 간에 값의 오버라이트가 발생할 수 있다는 점을 유의해야 한다.⭐1. Union 사용법#include union Data { int i; float f; char str[20];};int main() { union Data data; data.i = 10; pri..
아두이노, 안드로이드를 블루투스로 연결해서 센서값 읽어오기!(2)
·
📟 Embeded SW/Arduino
안녕하세요! 아두이노, 안드로이드 블루투스 실습 두번 째 시간입니다. 오늘은 안드로이드 스튜디오로 센서 값을 받아오는 어플을 만들어 보도록 하겠습니다. 아마 많은 분들께서 Code-jun님의 블루투스 예제를 보셨을거라고 생각합니다. 실제로도 라이브러리가 상당히 잘 만들어져 있어 사용하는데 어려움이 없다고 생각합니다. 저는 이번에 Code-jun님이 올리신 라이브러리 예제를 통해 블루투스 무선통신을 하도록 하겠습니다. https://blog.codejun.space/13 아두이노, 안드로이드 블루투스 통신하기 아두이노로 미세먼지 측정기를 만들던 도중 안드로이드와 연동하여 데이터를 주고 받고 싶어 제작하던 중 유용한 정보가 될 것 같아 포스팅 합니다. 이번 개발환경은 DESKTOP과 TEST DEVICE를 ..
아두이노, 안드로이드를 블루투스로 연결해서 센서값 읽어오기!(1)
·
📟 Embeded SW/Arduino
안녕하세요. 아두이노에 관해 3번 째 글입니다. 이번에는 블루투스와 아두이노를 연결해서 센서값을 읽어 활용하는 예제입니다. 저는 HT21UD 온습도 센서를 사용해 온도('C), 습도(%)를 아두아노에서 읽어와 블루투스를 통해 안드로이드에 보내볼 생각입니다. 자 우선, HT21UD에 대해 설명해보자면, 위에 말처럼 온도와 습도를 읽어오는 센서입니다. 1. HT21UD 저는 HT21UD의 라이브러리의 예제를 약간 제 식대로 바꾸도록 하겠습니다. 라이브러리는 아래에 남겨 두도록 하겠습니다. https://github.com/sparkfun/SparkFun_HTU21D_Breakout_Arduino_Library/ sparkfun/SparkFun_HTU21D_Breakout_Arduino_Library HTU2..
18진수
'통신' 태그의 글 목록