วันศุกร์ที่ 16 มิถุนายน พ.ศ. 2560

Arduino IDE ที่รองรับ ESP8266

ขั้นตอนการติดตั้ง

1.      ติดตั้ง Arduino IDE ที่รองรับ ESP8266
·       ดาว์โหลด และ ติดตั้ง Arduino IDE v1.6.9+
·       ทำให้ Arduino IDE ของเรารู้จักกับบอร์ด ESP8266 เข้าเมนู File > Preferences จากนั้นใส่ข้อความว่า http://arduino.esp8266.com/stable/package_esp8266com_index.json ลงไปในช่อง Additional Board Manager URLs แล้วกดตกลง
·       Install lib โดยเข้าเมนู Tools > Boards Manager พิมพ์ในช่องค้นหาว่า esp8266
·       จากนั้นกดเลือก Install รอการติดตั้งสักครู่
2.      ติดตั้ง Lib Anto และ สมัครสมาชิก Anto
·       ดาวน์โหลด Lib Anto (Ver. 0.5.2) แล้วแตกไฟล์ที่ดาวน์โหลด เปลี่ยนชื่อโฟลเดอร์เป็น AntoIO
·       วางโฟลเดอร์ AntoIO ไปไว้ที่ Documents > Arduino > Libraries
·       สมัครสมาชิกเป็นครอบครัว Anto กรอกข้อมูลให้ครบถ้วนแล้วกดยืนยันการสมัคร
·       Login เข้าสู่ระบบ


อ่านค่าอุณภูมิและความชื้นให้ไปผลแสดงที่ MAX7129



       โดนเราจะอ่านค่าอุณภูมิด้วย HDC1080  และให้แสดงค่าอุณหภูมิและความชื้นให้แสดงขึ้นไปที่ MAX7129 โดยสามารถทำได้ตามโค้ดนี้


#include <SPI.h>
#include "LedMatrix.h"
#include <Wire.h>
#include "ClosedCube_HDC1080.h"
#define NUMBER_OF_DEVICES 1
#define CS_PIN D8
LedMatrix ledMatrix = LedMatrix(NUMBER_OF_DEVICES, CS_PIN);
ClosedCube_HDC1080 hdc1080;

void setup() {
    pinMode(D3, INPUT_PULLUP);
    Serial.begin(115200); // For debugging output
    ledMatrix.init();
    ledMatrix.setIntensity(15); // range is 0-15
    ledMatrix.clear();
    ledMatrix.commit(); // commit send buffer to the displays
    Serial.begin(9600);
    Serial.println("ClosedCube HDC1080 Arduino Test");
    hdc1080.begin(0x40);
    Serial.print("Manufacturer ID=0x");
    Serial.println(hdc1080.readManufacturerId(), HEX); // 0x5449 ID of Texas Instruments
    Serial.print("Device ID=0x");
    Serial.println(hdc1080.readDeviceId(), HEX); // 0x1050 ID of the device
}
void loop() {
    Serial.print("T=");
    Serial.print(hdc1080.readTemperature());
    Serial.print("C, RH=");
    Serial.print(hdc1080.readHumidity());
    Serial.println("%");
    float temp = hdc1080.readTemperature();
    float hmnt = hdc1080.readHumidity();
    int itemp = (int)(temp * 100) / 10;
    int ihmnt = (int)(hmnt * 100) / 10;
    ledMatrix.clear();
    ledMatrix.commit(); // commit send buffer to the displays

    Send2MAX7129(5, 12, 0);
    Send2MAX7129(6, itemp % 10, 0); itemp = itemp / 10;
    Send2MAX7129(7, itemp % 10, 1); itemp = itemp / 10;
    Send2MAX7129(8, itemp % 10, 0); itemp = itemp / 10;
    Send2MAX7129(1, 16, 0);
    Send2MAX7129(2, ihmnt % 10, 0); ihmnt = ihmnt / 10;
    Send2MAX7129(3, ihmnt % 10, 1); ihmnt = ihmnt / 10;
    Send2MAX7129(4, ihmnt % 10, 0); ihmnt = ihmnt / 10;
    delay(100);
}
//===================================================
// ##SegPosition >> 87654321 ##SegData >> tabcdefg
//===================================================
void Send2MAX7129(byte SegPosition, byte Value, bool dotDigit) {
  const static byte charTable [] =  {
          B01111110, B00110000, B01101101, B01111001, //
          B00110011, B01011011, B01011111, B01110000,
          B01111111, B01111011, B01110111, B00011111,
          B00001101, B00111101, B01001111, B01000111,
          B00010111
                                    };
    Value = charTable[Value];
    if (dotDigit == 1) Value |= 0x80;
    digitalWrite(CS_PIN, LOW);
    SPI.transfer (SegPosition);
    SPI.transfer (Value);
    digitalWrite (CS_PIN, HIGH);
}
//===================================================
// ##SegPosition >> 87654321 ##SegData >> tabcdefg
//===================================================
void SendData2MAX7129(byte SegPosition, byte SegData) {
    digitalWrite(CS_PIN, LOW);
    SPI.transfer (SegPosition);
    SPI.transfer (SegData);
    digitalWrite (CS_PIN, HIGH);
}



ไม่มีความคิดเห็น:

แสดงความคิดเห็น

NI labview 2014

NI labview 2014 โปรแกรม LabVIEW ย่อมาจาก Laboratory Virtual Instrument Engineering Workbench โปรแกรมที่ พัฒนาขึ้นมาโดยใช้ LABVIEW ...