Robofun 機器人論壇
標題:
想請問srf08更改address的問題
[打印本頁]
作者:
stevek
時間:
2009-2-16 15:07
標題:
想請問srf08更改address的問題
我是使用PIC16F877A
i2c_start();
i2c_write(0xA0);
i2c_write(0xAA);
i2c_write(0xA5);
i2c_write(0xE2);
i2c_stop();
更改位址的方法我是按照他的說明
可是修改完以後 我把兩個srf08串起來使用
第二個出現的值都是65535
以下是第二個的接收
我是直接用第一個接收的方式 只是把位址改掉而已
不知道是不是有錯誤的地方
i2c_start(); //initate start condition
i2c_write(0xE2); //device address
i2c_write(0x00); //register address
i2c_write(0x51); //set units to centimeters
i2c_stop();
delay_ms(105); //wait for returning ping
i2c_start(); //initiate a new start condition
i2c_write(0xE2); //device address
i2c_write(0x02); //address of high byte register
i2c_start();
i2c_write(0xE1); //device address but read
for (i=0;i<17;i++)
{
range[i] = i2c_read(1); //read first byte and shift left
range[i] = range[i] << 8;
if(i<16)
range[i] += i2c_read(1); //read second byte and add to 1st
else
range[i] += i2c_read(0);
}
i2c_stop();
for (i=0;i<17;i++)
{
printf("range in centimeters = %lu\n\r", range[i]);
}
謝謝進來看以及回答的各位<(_ _)>
作者:
chensnowenglish
時間:
2011-7-6 16:20
我公司供應超越SRF08的KS101B超聲波感測器,她採用I2C介面的超聲波測距模組. 探測範圍1cm-650cm.並涵蓋高精溫度、光強度探測.
● 包含即時溫度補償的距離探測,高探測精度
● 採用專利技術的探測模式,探測範圍1cm~650cm
● 探測頻率可達500Hz,即每秒可探測500次
● 使用I2C介面與主機通信,自動回應主機的I2C控制指令
● 共20個可修改的I2C地址,範圍為0xd0 ~ 0xfe (0xf0,0xf2,0xf4,0xf6除外)
● 支持0x00廣播位址
● 83ms快速、高精度的溫度探測,隨時感知環境精確溫度
● 5s未收到I2C控制指令自動進入uA級休眠,並可隨時被主機I2C控制指令喚醒
● 短距探測量程由10cm、20cm、……、至470cm,滿足快速近距探測
● 1ms快速光強探測,即時探測即時光強
● 使用工業級配置,工作溫度 (-30℃~+85℃)
● 寬工作電壓範圍 (3.0V~5.5V)
● 採用獨特的可調濾波降噪技術,電源電壓受干擾或噪音較大時,仍可正常工作
資料資料下載:
中文版說明書及C代碼
英文版說明書及C代碼
http://www.dauxi.com/
歡迎光臨 Robofun 機器人論壇 (https://robofun.net/forum/)
Powered by Discuz! X3.2