webserver (52) 썸네일형 리스트형 ESP32 WebSocket 서버 테스트 기존에 테스트 했던 웹서버는 하나의 장치에 여러 클라이언트가 연결되어 있을경우 서버의 상태 변화가 발생하면 동기가 맞지 않는 현상이 있다. 이러한 문제에 대한 해결책으로 웹소켓을 사용하면 된다. 일반 웹서버에서는 HTTP 요청에서 실행되며 업데이트된 데이터를 가져오려면 웹 페이지를 완전히 새로 고쳐야 하는 단점이 있다. 이러한 단점을 극복하기 위해 나온것이 웹소켓 이다. 웹소켓(WebSocket)의 가장큰 특징은 전이중(서버와 클리이언트가 동시에 데이터를 보내고 받을수 있음) 프로토콜이다. 예를 들면 서버에 연결된 릴레이의 상태를 변경 시켰을때 모든 클라이언트(PC 웹페이지, 핸드폰 페이지, 원격지의 페이지)가 동일하게 상태를 변경시켜야 하는 예를 테스트 해볼 수 있다. 일반 웹서버는 http://로 시.. ESP32 비동기 AsyncWebServer - SPIFFS 사용 ESP32 웹서버 테스트시 좀더 화려한 웹페이지를 만들기 위해 HTML 코드나 CCS 파일을 수정하는 일이 많은데 이번에는 ESP32의 SPIFFS 파일 시스템에 올려서 웹서버를 구현 하는 테스트를 해 보았다. 이렇게 하면 웹페이지만 변경하기도 쉽고 좀더 효율적으로 관리 할 수 있을것 같다. 이번에도 SPIFF 기반의 웹서버가 동작하는 가장 기본이 되는 코드를 작성해 보자. #ifdef ESP32 // ESP32 libraries #include #include #else // ESP8266 libraries #include #include #endif #include #include // SSID & Password const char *ssid = " "; const char *password = ".. ESP32 비동기 AsyncWebServer ESP32에서 웹서버 구현 방법에는 여러가지가 있는데 이번에는 장점이 많은 비동기 웹서버를 이용하여 구현해 보았다. 장점이 있지만 라이브러리가 필요하다. ESPAsyncTCP, ESPAsyncWebServer (https://github.com/me-no-dev/ESPAsyncWebServer) 지난번 기본 라이브러리로 제공하는 ESP32 동기식 웹서버 예제와 같이 이번에도 가장 기본이 되는 웹서버 코드로 구현 해 보자 #ifdef ESP32 // ESP32 libraries #include #include #else // ESP8266 libraries #include #include #endif #include // SSID & Password const char *ssid = " "; const c.. ESP32 Simple Web Sever 테스트 ESP32 에서 제공하는 기본 라이브러리를 이용해 가장 간단한 웹서버 예제를 작성 해 보자 WiFi에 접속하고 페이지 요청 들어 오면 간단한 HTML 페이지를 전송하는 코드 이다. #include #include // SSID & Password const char *ssid = ""; const char *password = ""; WebServer server(80); // Object of WebServer(HTTP port, 80 is defult) void handle_root(); // HTML 페이지 #if 1 const char index_html[] PROGMEM = R"rawliteral( ESP32 Simple Web Server - 😊 )rawliteral"; #endif //페이지.. [STM32F4-RP] OV2640 카메라 테스트1 - W5300을 웹서버를 이용한 영상 전송 [STM32F4-RP] OV2640 카메라를 테스트 해보자. W5300에서 웹서버 테스트코드를 활용해서 웹에서 영상을 볼 수 있도록 해볼 예정이다. STM32 DCMI 회로도 [STM32F4-RP] 보드의 카메라 인터페이스(DCMI) 핀맵은 아래 그림과 같다. STM32CubeIDE 설정 STM32에서 카메라는 DCMI 장치에서 설정 할 수 있다. STM32CubeIDE 를 이용하여 DCMI설정을 해 준다. 인터럽트를 사용할 수 있도록 설정하고 DMA 설정도 해 준다. 카메라 모듈에는 Master 클럭을 입력해 주어야 하는데 STM32의 PA8을 MCO로 설정하여 16Mhz의 시스템 클럭이 출력 되도록 해 주었다. 카메라관련 설정은 I2C 인터페이스로 가능하고 I2C2를 활성화 하도록 했다. 설정을 완료.. [STM32F4-RP] W5300을 이용한 웹서버 테스트 STM32F4-RP 보드를 이용한 W5300 개발환경 구성하기에서 포팅한 ioLibrary 의 장점은 표준화된 코드로 다양한 네트워크 응용 프로그램을 쉽게 작성할 수 있다는 것이다. Wiz550web 예제( https://github.com/Wiznet/WIZ550web) 를 참고 하여 간단히 W5300 Web Server 로 보드를 제어 할 수 있다. 표시할 웹페이지에 들어갈 코드를 메모리에 할당한다. const unsigned char index_page[] = { "\ \ \ Embedded Webserver Test\ \ \ %s\r\n", uri_name); } else if(strstr(p_http_request->URI, "led_on.html")) { Led1On(); printf("LED.. [STM32G0 SSM] Arduino W5500 Ethernet WebServer 테스트 Arduino Ethernet2 라이브러리를 이용하여 W5500 EVM 모듈을 테스트 할수 있는 간단한 Ethernet Webserver 예제를 테스트 했다. W5500의 IP 정보를 가져 오지 못한다. server is at : 0.0.0.0 SPI 클럭 파형은 정상적인데... 뭐가 문제 일까? 출력 클럭이 정상이라면 입력(MISO)쪽이 문제이지 않을까? GPIO_AF4_SPI2 -> GPIO_AF0_SPI2 로 변경하니 잘 동작한다. #ifdef HAL_SPI_MODULE_ENABLED WEAK const PinMap PinMap_SPI_MISO[] = { //{PA_9, SPI2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_SPI2)}, //{PA_3.. [ESP8266-SSM EVM] 웹서버 테스트 [ESP8266-SSM EVM] ESP8266 웹서버 테스트 ESP8266의 가장 강점은 저렴한 가격의 WiFi 를 구현 할 수 있는것이 아닐까...우선 가장 간단하게 테스트 해 볼 수 있는 웹서버 예제를 돌려 보자 Arrduino설치시 기본으로 제공하는 웹서버 예제를 다운로드 해서 테스트 해 보았다.#include #include #include #include const char* ssid = "****";const char* password = "*****"; ESP8266WebServer server(80); const int led = 13; void handleRoot() { digitalWrite(led, 1); server.send(200, "text/plain", "hello from e.. 이전 1 2 3 4 5 6 7 다음