本章節使用的資料已經放到了開發板網盤資料中,路徑為:11_Linux 系統開發進階95_章節使用資料。
95.1 移植
I2c 測試工具下載地址 https://mirrors.edge.kernel.org/pub/software/utils/i2c-tools/,
這里下載的 4.1 版本,下載完后拷貝后 Ubuntu,
解壓 tar -vxf i2c-tools-4.1.tar.gz,
清理工程,make clean,
導入交叉編譯工具鏈環境,根據實際情況填寫路徑:export
CC=/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc
執行 make 編譯,進入 tools 目錄:
將生成的工具“i2cdetect i2cdump i2cget i2cset i2ctransfer”拷貝到開發板的/bin/目錄下
將源碼頂層目錄 lib/下的 libi2c.so.0.1.1 復制到開發板的/usr/bin/目錄下,修改名字為 libi2c.so.0,
mv libi2c.so.0.1.1 libi2c.so.0
到此移植成功。
95.2 測試
查看掛載的 i2c 設備:i2cdetect -l
查看 i2c 總線上的設備:i2cdetect -y <總線號>,例如輸入 i2cdetect -y 0,UU 代表系統已經加載了此設
備,如果是數值下表示在 driver 中沒有加載。圖中表示 0x1E,0x50,0x68 已經被加載,分別對應 mpu6050,
at24c02,ap3216c。
讀取 i2c 設備所有寄存器值:i2cdump -f -y <總線號> <設備地址>,i2cdump -f -y 0 0x50,0 為 i2c 總線號,
0x50 為 AT24C02 的地址值,
測試結果如圖 95.2.4:
向寄存器寫數據:i2cset -f -y <總線號> <設備地址> <寄存器地址> <數據>
例如:i2cset -f -y 0 0x50 0x00 0x22
寫入多個數據:i2ctransfer -f -y <總線號> w<數據個數>@<寄存器> <數據><數據>
i2ctransfer -f -y 0 w3@0x50 0x00 0x0a 0x0b
上一篇:迅為-4418開發板-驅動-PWM輸出實驗
下一篇:迅為4412開發板-驅動-電源管理芯片S5M8767修改輸出例程
推薦閱讀最新更新時間:2025-04-23 19:15


設計資源 培訓 開發板 精華推薦
- LT3791HFE-1 98% 效率 60W (12V/5A) LED 驅動器的典型應用電路
- LTC2977 的典型應用 - 具有準確輸出電壓測量功能的 8 通道 PMBU 電源系統管理器
- LT6656AIS6-5、5V 低功率 ADC 電壓基準的典型應用
- TDS水質測試筆原理圖和PCB和BOM
- AD9251-80EBZ,用于 AD9251BCPZ-80、2 通道、14 位、80 MSPS 模數轉換器的評估板
- 使用 Nuvoton Technology Corporation 的 NAU8214 的參考設計
- STEVAL-ILL067V1,基于六通道 ALED7707 的 LED 驅動器評估板,帶有嵌入式升壓轉換器,用于汽車內部照明和 TFT 背光
- 史努比PCB板
- AM1G-1218DZ ±18V 1 瓦 DC/DC 轉換器的典型應用
- ADP2230 雙路 2 MHz、800mA、同步低靜態電流降壓穩壓器的典型應用