카테고리
산업계측제어기술사

i2c 세부 사항

I2C의 **중재(Arbitration)**는 여러 개의 마스터가 동시에 대화를 시작하려고 할 때, **”교통정리”**를 하는 아주 똑똑한 규칙입니다. 앞서 배운 **오픈 드레인(Open-Drain)**과 **와이어드 AND(Wired-AND)**의 특징을 생각하면 아주 쉽게 이해할 수 있습니다. 핵심은 **”0(Low)을 보낸 사람이 1(High)을 보낸 사람을 이긴다”**는 것입니다. 1. 중재의 핵심 원리: “말하면서 듣기” I2C 마스터들은 데이터를 보낼 때 그냥 던지기만 하는 게 아니라, **내가 보낸 […]

카테고리
생활코딩

sensehat 온도 + LED matrix(2)

제한된 화면에 온도, 습도를 어떻게 표시할까 고민하다, 디바이스를 2개를 만들로 했다. 사용자가 디바이스 개수를 제한 없이 만들 수 있는 점이 좋다. 2개를 만들어 온도로 한 개, 습도로 한 개를 할당 했다. 위 그림에서 사용자가 rs-tmpre1를 읽어(read) module이 저장한 HTS221 온도 관련 레지스터 값을 얻는다. 사용자가 받은 값으로 온도를 계산한 후 LED Matrix를 빨강으로 설정하고, 커널로 […]

카테고리
생활코딩

sensehat 온도 + LED matrix(1)

온도를 LED Matrix에 표시하기 나름 쓸만한 디바이스를 만들기 위해 온도계를 구상해 봤다. 지마켓에서 온도, 습도, 시각을 측정하는 디바이스를 5,400원에 구매할 수 있다. 라즈베리 파이 + sensehat = 120,000원 정도 하려나? 약 20배 비싸지만 인터넷에 연결되어 싸다고 세뇌시키고 있다. ^^! 그런데, sensehat에 있는 hts221이 보드에 붙어 있다. 실내 온도를 측정하지 않고 보드 온도를 측정 하고 있다. […]

카테고리
생활코딩

sensehat i2c led2472g(2)

pixel 제어하기 8 * 8 LED matrix 색, 위치를 개별 제어하려면 픽셀 주소, 색을 알아야 한다. 가로 8, 세로 8, 1 점 당 rgb 3개 = 192개 주소가 rgb 값을 갖는다. 여러 삽질과 인터넷 검색으로 아래 정보를 확인 했다. 개별 소자를 다음과 같이 제어할 수 있다. 각 점별 최대 0x63을 입력할 수 있다. 0x63을 넘어가면 […]

카테고리
생활코딩

sensehat i2c led2472g

I2C에 연결된 LED Matrix 밝기 제어 sensehat 모듈에 LED matrix가 i2c로 설치, 연결되어 있다. LED2472G가 각 연결된 LED를 제어하는데, AVR이 i2c로 라즈베리 파이와 LED2472G 를 중계한다. LED를 제어한다고 LED2472G datasheet를 찾으면 별 도움이 안된다. AVR로 led를 어떻게 제어하는지 잘 공개되지 않은 듯 하다. 아무리 찾아도 c로 작성한 코드를 찾을 수 없다. i2c 0x46에 0~191까지 밝기를 […]