2016年5月19日 星期四

Grove - Light Sensor 測試-使用LinkIt Smart 7688 Duo

Grove - Light Sensor 測試-使用LinkIt Smart 7688 Duo

****注意 LinkIt 7688 Duo 在 Arduino IDE 1.6.9 有問題 Arduino IDE 要用1.6.7***** 


   Grove - Light Sensor 模組使用GL5528光敏電阻來檢測環境光的強度。感測器在光強度增加時電阻降低。使用LM358運算放大器作為電壓隨耦器來獲得準確的數據。它可以在應用如電子玩具,光控開關,監視器使用。


Grove - Light Sensor 

  Seeed Studio 料號 : 1511185005 包裝內容 :  Light Sensor模組 x1 Grove 線材 x 1


先將 Grove 線材一頭插入 Light Sensor模組


再將Grove 線材另一頭插入LinkIt Smart 7688 Duo 底座的 A2, OLED 模組接在 I2C



插上USB與電腦連線


開啟Arduino IDE 輸入以下程式碼


//*********以下是程式碼***********

 #include <Wire.h>
 #include <SeeedOLED.h>

#define LIGHT_SENSOR A2      // Light Sensor 接在 A2

float Rsensor;    //電阻值 單位 K Ohm

void setup()
{
 
  Wire.begin();              
  SeeedOled.init();                    //初始化 OLED
  SeeedOled.setNormalDisplay();      //設定 OLED 正常顯示
  SeeedOled.setPageMode();           //設定 OLED 為頁模式
 
   }
void loop()
{
 
    int sensorValue = analogRead(LIGHT_SENSOR);  //感測器的值 = 類比輸入腳的值
 
    Rsensor = (float)(1023-sensorValue)*10/sensorValue;  // 計算出電阻值
 
 
    SeeedOled.clearDisplay();                //清除 OLED
    SeeedOled.setTextXY(0,0);              //OLE 游標移至 0,0
    SeeedOled.putString("The analog is ");  //顯示字元 The analog is
    SeeedOled.setTextXY(2,0);              //OLE 游標移至 2,0
    SeeedOled.putFloat(sensorValue);        //顯示 感測器的值
    SeeedOled.setTextXY(5,0);              //OLE 游標移至 5,0
    SeeedOled.putString("The RES is ");     //顯示字元 The RES is
    SeeedOled.setTextXY(7,0);              //OLE 游標移至 7,0
    SeeedOled.putFloat(Rsensor,DEC);        //顯示 電阻值
 
    delay(1000);           //延遲 1秒

}

//**********程式碼到此************


檢查 "工具" 內的 "版子" 跟 "序列埠" 是否設定正常 


按 "上傳 " 將程式碼上傳到LinkIt Smart 7688 Duo


Arduino IDE 會詢問存當,輸入 Light "存檔"


程式上傳中


程式上傳完成


     上傳完成後OLED 會顯示目前感測器的值跟計算後的電阻值用手把Light Sensor 遮起來感測器的值會下降電阻值會升高



參考資料 :
                      聯發科創意實驗室   http://home.labs.mediatek.com/
                      Seeed Technology     http://www.seeedstudio.com/


沒有留言:

張貼留言