2、安裝i2c庫和工具dtparam=i2c1=on
dtparam=i2c_arm=on
$ sudo apt-get install i2c-tools
3、檢視i2c裝置位址
以上,0x10,0x3c就是模組的i2c通訊位址
1、讀裝置所有資料
-y 取消使用者互動,直接執行命令$ sudo i2cdump -y 1
0x10
1 i2c裝置號
0x10 i2c裝置位址
以上為0x00到0xff位址範圍內的所有資料
2、資料寫入
向裝置位址為0x10的0x00暫存器位址寫入0x55$ sudo i2cset -y 1
0x10
0x00
0x55
3、暫存器資料讀取
讀匯流排位址為0x10裝置的0x1a暫存器位址的資料$ sudo i2cget -y 1
0x10
0x1a
4、對16位資料的讀
安裝smbus庫$ sudo i2cdump -y 1
0x10 w
$ sudo apt-get install python-smbus
**
注:bus = smbus.smbus(1)在樹莓派版本2中,i2c裝置位於/dev/i2c-1,所以此處的編號為1。import smbus
import time
bus = smbus.smbus(1)
addr =
0x3c
recount_th0=
0x1a
# 對8位資料讀寫
data = bus.read_byte_data(address, recount_th0)
(data)
bus.write_byte_data(address, recount_th0,
0x99
)#對16位資料的讀寫
data=bus.read_word_data(address,recount_th0)
print data
bus.write_word_data(address,recount_th0,
0x01d6
)
python封裝smbus操作函式具體**請檢視:
1、檢視i2c裝置的速率
$ sudo cat /sys/module/i2c_bcm2708/parameters/baudrate
預設的i2c速度為100khz,對於多數i2c裝置而言100khz並不算快,但是對於個別的i2c裝置而言100kzh還是太快了,那麼也可以修改i2c的速率使得通訊更穩定。
2、修改速率
進入/etc/modprobe.d 目錄,並在該目錄下新建乙個costom.conf檔案,在該檔案中插入options i2c_bcm2708 baudrate=32000,32000便為新的i2c速率,最後請重啟系統。
樹莓派啟用i2c裝置
樹莓派已經整合了i2c驅動,只需要啟動就行.修改配置檔案 接下來啟動i2c模組 sudo apt get install i2c tools python smbus將pi使用者新增至i2c組 sudo adduser pi i2c重啟 sudo shutdown r now連線i2c裝置,並執行如...
樹莓派I2C匯流排連線裝置
出現問題 pi raspberrypi sudo i2cdetect y 1 error could not open file dev i2c 1 or dev i2c 1 no such file or directory 原因 配置中沒有設定i2c,解決 進入配置介面 使能i2c 解決方案 s...
樹莓派i2c功能
預設i2c是關閉的,用raspi config 命令,會彈出乙個配置框圖 選擇enable i2c就可以了 reboot之後 沒有在 dev 目錄下發現i2c x的裝置,這個時候需要做以下操作 1.新增i2c模組 sudo nano etc modules 然後新增以下兩行內容 i2c bcm270...