본문 바로가기

아두이노12

아두이노 메가와 OLED, BLE(HM-10) 연동 오류 해결 전에 아두이노 우노에서 oled와 블루투스 모듈을 한번에 사용하려고 했다가 메모리 문제로 인해 동시 사용을 못하게 된 후 (바로 그 문제를 직면했던 날 게시글) https://waytocse.tistory.com/76 [아두이노] Uno에서 Adafruit_SSD1306와 SoftwareSerial 동시 사용 불가(OLED와 Bluetooth) 아래 상황 처럼 위의 스캐치를 업로드 한 경우 Adafruit_SSD1306와 SoftwareSerial 즉, OLED와 Bluethooth모듈을 동시에 사용하고 싶은 경우 위 스캐치는 업로드 되고 작동 잘 되는데 아래 스케치에서는 Oled waytocse.tistory.com 바~~~로 아두이노 메가를 샀다. (비싸...) 그런데 아두이노 우노에서 돌아가던 코드.. 2021. 12. 12.
[아두이노] Uno에서 Adafruit_SSD1306와 SoftwareSerial 동시 사용 불가(OLED와 Bluetooth) 아래 상황 처럼 위의 스캐치를 업로드 한 경우 Adafruit_SSD1306와 SoftwareSerial 즉, OLED와 Bluethooth모듈을 동시에 사용하고 싶은 경우 위 스캐치는 업로드 되고 작동 잘 되는데 아래 스케치에서는 Oled가 작동이 안된다. 이유는 메모리 때문이다. https://github.com/adafruit/Adafruit_SSD1306/issues/28 incompatibility with SoftwareSerial · Issue #28 · adafruit/Adafruit_SSD1306 As soon as I instantiate a SoftwareSerial object, my OLED display doesn't work anymore. I tried different pi.. 2021. 12. 3.
[아두이노] 안드로이드와 BLE(Bluetooth4) 통신3 - 앱으로 데이터 전송 0. 준비 앞서 아래 글에서 안드로이드 앱에서 아두이노로 블루투스 통신을 통해 값을 전송했었다. https://waytocse.tistory.com/74 [아두이노] 안드로이드와 BLE(Bluetooth4) 통신2 - 회로도/코드 0. 준비 앞서 아래 글을 통해 통신할 안드로이드를 개발하고 https://waytocse.tistory.com/73 [아두이노] 안드로이드와 BLE(Bluetooth4) 통신1 - 안드로이드 개발 0. 준비 안드로이드에서 BLE통신을 구현하. waytocse.tistory.com 이 글에서 이어서 진행한다. 1. 아두이노 블루투스 통신 회로도 앞 글과 아두이노 회로도는 같다. RX를 5번, TX를 4번핀에 연결한다. GND를 연결하고 VCC를 3.3V에 연결한다. 2. 아두이.. 2021. 12. 2.
[아두이노] 안드로이드와 BLE(Bluetooth4) 통신2 - 회로도/코드 0. 준비 앞서 아래 글을 통해 통신할 안드로이드를 개발하고 https://waytocse.tistory.com/73 [아두이노] 안드로이드와 BLE(Bluetooth4) 통신1 - 안드로이드 개발 0. 준비 안드로이드에서 BLE통신을 구현하는 것은 매우 어렵고 복잡하다. 그래서 reference문서를 보거나 서칭해가면서 ble를 직접 앱상에 구현해보려고했는데 너무 어려워서 일단 중단하고 프로 waytocse.tistory.com 그 다음 이 글의 과정을 진행해야한다. 그리고 이 글은 아두이노 우노를 기준으로 작성됐다. 아두이노 메가에서 작동하는 것은 아래 링크의 문제해결3번을 참고하면서 이 글을 따라하면 된다. https://waytocse.tistory.com/77 아두이노 메가와 OLED, BLE(.. 2021. 11. 30.
[아두이노] 안드로이드와 BLE(Bluetooth4) 통신1 - 안드로이드 개발 0. 준비 안드로이드에서 BLE통신을 구현하는 것은 매우 어렵고 복잡하다. 그래서 reference문서를 보거나 서칭해가면서 ble를 직접 앱상에 구현해보려고했는데 너무 어려워서 일단 중단하고 프로젝트 기능 완성에 초점을 맞춰보기 위해 구현된 ble앱을 깃헙에서 다운받아서 필요한 UI만 새로 코딩하여 작동시키는 방식으로 진행했다. 이용한 ble앱은 SimpleBluetoothLeTerminal로 깃헙주소는 다음과 같다. https://github.com/kai-morich/SimpleBluetoothLeTerminal GitHub - kai-morich/SimpleBluetoothLeTerminal: Android terminal app for Bluetooth LE devices using custom.. 2021. 11. 30.
[아두이노] OLED에 온습도 센서값 출력하기 oled에 온습도 값과 토양습도값을 출력하고자 한다. 소스코드는 다음과 같다. #include #include #include #include #include "Timer.h" //pin setting int soil = A0; DHT11 dht11(A2); Timer t; //value initialize float humi=0, temp=0,soilmoisture=0; #define SCREEN_WIDTH 128 // OLED display width, in pixels #define SCREEN_HEIGHT 64 // OLED display height, in pixels Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1); void .. 2021. 11. 15.
[아두이노] OLED 아두이노 우노(Arduino UNO R3)를 기준으로 작성했다. 아두이노 메가를 기준으로 하고싶다면 이 글을 따라하고 아래 게시글의 문제해결 2번을 참고하면 된다. https://waytocse.tistory.com/77 아두이노 메가와 OLED, BLE(HM-10) 연동 오류 해결 전에 아두이노 우노에서 oled와 블루투스 모듈을 한번에 사용하려고 했다가 메모리 문제로 인해 동시 사용을 못하게 된 후 (바로 그 문제를 직면했던 날 게시글) https://waytocse.tistory.com/76 [아두이 waytocse.tistory.com OLED을 통해 원하는 문구나 그림을 표시할 수 있다. 내가 사용한 OLED는 전에 ESP로 OLED동작시켰을 때와 같은 [ELECROW] 128x64 OLED 디.. 2021. 11. 15.
[아두이노] 토양습도센서 SoilMoisture 회로는 딱히 말할 거 없이 5V VCC, GND연결하고 DO이나 AO을 출력핀에 연결한다. 나는 A0를 출력핀으로 설정했다. 코드는 다음과 같다. int soil = A0; void setup() { Serial.begin(9600); } void loop() { int value = analogRead(soil); Serial.print("read sensor value: "); Serial.println(value); //수분이 없으면 1023, 수분이 높을수록 0 delay(1000); } 다음과 같은 환경에서 실행을 해본다. 수분이랑 닿아있지 않음으로 1023이 나타날 것이다. 시니얼모니터로 본 결과는 다음과 같다. 굿. 2021. 11. 15.
[아두이노] DHT11 온습도 센서 + 타이머 기능 활용 아래와 같이 코드를 작성한다. Timer를 사용하고 싶지 않다면 그냥 바로 loop에다가 온습도값 출력을 하면 된다. #include #include "Timer.h" int pin=A2; //출력핀 아날로그2로 설정 DHT11 dht11(pin); Timer t; void setup(){ Serial.begin(9600); t.every(2000, getValue); //2초마다 getValue()함수 호출 } float humi=0, temp=0; void loop(){ t.update(); } void getValue(){ //온습도값 출력 dht11.read(humi, temp); Serial.print("temperature: "); Serial.println(temp); Serial.print.. 2021. 11. 15.
ESP WROOM32로 OLED 제어하기 (128x64 OLED) ESP WROOM32로 OLED를 제어해보고자한다. 내가 사용한 OLED는 아래와 같다. https://www.devicemart.co.kr/goods/view?no=1384209 128x64 OLED 디스플레이 블루 [DO1286496BY] 아두이노 호환 OLED display / 백라이트 없이 작동 / 대각선 화면 크기 : 0.96' / 픽셀 수 : 128 x 64 / 작동 전압 : 3.3 ~ 5V DC / 인터페이스 : I2C www.devicemart.co.kr 1. 라이브러리 설치 먼저 OLED를 제어하기 위해서 필요한 라이브러리를 설치해야한다. 라이브러리를 추가해주기 위해 라이브러리 관리에 들어간다. ssd1306을 검색하고 adafruit에서 만든 것을 선택한다. 대충 최신 버전을 설치해준다.. 2021. 9. 24.
아두이노 12v 워터펌프 모스펫 회로도 연결법과 소스코드 쿨링 팬과 똑같습니다. 왼쪽 상단이 12V 워터 펌프, 그 밑이 모스펫, 맨 밑에는 12V 전원이 연결된 아두이노입니다. 1~4번 부분에 대해 설명하겠습니다. 1: 모스펫에 V+, V- 라고 적혀있는 부분이 있습니다. 그 부분에 연결하려는 모터(워터 펌프)의 + / - 부분에 맞게 연결합니다. 2: 모스펫에 VIN, GND라고 나란히 적혀있는 부분은 12V의 전원과 GND와 연결되어야합니다. 3. SIG, VCC, GND라고 적혀있는 부분입니다. 이 부분에서 VCC와 GND에는 연결이 없어도 됩니다. SIG는 아두이노로부터 신호를 받습니다. 이를 통해 모스펫이 12V 워터 펌프를 제어할 수 있습니다. 아래는 소스코드 입니다. 모터라서 그냥 쿨링팬과 소스코드가 같습니다. int fan = 4; void s.. 2021. 9. 1.
아두이노 12v 쿨링팬 모스펫 회로도 연결법과 소스코드 왼쪽 상단이 12V 쿨링팬, 그 밑이 모스펫, 맨 밑에는 12V 전원이 연결된 아두이노입니다. 1~4번 부분에 대해 설명하겠습니다. 1: 모스펫에 V+, V- 라고 적혀있는 부분이 있습니다. 그 부분에 연결하려는 모터(쿨링팬)의 + / - 부분에 맞게 연결합니다. 2: 모스펫에 VIN, GND라고 나란히 적혀있는 부분은 12V의 전원과 GND와 연결되어야합니다. 3. SIG, VCC, GND라고 적혀있는 부분입니다. 이 부분에서 VCC와 GND에는 연결이 없어도 됩니다. SIG는 아두이노로부터 신호를 받습니다. 이를 통해 모스펫이 12V 쿨링팬을 제어할 수 있습니다. 아래는 소스코드 입니다. int fan = 4; void setup() { pinMode(fan, OUTPUT); } void loop().. 2021. 9. 1.