日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

I2C子系统

發(fā)布時(shí)間:2024/4/17 windows 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 I2C子系统 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

exynos4412的IIC控制器工作流程:

裸機(jī)程序如下:

重要的數(shù)據(jù)結(jié)構(gòu):

1.描述控制器的:

2.控制器操作硬件的方法:

3.核心層的總結(jié)構(gòu)體;

4.描述從機(jī)mpu6o50的:

設(shè)備樹:

i2c@138B0000 {samsung,i2c-sda-delay = <100>;samsung,i2c-max-bus-freq = <20000>;pinctrl-0 = <&i2c5_bus>;pinctrl-names = "default";status = "okay";mpu6050-3-axis@68 {compatible = "invensense,mpu6050";reg = <0x68>;interrupt-parent = <&gpx3>;interrupts = <3 2>;};};

從機(jī)設(shè)備驅(qū)動–mpu6050基于misc子系統(tǒng)

1.驅(qū)動代碼

從機(jī)設(shè)備驅(qū)動–mpu6050基于普通字符設(shè)備

1.驅(qū)動代碼

源碼跟蹤心得:

上圖中只揭示了運(yùn)用層的讀寫函數(shù)怎么調(diào)用到adapter->algrithem->masterxfer()方法,以及為什么運(yùn)用層的read調(diào)用的是核心層的i2cdev_read()。那么,問題來了,我怎么知道這個(gè)mpu6050對應(yīng)的是哪個(gè)adpter,在我的工程代碼中定義的i2c_deriver對象注冊前根本沒指明他的adapter? 還有,代碼中的哪個(gè)client,看樣子是從probe函數(shù)的參數(shù)中傳進(jìn)來的,是怎么闖進(jìn)來的?我注冊i2c_driver之前可沒有指定他哦,怎么確保這個(gè)client是正確的client呢?

答:這是一個(gè)復(fù)雜的過程,見思維導(dǎo)圖: 《i2c從設(shè)備mpu6050是怎么注冊進(jìn)內(nèi)核的》

實(shí)驗(yàn)源碼:
https://git.coding.net/xxgui1992/LinuxDriver-I2c.git

轉(zhuǎn)載于:https://www.cnblogs.com/xxg1992/p/6636375.html

總結(jié)

以上是生活随笔為你收集整理的I2C子系统的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。