페이지

레이블이 아두이노인 게시물을 표시합니다. 모든 게시물 표시
레이블이 아두이노인 게시물을 표시합니다. 모든 게시물 표시

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의 예제> 에서 적당한 예제를 골라 업로드 해보시기 바랍니다.

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


2017년 10월 23일 월요일

Bluno Beetle HID connection으로 변경하기

App Inventor로 Bluno Beetle 앱을 만들어 볼려고, 휴대폰으로 Bluno Beetle을 페어링하니, 암호를 입력하라고 합니다. 암호 모르는데...

검색을 해보니, Bluno Beetle을 HID Connection 으로 설정해야 페어링할 때, 암호를 묻지 않는다고 합니다.

우선 스케치를 실행해서 시리얼 모니터를 실행합니다.


line ending 없음, 115200 보드레이트로 설정하고, +++를 입력하면...
아래와 같이 AT mode가 됩니다.


AT mode에서는 "line ending" 없음을 "Both NL & CR"로 변경합니다.
"AT+SETTING=DEFAULT" 를 입력하면, 기본값으로 설정됩니다.


"AT+FSM=FSM_HID_USB_COM_BLE_AT"를 입력하면, HID Connection이 설정됩니다.


Firmware Version을 확인하려면, "AT+VERSION=?"을 입력합니다.


"AT+EXIT"를 입력해서 AT mode에서 나옵니다


이제 Bluno Beetle의 전원을 껐다가 다시 켜면, 암호없이 페어링이 됩니다.


AT Command에 대한 상세한 내용은 여기를 참조 하시기 바랍니다.