NXT-Ultrasonic Sensor
終於到了超音波感測器~
線材依然是不多說囉~
不過這一次不需要用到AD 也就是 分岔的白線不需要用到
因為超音波是用I2C
在蠻久之前有講過I2C 就是G146以及wii搖桿的時候
所以相信大家都蠻熟析這介面的
先來看看怎麼接吧!
白 ──────VCC(9V)
黑 ──────GND
紅 ──────GND
綠 ──────VCC(5V)
黃 ──────SCL
藍 ──────SDA
注意白線是給9V
紅線是給5V
本魔在此是使用110
所以我servo power直接給9V的電 PWM輸出就是9V了!
若用的是100 你也可以直接把電源給9V 或另外接外部電源
至於Ultrasonic sensor的位址以及命令為何呢?
addr : 0x02>>1
cmd : 0x42
這樣基本上就可以去讀取sensor回傳的值囉!
範例影片:
範例code:
#include "stdio.h" #define USE_COMMON #include "common.h" #include "conio.h" #include "roboard.h" int main(){ roboio_SetRBVer(RB_110); int val = 0; i2c_InitSW(I2CSW_LEGO,100); unsigned char data[1] = {0}; while(!kbhit()){ i2c_SensorRead(0x02>>1,0x42,data,1); delay_ms(100); printf("%3d\r",data[0]); } i2c_Close(); return 0; }
想請問一下喔,i2c_InitSW()是藏在i2c.h裡面嗎?為什麼我找不到呢?
回覆刪除沒錯喔
回覆刪除