본문 바로가기

ESPRESSIF

(77)
ESP32S3 SM EVM - Bluetooth 5 (LE) BLE KeyBoard 테스트 ESP32S3의 가장 큰 특징은 ESP32S2와 같이 USB가 있고 Bluetooth기능을 제공한다. ESP32S3의 Bluetooth 5 (LE) 기능을 테스트 해 보자 ESP32-IDF 제공 예제중 BLE Keyboard 예제를 수정하여 스위치 누를때 마다 Key값을 전송하도록 테스트해 보았다. int flag = 0; void hid_demo_task(void *pvParameters) { vTaskDelay(1000 / portTICK_PERIOD_MS); while(1) { if(!gpio_get_level(BUTTON_PIN)) { if(!flag) { flag = 1; gpio_set_level(LED_PIN, 0); if (sec_conn) { uint8_t key_vaule = {HID_..
ESP32S3 ESP-IDF에서 Iperf로 WiFi TCP, UDP Throughput 측정 테스트 ESP32S3 를 Aruino 개발환경에서 WiFi 전송률 테스트 했을때 속도가 느리다. ESP32S3 ESP-IDF 에서 제공하는 iperf 테스트 예제로 성능을 측정해 보자 ESP32 ESP-IDF WiFi 성능 측정에 사용했던 iperf 테스트 코드를이용 해서 ESP32S3에서 동작하도록 했다. ESP32S3 TCP Client Throughput 테스트 PC 에서는 iperf 를 서버로 설정한다. ESP32를 클라이언트로 설정하여 iperf 테스트를 해 보면 64Mbps 정도 측정된다. ESP32S3 TCP Server Throughput 테스트 ESP32를 서버로 설정하고 PC 에서는 iperf 를 클라이언트로 설정하여 테스트를 해 보면 60Mbps 정도 측정된다. ESP32S3 UDP Clie..
ESP32S3 ESP-IDF 개발환경 설정 (Windows VSCode) ESP32 ESP-IDF 개발 환경 설정을 참고로 해서 ESP32-S3를 ESP-IDF 개발환경에서 컴파일 하면 에러가 발생한다. [954/959] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/blink.c.obj FAILED: esp-idf/main/CMakeFiles/__idf_main.dir/blink.c.obj 코드를 가장 간단하게 작성하고 컴파일을 해도 다운로드에서 디바이스를 지원을 하지 않는다는 메시지가 출력된다. ESP-IDF의 버전을 업데이트 해야 하나? ESP-IDF : Configure ESP-IDF extension 에서 IDF 환경을 설정 할 수 있다. ESP-IDF 최신버전(5.1.1)을 선택하고 설치를 해 준다. 테스트를 ..
[ESP32S3-SM] 터치 패드 테스트 ESP32-S3에는 14개의 정전식 터치 패드가 지원된다. 측정을 위해 지정된 충방전 주기가 너무 짧으면 결과가 부정확할 수 있지만, 충방전 주기를 늘리면 전력 소모도 늘어난다. 반전 및 측정의 총 시간이 너무 길면 터치 센서의 응답이 느려진다. 간단한 예제로 ESP32의 터치 패드 기능을 테스트 해보자. #define TOUCH_PIN9 const int LED1_PIN = 18; void setup() { pinMode(LED1_PIN, OUTPUT); Serial.begin(115200); Serial.println("ESP32-S3 Touch PAD Test"); } int touch = 0; void loop() { touch = touchRead(TOUCH_PIN); Serial.println..
[ESP32S3-SM] TFT-LCD 테스트 ESP32S3-SM 보드는 SM Type EVM 형태의 표준 핀맵으로 제작되었고 확장 테스트 보드에서 기존에 제작 해 두었던 여러가지 보드를 테스트 할 수 있다. 확장 테스트 보드의 LCD에는 8bit 방식으로 연결되어 있다. 8비트 방식을 16비트 방식으로 변환 해 주는 LCD_CONV 테스트 보드에 연결하여 테스트 했다. TFT_LCD 모듈(COM26T2844) 를 위한 핀맵을 설정하고 기본 코드 수정해 주어야 한다. #define LED_BIT 18 #define lcd_delay() #define Delay(x) delay(x) #define sbi(Port, Value) (GPIO.out_w1ts = (1
ESP32S3 Dhrystone, Whetstone, IIR Benchmark 성능 테스트 MCU 성능 측정을 할수 있는 벤치마크 방법은 여러가지가 있지만 Dhrystone, Whetstone 방식을 많이 사용한다. 각각의 특징은 아래와 같다. Dhrystone - 정수(ALU)연산성능 측정, MIPS 수치로 표기 Whetstone - 부동소수점(FPU)연산성능 측정, MFLOPS 수치로 표기 테스트 코드는 STM32H MCU Dhrystone, Whetstone, IIR Benchmark 성능 테스트 를 이용하였다. 벤치마크 테스트결과 ESP32 벤치마크 테스트 와 비슷한 수준이고 ESM32S2 벤치마크 테스트 결과 보다는 좋아진것 같다. 듀얼코어라 빨러졌나? 이부분은 좀더 확인이 필요 할것 같다. mode = ESP32 Dhrystone Benchmark, Version 2.1 (Langu..
[ESP32S3-SM] GPIO 성능 테스트 MCU 성능 측정에 있어 GPIO 토글 속도를 측정하는 이유는 FTFLCD 제어 속도 테스트와 같은 GPIO로 제어 하는 주변 장치를 사용할 때 주요 성능 지표가 되기 때문이다. Arduino에서 제공하는 GPIO 제어 함수로 GPIO 토글 속도를 측정해 보자 const int LED1_PIN = 18; void setup() { pinMode(LED1_PIN, OUTPUT); Serial.begin(115200); Serial.println("ESP32-S3 GPIO Test"); } void loop() { digitalWrite(LED1_PIN, 0); digitalWrite(LED1_PIN, 1); } GPIO On/Off 주기는 380ns로 측정이되며 메인루프 수행 시간은 ESP32S2 GPIO..
[ESP32S3-SM] ESP32S3 개발환경 설정 (Arduino 만들기) ESP32S3 개발환경은 여러가지가 있지만 간단하고 많이 쓰이는 ArduinoIDE에서 세팅을 해 보자 우선 최신 ESP32 Aduino Boards Meanager URL 을 설정한다. https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json Board Manager 에서 "ESP32S3 Dev Module"을 선택한다. 기본 예제로 ESP32S3 SM 보드에 실장되어 있는 LED를 제어 해 보자. #define LED_PIN1 18 void setup() { Serial.begin(115200); pinMode(LED_PIN1, OUTPUT); } void loop() { digitalW..

반응형