IIC功能安裝及測試
阿新 • • 發佈:2021-08-13
參考連線:
https://blog.csdn.net/panwen1111/article/details/81044428
https://blog.csdn.net/xukai871105/article/details/18234075
硬體:樹莓派 3b+
韌體:2018-04-18-raspbian-stretch.img
一、安裝iic庫
1.1、修改raspi-blacklist.conf檔案
sudo nano /etc/modprobe.d/raspi-blacklist.conf ---也可以是使用vim新增。
在檔案內部新增
blacklist spi-bcm2708
blacklist i2c-bcm2708 ---i2c-bcm2708驅動程式的名稱,裡面支援多個arm的iic控制器。
1.2、修改modules檔案
sudo nano /etc/modules在檔案後面新增如下內容:
i2c-bcm2708
i2c-dev
1.3、安裝軟體包
連線wifi,參考《樹莓派3B+ wifi設定》
sudo apt-get update
sudo apt-get install i2c-tools python-smbus
reboot
重啟後:
sudo i2cdetect -l 檢查命令安裝是否成功
sudo i2cdetect -y 1 上面看到的i2c-1,所以這裡有個1
sudo i2cdump -y 1 0x68 (1:裝置1,0x68:裝置地址)讀0x68裝置的暫存器內容
資料的寫入:
sudo i2cset -y 1 0x2a0x1a0x55
即可向裝置地址為0x2a的0x1a暫存器地址寫入0x55
-y 代表取消使用者互動過程,直接執行命令
1 代表I2C裝置號
0x2a 代表I2C裝置地址
0x1a 代表暫存器地址
0x55 代表向暫存器寫入的資料
資料的寫入
sudo i2cset -y 1 0x2a0x1a0x55
即可向裝置地址為0x2a的0x1a暫存器地址寫入0x55
-y 代表取消使用者互動過程,直接執行命令
1 代表I2C裝置號
0x2a 代表I2C裝置地址
0x1a 代表暫存器地址
0x55 代表向暫存器寫入的資料
獲取當前波特率:
sudo cat /sys/module/i2c_bcm2708/parameters/baudrate
設定波特率:
sudo emacs /etc/modprobe.d/custom.conf
新增一行設定:
options i2c_bcm2708 baudrate=100000
設定後需要重啟才能生效。
二、開啟iic裝置
ls /dev --- 檢視開發板上是否有iic裝置。如果有此裝置,開啟iic裝置過程略過。
2.1、開啟IIC裝置
在終端輸入sudo raspi-config
選擇interfaceing options
然後選擇I2C
就打開了IIC裝置。
通過上面2個步驟就可以,開啟樹莓派的iic裝置。
輸入:
ls /dev
可以看到:i2c-1
備註:
raspi-config命令修改的/boot/config.txt文件,raspi-config只不過用影象化實現了。
2.2、查詢IIC總線上的裝置
sudo i2cdetect -y 1 上面看到的i2c-1,所以這裡有個1 ,如果IIC總線上有裝置,這裡會有發現
sudo i2cdump -y 1 0x68 (1:linux的IIC裝置1,0x68:裝置地址)讀0x68裝置的暫存器內容
本文來自部落格園,作者: 藝達的blog,轉載請註明原文連結:https://www.cnblogs.com/yidaxiaoche/p/15136396.html