페이지

레이블이 Arduino인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Arduino인 게시물을 표시합니다. 모든 게시물 표시

2019년 5월 9일 목요일

Arduino IDE 에서 ESP8266 설치하기

ESP32 와 동일한 방법인데, 보드매니저 URL만 다르다.


1. Arduino IDE 최신 버전을 설치한다.

2. Arduino를 실행하고, 파일>환경설정 메뉴를 선택하여, 환경설정 창을 연다.

3. 아래쪽 '추가적인 보드 매니저 URLs' 항목에 아래 주소를 입력한다.
   콤마로 구분해서 여러개의 URL을 입력 할 수 있다.

https://arduino.esp8266.com/stable/package_esp8266com_index.json

4. 환경설정 창을 닫고, 메뉴에서 "툴>보드>보드매니저" 를 선택한다.

5. "esp8266"으로 검색을 하고, 설치를 클릭해서 설치한다.

2018년 12월 19일 수요일

Arduino IDE 에서 ESP32 설치하기

espressif GitHub에 arduino-esp32를 설치하는 방법이 있습니다.

https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/boards_manager.md

1. Arduino IDE 1.8 이상을 설치한다.
 - 메뉴에서 "파일>환경설정" 선택.


2. 추가적인 보드 매니저 URLs에 아래 내용을 입력하고 확인을 클릭한다.

https://dl.espressif.com/dl/package_esp32_index.json


3. 메뉴에서 "툴>보드>보드매니저" 를 선택한다.


4. "esp32"로 검색을 하고, 설치를 클릭해서 설치한다.
   (설치 버튼이 보이지 않을 때, 조금 기다리면 나타납니다.)


5. 아래와 같이 INSTALL 된 것을 확인한다.


6. "툴>보드" 에서 가지고 있는 esp32 보드를 선택한다.

7. 프로그램을 작성하고, 실행해 본다.

 - 끝 -

2018년 7월 17일 화요일

온습도센서(ETH-01S)를 아두이노와 Nucleo-L053(STM32L053) 에서 사용하기

ETH-01S는 에코나래(www.econarae.co.kr)의 온습도 센서이며, I2C Interface를 사용한다.


1. 아두이노에서 ETH-01S를 사용하는 방법.
에코나래 홈페이지로 가면, 네이버 블로그 링크가 있다. 블로그로 가면 아두이노 예제가 있다.

#include <Wire.h>

void setup()
{
  Wire.begin();
}

void loop()
{
  Wire.beginTransmission(0x44);
  Wire.endTransmission();

  delay(1000);

  Wire.requestFrom(0x44,4);

  if(Wire.available())
  {
    int HumidH = Wire.read();
    int HumidL = Wire.read();
    int TemperH = Wire.read();
    int TemperL = Wire.read();

    HumidH = HumidH & 0x3F; // Don't care bit mask

    double RealH = (double)((HumidH * 256 ) + HumidL ) * 100/16383;
    double RealT = (double)(((TemperH * 256) + TemperL)/4) * 165/16383 - 40;
  }

}

2. NUCLEO-L053R8(STM32L053R8T6) 에서 사용하기.

STM32CubeMX에서 NUCLEO-L053R8 보드를 선택하고, I2C1을 Enable 시킨다.
I2C1 설정에서  PB6(SCL), PB7(SDA) Pin에 pull-up으로 설정한다.

Toolchain/IDE를  Keil uVision5로 설정하였다.

아두이노에서는 ETH-01S의 I2C address가 0x44인데, STM32에서는 read/write bit를 포함해서 주소로 쓰기 때문에, I2C address가 0x88이 된다.

float H_result, T_result;
int  HumidH, HumidL, TemperH, TemperL;
uint8_t  pBuffer[4];

pBuffer[0] = 0x0;
HAL_I2C_Master_Transmit(&hi2c2, 0x88, pBuffer, 1, 100);  // 초기화

HAL_I2C_Master_Receive(&hi2c2, 0x88, pBuffer, 4, 100);  // 측정값 읽기
HAL_Delay(5);

memcpy(&HumidH ,&pBuffer[0],1);
memcpy(&HumidL ,&pBuffer[1],1);
memcpy(&TemperH ,&pBuffer[2],1);
memcpy(&TemperL ,&pBuffer[3],1);

H_result = (double)(((HumidH&0x3F) * 256 ) + HumidL ) * 100/16383;
T_result = (double)(((TemperH * 256) + (TemperL&0xFC))/4) * 165/16383 - 40;




2018년 2월 1일 목요일

ESP32 + arduino IDE

arduino IDE를 이용한 ESP32 프로그램 개발 환경을 만들어 봅니다.


1. Arduino IDE 설치

https://www.arduino.cc 를 방문해서, Arduino IDE를 다운 받은 후  설치합니다.

기본 설정은 C:\Program Files (x86)\Arduino\ 에 설치되는데, 이 폴더는 접근할 때, 관리자 권한이 필요해서, 좀 불편합니다.

그래서, D:\Arduino\ 에 설치합니다.

2. arduino-esp32 설치

https://github.com/espressif/arduino-esp32 에서 arduino-esp32-master.zip을 다운 받습니다.

아두이노 설치된, D:\Arduino\hardware\ 폴더에 espressif 폴더를 새로 만들어서 압축을 풀어 놓습니다.

폴더 명을 arduino-esp-master 에서 esp32로 바꾸었습니다.



D:\Arduino\hardware\espressif\esp32\tools\ 폴더안에 get.exe 를, 관리자 권한으로 실행합니다.


3. Arduino IDE 실행 및 보드 선택

아래 그림과 같이 ESP32 보드가 추가되었습니다.

제가 가지고 있는 보드는 알리익스프레스에서 구매한 WEMOS LOLIN32 Lite 인데, Lite는 리스트에 없기에 그냥 LOLIN32를 선택했습니다. 동작은 잘 됩니다.


Upload Speed는 115200으로 바꿔 줍니다.

4. 프로그래밍

파일>예제> WEMOS LOLIN32의 예제> 에서 적당한 예제를 골라 업로드 해보시기 바랍니다.

업로드 하는데 시간이 좀 걸리는군요.