본문 바로가기
반응형

아두이노8

(Arduino) ESP32 파티션을 나눠서 프로그램 공간 확보 (1.9MB with OTA) ESP32 설정 기본 값으로 다음과 같습니다. 플래시가 4MB인 제품을 많이 사용하는데, 파티션 설정 때문에 프로그램 영역이 1.2MB 뿐입니다. 그 이유는 SPIFFS 공간이 1.5MB나 되기 때문입니다. 프로그램 공간 1.2MB + OTA 공간 1.2MB + SPIFFS 공간 1.5MB = 4MB 이것저것 라이브러리를 사용하다 보면 컴파일된 바이너리가 1.2MB를 초과하는 경우가 있어서 파티션을 재설정 해야할 필요가 있습니다. SPIFFS 영역이 많이 필요하지 않다면 바꾸는 것이 좋겠지요. 여기서 Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS)로 설정하면 프로그램 영역은 기본값 보다 700KB를 더 사용할 수 있습니다. (SPIFFS는 환경설정 등 텍스트 파일로.. 2022. 8. 1.
(Arduino) 태양광, 수위 경보기 소스코드 업데이트 이력: 2021.02.28 전체 코드 첨부 에어컨을 설치할 때 근처에 하수구가 없는 경우 따로 물통을 설치해서 물을 모아놨다가 한 번에 버리기도 합니다. 아파트는 벽 외부로 호스를 설치하면 물줄기 때문에 보기 흉하고 민원 발생... 물통을 제때 확인 하지 못해서 바닥이 물바다 된적이 있어 뒤늦게 제작한 아두이노 수위 경보기... 외부 전원을 배선하기 힘들어 태양광 전력을 사용했습니다. 자재 태양광 패널: 5V 출력 보조 배터리: 5V 입력 아두이노: NANO, 확장 실드 부저: 패시브 부저 또는 액티브 부저 수위센서: 마그넷 스위치형 또는 비접촉 수위 센서 소스 /* Water Level Alarm simulz.kr 제조일: 2018년 5월 29일 20180529 Curie -> NANO DI2.. 2018. 6. 22.
(Arduino) OLED SPI 4wire를 HW로 연결 사용하기 OLED뿐만 아니라 SPI를 사용하는 하드웨어도 같은 방법 ※ 참고 아두이노 하드웨어별 핀맵: https://www.arduino.cc/en/Reference/SPI 연결도 예시 Hardware: Arduino UNO(or Genuino 101) & WaveShare 1.3" OLED(B) 4wire SPI 2가지 연결 방법이 있는데 SW 연결 방식은 HW보다 속도가 느립니다. I2C보다 빠릅니다. HW 연결 방식은 속도가 빠릅니다. OLED 화면 갱신 속도가 매우 빠릅니다. SW 방식 U8G2_SH1106_128X64_NONAME_1_4W_SW_SPI u8g2(U8G2_R2, 13, 11, 10, 12); - CLK, DIN, CS, DC 핀을 모두 사용자 정의로 할당합니다. HW 방식 U8G2_SH1.. 2018. 5. 25.
(Arduino) 초음파 센서로 후방 경보기 제작 제작 의도 자동차 후방에 근접하는 물체를 감지하여 경보 함. 후진 또는 급제동 주의용 진행 상태 테스트 완료. 설치 전. 센서 초음파 거리센서, 기울기 센서, 밝기 센서 기능 OLED 표시, LED 점멸, 릴레이 On/Off, 블루투스 통신 동작 휴대폰의 블루투스로 연결하고 명령어를 송신하여 동작 설정을 할 수 있다. - 센서 입력값 수신 - LED 밝기 설정, 깜빡임 주파수 설정 - 릴레이 동작 거리 설정 - 사용/미사용: OLED, LED, 릴레이 등 출력 설정. 기울기 센서 적용 설정 - 기타 등등등 근접할 수록 LED 점멸 주기가 짧아진다. 광센서로 주변 밝기를 감지하여 LED 밝기를 자동 조정한다. (눈부심 방지) 설정 거리 이내 근접시 릴레이 출력으로 외부 기기를 제어할 수 있다. 기울기 센서.. 2016. 1. 17.
(Arduino) 타이머를 균일하게 분할하기 학습 목표: 타이머를 균일하게 분할하기 아두이노로 여러 동작을 동시에 표현할 때에는 delay를 쓰지 않는다. 예)동시에 LED깜빡이고 LCD 표현하고 키 입력받고 등등 delay를 사용하면 그 만큼 다음 동작이 지연된다. 예)LED 켜고 delay 후 LED 끄고 LCD 표현하고 delay 후 입력받고 등등 MsTimer2.h 라이브러리로 ms 단위로 분할할 수 있지만 이미 디지털 포트를 다른 용도로 사용하고 있다면 동작이 되지 않는다. 라이브러리 없이 타이머 분할로 모든 동작을 일정시간마다 실행하려면 다음과 같이 코딩한다. 잘못된 코드 예1) 참고만 하세요. unsigned long ms = 0; unsigned long prev_ms; void loop(void) { ms = millis(); if.. 2015. 9. 13.
(Arduino) 가스 경보기&타이머 #2 아두이노로 가스 경보기를 만들어 봅시다. 타이머 기능을 추가했습니다. 용도: 가스렌지 사용할 때 타이머 카운트 후 알람, 가스 누출시 알람 사용된 부품 아두이노 NANO V3 가스 센서 모듈: http://www.ogamtech.com/ 부저 볼륨저항 Waveshare OLED: http://www.wvshare.com/product/1.3inch-OLED-B.htm Waveshare DHT11: http://www.wvshare.com/product/Temperature-Humidity-Sensor.htm 볼륨저항은 경보 상한을 설정하는 용도이다. 테스트용으로만 사용했으며 기판 납땜시 제외 했다. 버튼으로 설정함. 테스트할 때는 라이터를 사용한다. 살짝 누르면 가스만 나온다. 소스코드 /* * 제목: .. 2015. 9. 12.
(Arduino) 휴대용 자석 극성 검사기 자석의 N, S극을 확인하는 방법 리니어 홀 제네레이터는 자석의 가우스 값을 아날로그로 출력해준다. 단순 극 확인은 홀스위치를 사용해도 된다. 홀 IC 종류 WSH135-XPAN2 http://www.icbanq.com/P000819674/S 5V 입력시 1000 Gauss 측정 가능 A1324LUA-T http://www.icbanq.com/P005535808/S 5V 입력시 500 Gauss 측정 가능 mV/G 값이 높을 수록 정밀함 /* Magnet Polar Detect Simulz k10206@naver.com http://Simulz.kr */ int LED_R = 10; int LED_G = 11; int Sensor = A0; int SensorValue = 0; int NPole = 0;.. 2015. 9. 5.
(Arduino) Atmega2560, UTFT & UTOUCH 첫 연습 아두이노 메가 2560 구입하자마자 1주일동안 갖고논거 예제를 수정해서 여러 기능을 테스트 중 처음 시작 시 암호 입력 화면 버튼 배열을 다시하면서 버튼 그리기, 터치 처리, 글자 입력하는 연습 암호 입력 후 Enter 누르면 다음 화면으로 이동 둥근 네모 그리는 법 myGLCD.setColor(0, 0, 255); // 색상 설정, RGB값 0~255 myGLCD.fillRoundRect (X좌상, Y좌상, X우하, Y우하); // 색칠된 둥근 네모 그리기, 픽셀값 myGLCD.setColor(255, 255, 255); // 색상 설정 myGLCD.drawRoundRect (X좌상, Y좌상, X우하, Y우하); // 둥근 네모 테두리 그리기 myGLCD.printNumI(int 숫자, X좌표, Y좌표.. 2015. 2. 22.
반응형