ESP 11

DFPlayer Mini -5

생각보다 오랫동안 포스팅이 이어지고 있다..데이터시트가 거기서 거기인지라 내가 기본적인 지식이 부족인가 생각을 했다.그러면서 현존하는 라이브러리를 다운하기로 했고, 아두이노 IDE에서 install했다.그리고 라이브러리에서 어떻게 해당부분이 처리되나 보려고 했는데..doc? 문서가 있네? 혹시 나랑 같은건가? 하고 봤다. 조금 달라보였지만 들어가보았다.  하하하,, 아주 허탈하구만,,이제야 데이터에 0x02, 0x01과 같이 리턴해주는 이유를 알았다.내가 현재 SD card를 쓰니 data highByte는 0x02가 뜨는 것이였고, 정지상태거나 시작할때 0x02, 0x01로 lowByte를 나타내는 것이였다.. 아니 왜 이전 데이터 시트는 이런걸 알려주지 않았지,, 이제 이것을 알았으니 나는 이것을 토..

ESP/DFPlayer mini 2025.02.17

DFPlayer Mini -4

먼저 라이브러리를 설명하기전에 각 명령어들이 이행하는 것을 알아야한다.먼저 응답을 주지 않는 명령어들이다.CMDFunction DeseriptionParameters(16 bit)Description0x01Next 다음 곡 재생0x02Previous 이전 곡 재생0x03Specify tracking(NUM)0-2999특정 트랙 재생0x04Increase volume 볼륨 증가0x05Decrease volume 볼륨 감소0x06Specify volume0-30볼륨 크기 설정0x07Specify EQ(0/1/2/3/4/5) Normal/Pop/Rock/Jazz/Classic/Base이퀄라이저 설정0x08Specify playback mode(0/1/2/3)Repeat/folder repeat/single r..

ESP/DFPlayer mini 2025.02.16

DFPlayer Mini -3

이번 ESP32C3 super mini로 해볼 건 저번 포스팅에 이어 DFPlayer mini를 다루어 볼건데저번 포스팅은 Arduino uno로 제어해서 전압분배를 해주었어야 했다.이번엔 같은 3.3V시스템인 ESP32C3 super mini로 제어해보겠다. 이번껀 조금 애먹었다.코드는 아래 깃헙에 올려두겠다https://github.com/PCY00/arduino/blob/main/project/stm32/%EC%9E%A1%EB%8B%A4%ED%95%9C%EC%9D%BC%EC%83%81/mp3%EB%A5%BC%EB%A7%8C%EB%93%A4%EC%9E%90/Test2_withESP/Test2.ino arduino/project/stm32/잡다한일상/mp3를만들자/Test2_withESP/Test2.i..

ESP/DFPlayer mini 2025.02.15

ESP32C3 Super Mini / ST7796S TFT LCD -5

이것저것 알아보다가 결국은 LCD에 표시되는 부분은 1~2초 정도 걸려도 SD카드를 활용하는 방법으로 했다. 큰 이유로는1. 내가 구현하고자하는 것이 디지털 액자이기 때문에 굳이 사진이 빠르게 나오지 않아도 된다.그렇다고 너무 늦게 나와도 안되는데 1~2초 정도면 충분하다고 생각된다. 2. 적은 공간의 Flash를 가진 보드이다 보니 여러개의 사진을 저장하는데 어려움이 있다.따라서 외부 저장공간인 SD카드를 사용하는게 좋다고 생각했다. 이러한 이유로 SD카드를 활용하기로 했다. 그럼 여기서 문제가 발생한다. SD카드에 많은 양의 사진을 저장할 경우 그것들은 어떤 방식으로 선택할 것인가? 위 방법에 대해서는첫째, 가변 저항을 활용하여 얻는 값에 따라 범위를 설정하여 값이 범위 안에 오면 해당 사진을 띄울까..

ESP/ST7796S_LCD 2025.01.22

ESP32C3 Super Mini / ST7796S TFT LCD -4

오랜만에 포스팅한다.일단 TFT_eSPI라이브러리에 굳이 내가 함수로 픽셀을 읽지 않아도 함수로 야무지게 이미지를 출력해주는 함수가 있었다.psuhImage()라는 함수이다. 함수명설명psuhImage여러 픽셀을 한번에 처리하는 방식 ( RAM에 이미지 데이터를 로드하고 한번에 디스플레이에 전송하는 방식) 위 함수의 장단점은 본인이 쓰는 보드에 따라 다르다.내가 쓰는 보드의 RAM이 만약 이미지를 한번에 로드하기 어려운 크기면 이미지 한줄씩의 크기를 가져오던지 이런 방식으로 출력을 해야할것이다.내 보드는 ESP32C3 super mini이기때문에 RAM이 400KB정도이다.하나의 이미지크기는 bmp기준 300KB를 넘기 때문에 한번에 가져오기에는 공간이 충분치 않기 때문에 한줄씩 가져와서 띄우는 방식으로..

ESP/ST7796S_LCD 2025.01.18

ESP32C3 Super Mini / ST7796S TFT LCD -3

먼저 일반적인 사진은 jpg or png가 많다.여기서 방법은 2가지이다. jpg decoder를 해서 lcd 화면에 띄울거냐, 아니면 bmp를 변환한 것을 sd카드에 넣어서 사용할거냐장단점은 존재한다.종류장단점jpg손실 압축 형식을 사용하므로 BMP보다 파일 크기가 작지만, 디코딩이 더 복잡함따라서 추가적인 디코딩 과정이 필요함bmp무압축 또는 간단한 압축 방식이라서 데이터 구조가 단순하여 디코딩이 쉬움따라서 TFT 라이브러리에서 기본적으로 지원됨 jpg가 파일 크기가 작으니 SD 카드에서 읽는 속도가 더 빠를 수 있지만 일단 bmp로 진행해보겠다.(jpg 디코더를 사용할거면 다음 라이브러리를 이용해봐라 https://github.com/Bodmer/TJpg_Decoder)bmp의 데이터 형식은 다음 ..

ESP/ST7796S_LCD 2025.01.12

ESP32C3 Super Mini / SD리더기

먼저 SD카드를 초기화를 해주겠다.포맷형태를 뭐로 할까 하다가, 어떤 라이브러리를 사용할진 모르겠지만, 아두이노 SD 라이브러리가 지원하는 포맷은 FAT16/32라고 하길래 일단 FAT32로 초기화 해주겠다. 이렇게 초기화를 진행해주면 된다(만약 초기화가 잘 안되면 sd를 다시 뺏다 껴봐라)그리고 기본적으로 가지고 있는 라이브러리를 하나만 수정하자 우리는 이 라이브러리안에 있는 SD_Test를 예제로 쓸건데, CS를 기본적으로 설정된 GPIO7 말고, GPIO10으로 사용할 예정이다.따라서 다음과 같이 SD.cpp를 수정해주자ssPin이 CS인데 sdcard_init을 저렇게 10으로 넣어주자그리고 업로드하면 다음과 같이 뜬다그리고 SD카드를 뺴서 열어보면 다음과 같다. 잘 동작하는 것을 봤으니 이제 다..

ESP 2025.01.11

ESP32C3 Super Mini / ST7796S TFT LCD -2

TFT LCD를 활용하는 2번째 포스팅이다.일단 LCD를 키는것을 했으니 다음은 우리가 쓸 함수들을 파악해보고, 사진도 올려보자우리가 쓰는 함수들은 이미 #include "TFT_eSPI.h"로 포함시켜서 어딜 들어가서 봐야하는지 알것이다. 근데 들어가서 그 많은 함수를 언제 보고있나... 예제가 없으면 당연히 봐야지만, 예제가 있으니 예제에서 사용되는 부분의 함수들을 알아보자 https://github.com/Bodmer/TFT_eSPI/blob/master/examples/480%20x%20320/TFT_graphicstest_one_lib/TFT_graphicstest_one_lib.ino TFT_eSPI/examples/480 x 320/TFT_graphicstest_one_lib/TFT_grap..

ESP/ST7796S_LCD 2025.01.09

ESP32C3 Super Mini / ST7796S TFT LCD -1

ESP-IDF로 제어하기 전에 먼저 arduino IDE로 해당 3.5 inchi TFT LCD를 제어해보겠다. ESP32C3 Super mini의 기본적인건 이전 포스팅을 참고하자https://kksp12y.tistory.com/90 ESP32C3 SuperMini -1ESP32보드는 어느정도 다루어 보았지만 이번 게시물은 역시나 프로젝트를 위해 보드 하나를 더 알아가기 위해 리뷰 겸 제어를 해볼 예정이다. ESP32C3 SuperMini는 매우 작고 WiFi도 사용이 가능하여kksp12y.tistory.com 일단 내가 사용하는 하드웨어를 보이겠다. 보드 : ESP32C3 Super Mini디스플레이 :https://www.ebay.com/itm/204891182194 3.5 Inch 320x480 ..

ESP/ST7796S_LCD 2025.01.08

ESP-IDF를 사용하자

먼저 ESP32를 사용하는데 있어 아두이노 IDE를 사용하면 ESP32의 기능을 전부 사용하지 못한다. ESP-IDF는 ESP IoT Development Framework의 줄임말로 Espressif Systems에서 공식 지원하는 프레임워크이다.(아두이노IDE에서는 ESP-IDF 프레임워크를 래핑하고 있는 형태라고 생각하면 된다고 합니다.) 따라서 이제부터 ESP는 해당 Tool을 사용하여 개발을 진행해보겠다.먼저 VSCode에서 해당 Tool을 사용할 수 있는데 설치하는 방법은 다음 링크에서 자세히 나와있으니 참고바란다.(파이썬이 먼저 깔려있어야 한다)https://pthaus.tistory.com/9 ESP-IDF 윈도우 개발환경 세팅 (esp32, vscode)*소요시간 : 30분 1) VSCO..

ESP 2025.01.07