본문 바로가기

2019/01

(23)
ESP32 Arduino 성능측정 ESP32를 이용하여 Arduino에서 CPU 성능을 테스트 해 보았다. 역시 많이 느리군... 우선 Arduino 에서 제공하는 GPIO 제어 함수를 이용해 보면 112ns(3.2Mhz) 로 출력 된다. #define PIN_OUT 5 void setup() { pinMode(PIN_OUT, OUTPUT); } // the loop function runs over and over again forever void loop() { //delay(1); digitalWrite(PIN_OUT, 1); digitalWrite(PIN_OUT, 0); } ESP32의 GPIO 제어 레지스터에 직접 출력하면 62ns 정도로 출력된다. ESP8266이용한 Arduino 성능 측정 실험의 75ns 와 비교 하면 조금..
ESP32 Xbee EVM - ESP32 Arduino 개발 환경 설정 환경설정에서 ESP32를 위한 JSON 파일을 등록 한다. https://dl.espressif.com/dl/package_esp32_index.json 보드 매니저에서 ESP32 패키지를 설치 한다. ESP32 모듈을 설정하고 컴파일 해 보면 잘 동작 하는것을 확인 할 수 있다.
ESP32 xBee EVM 보드 제작 ESP32 모듈을 무선 기능을 가진 [xBee EVM] 형태의 핀맵으로 제작 했다. ESP8266 XBee 모듈보다 모든면에서 우수하기 때문에 다양한 응용분야에 적용할 수 있을것 같다. 표준화 핀맵을 사용하여 ESP2866에서 사용했던 ESP8266, ESP32용 다양한 확장 테스트 보드를 사용할 수 있다. ESP32 모듈 회로도
PCF8574 8BIT I/O Expander SSM Module 보드 제작 I2C 테스트 용도 및 IO확장을 위해 PCF8574 I/O Expander를 SSM Module 형태로 제작 했다. 각 포트에 LED를 연결해서 출력되는 값을 확인 할 수 있으며 2.54피치 핀헤더로 연결해서 확장 할 수도 있도록 제작 했다. PCF8574는 I2C 인터페이스로 8비트 입 출력 포트를 확장할 수 있다. PCF8574 I2C Address는 0x40~0x47 까지 하드웨어 적으로 설정 할 수 있다. 제어는 아주 단순한데 I2C Address를 쓰고 I/O Data를 써주면 출력이된다. 핀정보를 읽을 때는 I2C Address 쓰고 한바이트 읽으면 된다. Arduino코드로 예를 들어 보면 아래와 같이 사용 할수 있다. #define PCF_8574_ADDR 0x20 void write8(..
[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..
[STM32G0-SSM EVM] Arduino 내부 온도센서 테스트 STM32G0에는 칩내부에 온도 센서가 있다. 온도값에 따라 리니어 하게 전압으로 출력 되지만 절대온도로 사용하려면 보정이 필요 하다고 한다. 대략 온도 측정하기는 좋을것 같다. STM32G0 내부 온도 출력 Aruino 소스코드 #include "stm32yyxx_ll_adc.h" /* Values available in datasheet */ #define CALX_TEMP 25 #if defined(STM32F1xx) #define V25 1430 #define AVG_SLOPE 4300 #define VREFINT 1200 #elif defined(STM32F2xx) || defined(STM32F4xx) #define V25 760 #define AVG_SLOPE 2500 #define VREF..
[STM32G0-SSM EVM] Arduino ST7789 TFT LCD 출력 테스트 Adafruit_ST7735_and_ST7789_Library 를 이용해서 SST7789 TFT LCD Module 을 RPI-SSM-EXP 보드에서 테스트 해보았다. RPI-SSM-EXP 보드의 LCD는 SPI와 LCD_RS(J55-PIN5), LCD_EN(J56-PIN6)에 연결되어 있다. STM32G0 SSM EVM 보드의 PA6, PC14에 연결해서 제어 하면된다. ST7789 Arduino 라이브러리는 Adafruit ST7789 라이브러리를 사용했다. 초기화 코드에서 TFT LCD 제어용 핀맵 설정 #define TFT_CS 14 // Hallowing display control pins: chip select #define TFT_RST -1 // Display reset #define T..

반응형