반응형

Hardware/ESP 75

ESP32 사용중 「avr/interrupt.h: No such file or directory」 에러 발생

ESP32의 경우 #include 로 소프트웨어 시리얼을 사용할 경우 「avr/interrupt.h: No such file or directory」 에러를 내면서 소스코드 업로드가 안되더라. 소프트웨어 시리얼은 ESP32에 사용되지 않는다. 해결 방법으로는 헤더 대신에, HardwareSerial mySerial1(1); 과 같이 하드웨어 시리얼을 설정할 시에, 채널에 따라 핀번호를 새롭게 설정해서 사용하면 문제없이 실행된다. 스펙상으로 ESP-WROOM-32에서는 UART(Universal Asynchrounous serial Receiver and Transmitter) 세 쌍을 이용할 수 있다. 그리고 셋업 부분에는 mySerial1.begin(BAUD,SERIAL_8N1,RX,TX); 과 같이 ..

Hardware/ESP 2023.02.02

ESP32 espressif ESP32-WROOM-32D 로 AX-12A 제어

아두이노로 하던걸 ESP32로 해 봤는데 잘 된다. 앞으로 블루투스 모듈을 일부러 추가할 필요가 없어진 거 같다. 실제 동작하는 모습은 아래와 같다. AX-12A는 12V의 전압이 필요한데, ESP32는 5V or 3.3V 가 필요한 관계로, 단순히 계산을 한다고 해도 12V - 5V = 7V 가 남는다. 전압강하를 레귤레이터를 쓰려고 하다가 7V 남는 전압을 다 열로 날려버려야 하기 때문에 애플리케이션 만들기도 귀찮고 안전상의 문제도 있을 거 같아서, 아마존에서 하나에 3천원 짜리 강압 DC/DC 컨버터를 구매해서 사용하고 있다. 이게 출력이 5A까지 나오니까, 모터를 많이 쓰는 경우에는 레귤레이터 쓰는 거 보단 훨씬 좋고, 냉각핀도 달려있어서 괜찮은거 같다. 앞으로는 기능을 확장하여 다양하게 활용을 ..

Hardware/ESP 2023.01.31

ESP32-S3-DevKitC-1 보드 매니저로 패키지 추가시의 주의점

Arduino IDE 1.8.2 버전을 쓰고 있었는데 ESP32 보드에 대한 패키지 추가 시에 1.0.6 버전 이상은 검색이 되질 않았다. 이거 뭔가 이상하다 싶어서 Arduino IDE 2.X 를 주로 사용했었는데, 1.8.2 버전의 문제가 아니라 보드 매니저 URL 설정의 문제였다. ESP32-DevKitC-32D 쓸 때 사용한 URL이 검색에 방해가 되는 것이었다. https://dl.espressif.com/dl/package_esp32_index.json

Hardware/ESP 2023.01.26

ESP32-S3-DevKitC-1 (ESP32-S3) 시리얼 모니터 출력에 대해

ESP32-S3를 사용 중인데, 시리얼 모니터 출력 결과가 계속 나오질 않아서 왜 그런지 고민 중이었다. 현재 ① 으로 소스코드를 업로드하는데, 업로드도 잘 되고, LED 제어도 잘 되는데 시리얼 모니터 출력만 안 나오더라. 혹시나 싶어서 아래와 같이 ① 로 설정해서 소스코드를 업로드 한 다음, 아래와 같이 ② 로 설정해서 시리얼 모니터를 출력해 보니까 결과가 잘 나왔다. 맥으로 프로그래밍을 해서 그런가 싶기도 하고, 드라이버 설정이 안 되어있나 싶기도 하고, 뭐가 문제인지 확인 중이다. 위의 문제가 무엇인지 알아내서 수정을 했다. 자세한 내용은 아래의 글을 참고하시길 바란다. https://fermium.tistory.com/1541 맥으로 ESP32-S3-DevKitC-1 개발 시의 주의점 ESP32..

Hardware/ESP 2023.01.24

Time of Flight (ToF) 센서 (VL53L0X)

당장에 실험과목의 커리큘럼을 새로 짜야 되는데, 모빌리티 관계의 수업이 어떤 게 좋을까 생각을 하다가, 라이더 쪽으로 공부할 수 있게 학습 자료를 준비해야겠다 싶어서 센서를 사모으고 있다. 이번에 아마존에서 구입한 VL53L0X 센서인데 두 개에 999엔이라 저렴하다. I2C 통신 지원이라 위와같이 회로를 만들었다. ESP32-DevKitC-32D에서의 I2C 핀 설정은 아래와 같다. 21 번핀 = SDA 22 번핀 = SCL 참고로 EPS에 사용하기 위한 라이브러리는 아래와 같이 Pololu 버전으로 인스톨했다. 인스톨을 해 주고 나서 아래와 같이 VL53L0X -> Continuous 샘플 그로그램을 실행시켰다. 여기서 주의해야 할 점은 보 레이트가 아두이노 기준으로 되어있기 때문에 ESP32 통신 ..

Hardware/ESP 2023.01.24

ESP32-S3-DevKitC-1 (ESP32-S3) 로 심박센서 사용하기

이전의 블로그 글에서 심박 측정 센서에 대한 이야기를 했었다. https://fermium.tistory.com/1400 MAX30102 (심박, 혈중산소 포화도 측정 센서 모듈) 아마존에서 산 센서가 인터넷 정보들을 참고로 배선해 보아도 LED에서 빛도 나지 않고 센서가 Arduino (아두이노)에서 인식이 되지 않았다. 왜 그런가 싶어서 자료를 찾아봤더니 I2C 통신을 할 때, fermium.tistory.com 일반적인 ESP32 모듈로는 라이브러리의 I2C 기본 설정 (21번핀:SDA, 22번핀:SCL) 대로 배선을 해 주면 되는데, ESP32-S3 은 I2C 전용 핀의 설정이 되어 있지 않다. 그렇다고 사용 못하는 것은 아니고, 자유롭게 SDA, SCL 설정을 할 수 있다고 설명이 되어있다. 어..

Hardware/ESP 2023.01.24

Espressif ESP32-S3-DevKitC-1 보드 구입

이 보드는 USB-C로 프로그래밍되는 보드로 32D 보드랑은 다른 신선한 느낌이 드네. 풀칼러 LED도 달려있고, 여러모로 실험적인 프로그래밍도 해 볼 수 있겠다. 이 보드를 600엔도 안 되는 가격에 팔다니, 아래와 같이 알리 익스프레스의 물건 가격은 상상을 초월한다. 보드를 5개 정도 사 보았다. 프로그래밍을 하려면 Boards manager에서 esp32 보드 버전을 업그레이드해야 되는데, 아두이노 1.8 버전에서는 2.0.X 버전이 검색이 안된다. 그래서 아두이노 2.0 버전에서 프로그래밍을 해야 되는 거 같다. Additional boards manager URLs: 에 아래의 URL을 추가해 줬다. https://raw.githubusercontent.com/espressif/arduino-e..

Hardware/ESP 2022.12.16

무선조종 자동차를 마이크로 컨트롤러로 조정하기

아래의 링크에 나온 7월에 뽑은 무선조종 자동차를 뭔가 개조하면 재미나게 가지고 놀 수 있지 않을까 싶었다. https://fermium.tistory.com/1414 주말의 크레인 게임 (종합) 몇 번 크레인 게임을 하러 갔었는데 시간 관계상 한꺼번에 올려본다. 아들내미 준다는 핑계로 이것저것 도전해서 뽑아 보는 거 같다. 이날은 별로 많이 뽑지는 못했는데 복주머니에 당첨되었다. fermium.tistory.com 어릴 적에 되게 가지고 싶었던 것인데, 지금은 이렇게나 손쉽게 손에 넣을 수 있는 게 세월이 야속하다. 지금 원하던 것을 손에 넣었다 하더라도, 그때 그 당시의 나 자신으로는 두 번 다시 되돌아갈 수 없다. 목표는 저 조종기를 개조해 보는 것이다. 열어보니까 너무 심플하다. 똑딱이 버튼 4개..

Hardware/ESP 2022.11.23

ESP32로 SG90 모터 제어하기

ESP32로 SG90 서보모터를 제어하기 위해서 [ESP32Servo] 라이브러리를 이용하였다. 이 라이브러리를 이용하게 되면 아무런 문제 없이 모터 제어를 할 수 있다. 회로도에서 3.3V - 5V 로직 레벨 컨버터를 사용하였으나 일단 사용을 하지 않아도 모터 정도는 제어가 가능할 것으로 여겨진다. 그러나 Sweep 소스를 그대로 사용하게 되면 0~180이 아니라 45~135 정도로 움직이는 것을 알 수 있다. 따라서 myservo.attach(servoPin, 500, 2500); (1000~2000이 기본 설정) 로 설정을 변경해 주니 생각했던 것과 같은 동작 범위로 제어 가능하였다. 이런 식으로 제어 가능하다. ESP32는 3.3v 전압으로 동작하니, 5V 기기를 이용할 때는 3.3V - 5V 로..

Hardware/ESP 2022.11.21
반응형