NXT-Light Sensor
上次已經介紹過了線材
所以這次就不多說了
Light Sensor要用到的線有5條
白,黑,紅,綠,黃
白 ─┬─●──VCC(5V)
└────AD
黑 ──────GND
紅 ──────AD-GND
綠 ──────VCC(5V)
黃 ──────GPIO(3.3V)
藍
附註: ●代表10歐姆電阻
黃線的GPIO其實是控制紅色LED亮暗用的
在範例程式中沒有用到GPIO 是因為本魔直接使用I2C的3.3V
這樣LED就會一直亮著(有點偷吃步啦)
Light Sensor的原理其實是由一個LED燈 與一個光明感測器做成的
平常是拿來走軌跡用的
因為黑色會吸光 白色會反光 所以LED照下去後 讀取到的值會有差
而我影片中用的... 並不是專門用的.. 所以反光效果較不穩定
範例影片:
範例code:
#include "stdio.h" #include "conio.h" #include "roboard.h" int main(){ roboio_SetRBVer(RB_110); int val = 0; bool setDo = false; spi_Init(SPICLK_21400KHZ); while(!kbhit()){ val = adc_ReadCH(0); if(val < 500 && !setDo){ setDo = true; system("CLS"); printf("LIGHT\n"); }else if(val >= 500 && setDo){ setDo = false; system("CLS"); printf("DARK\n"); } spi_Close(); return 0; }
0 留言:
張貼留言