Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz
查看: 4474|回復: 4
打印 上一主題 下一主題

[請教]I2C 裝置使用 RoboIO LIB 的寫法..(Wii Motion Plus)

[複製鏈接]
1#
發表於 2010-9-9 22:07:48 | 顯示全部樓層
HI

看到這篇我又拿了以前測過的 Motion Plus 起來玩 XD
Wii 的 Moition Plus 的位址 0x53 與 0x52 都是 7 bit, 不用將它右移 1 位 :)
另外, 要讀 WMP 的值時, 要先寫 0x00 給它(此時位址是 0x52) 再讀 6 筆 data 出來, 必須注
意的是, 寫與讀中間不用 restart, 所以是先寫 0x00 後 stop, 再 start 讀 6 筆, 參考以下:

i2c0master_StartN(0x52, I2C_WRITE, 1);
i2c0master_WriteN(0x00);
wait_ms(10); // delay 10 ms
i2c0master_StartN(0x52, I2C_READ, 6);

for(i=0; i< 6; i++) data[i] = i2c0master_ReadN();

試試看吧 :)
2#
發表於 2010-9-10 09:41:07 | 顯示全部樓層
HI

啟動的程序是沒錯的, 只是 start 的部分應該改為
    i2c0master_StartN(i2c_address,I2C_WRITE, 2)
因為寫了 2 筆 data (0xfe, 0x04)
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

小黑屋|手機版|Archiver|機器人論壇 from 2005.07

GMT+8, 2024-5-20 18:36 , Processed in 0.080109 second(s), 8 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表