linux的系統

10.4 I2C 系統的重要結構體 參考資料: ? Linux 驅動程序:(某版本的 Linux,比如 Linux-4.9.88)/drivers/i2c ? I2CTools: https://mirrors.edge.kernel.org/pub/software/utils/i2c-tools/ 284 / 577 10.4.1 重要結構體 使用一句話概括 I2C 傳輸:APP 通過 I2C Controller 與 I2C Device 傳 輸數據。 在 Linux 中要思索下面幾個問題。 ? 怎么表示 I2C Controller ? 一個芯片里可能有多個 I2C Controller,比如第 0 個、第 1 個、…… ? 對于使用者,只要確定是第幾個 I2C Controller 即可 ? 使用 i2c_adapter 表示一個 I2C BUS,或稱為 I2C Controller,里面有 2 個重要的成員: a) nr:第幾個 I2C BUS(I2C Controller) b) i2c_algorithm,里面有該 I2C BUS 的傳輸函數,用來收發 I2C 數據 i2c_adapter 原型: 圖 10.27 i2c_adapter 原型 i2c_algorithm 原型: 圖 10.28 i2c_algorithm 原型 285 / 577 怎么表示 I2C Device ? 一個 I2C Device,一定有設備地址 ? 它連接在哪個 I2C Controller 上,即對應的 i2c_adapter 是什么 使用 i2c_client 來表示一個 I2C Device 圖 10.29 i2c_client 怎么表示要傳輸的數據 在上面的i2c_algorithm結構體中可以看到要傳輸的數據被稱為:i2c_msg i2c_msg 原型: 圖 10.30 i2c_msg ? i2c_msg 中的 flags 用來表示傳輸方向:bit 0 等于 I2C_M_RD 表示 讀,bit 0 等于 0 表示寫 ? 一個 i2c_msg 要么是讀,要么是寫 286 / 577 舉例:設備地址為 0x50 的 EEPROM,要讀取它里面存儲地址為 0x10 的一個字節, 應該構造幾個 i2c_msg?要構造 2 個 i2c_msg c) 第一個 i2c_msg 表示寫操作,把要訪問的存儲地址 0x10 發給設備 d) 第二個 i2c_msg 表示讀操作 代碼如下 u8 data_addr = 0x10; i8 data; struct i2c_msg msgs[2]; msgs[0].addr = 0x50; msgs[0].flags = 0; msgs[0].len = 1; msgs[0].buf = &data_addr; msgs[1].addr = 0x50; msgs[1].flags = I2C_M_RD; msgs[1].len = 1; msgs[1].buf = &data; 10.4.2 內核里怎么傳輸數據

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/163709.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/163709.shtml
英文地址,請注明出處:http://en.pswp.cn/news/163709.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

母嬰團隊半年破億秘訣揭秘,合規經營成就輝煌

這支母嬰產品銷售團隊在短短半年內實現了過億的銷售額,這是一個令人矚目的成就。他們既不依賴線下門店,也不是傳統的電商平臺,那么他們是如何做到這一點的呢? 這個團隊從16年10月開始經營母嬰產品,如今已經過去了6年時…

生成式AI:SEO的末日?

由于在搜索結果中引入生成式AI (GAI),以 SEO 為主導的內容的未來成為最近的熱門話題,這是有充分理由的。 對于出版商和網站所有者(從現在開始我們將他們稱為內容創建者)的影響可能是毀滅性的。 如下圖所示,谷歌新的搜…

成為AI產品經理——模型構建過程(上)

目錄 一、背景 1.對內 2.對外 二、模型構建過程 1.模型設計 2.特征工程 ① 數據清洗 ② 特征提取 數值型數據 標簽/描述類數據特征 非結構化數據(處理文本特征) 網絡關系型數據 ③ 特征選擇 ④ 訓練集/測試集 一、背景 雖然產品經理不…

Linux應用開發基礎知識——I2C應用編程(十二)

前言: I2C(Inter-Integrated Circuit BUS)是集成電路總線,是目前應用最廣泛的總線之一,最初由PHILIPS(現為NXP)設計。它使用多主從架構,主要用于連接低速周邊設備。I2C總線在硬件物理…

WorkPlus即時通訊,打通上下游產業鏈,構建企業生態圈

如今,隨著信息技術的迅速發展,智慧水務、智慧醫療、智慧城市、智慧教育、智慧政務等領域正蓬勃發展。在這個智慧時代,企業需要一個具備開放性和擴展性的平臺級產品,以滿足多樣化的業務需求。WorkPlus作為一款全新的移動底座產品&a…

String 真的不可變嗎?

為什么 String 類不可變 final修飾符: String類被聲明為final,這意味著它不能被繼承。因此,無法創建String的子類來修改其行為。私有字符數組(char[]): String類內部使用私有的字符數組來存儲字符串的內容…

Excel文件比較不再繁瑣,xlCompare助您快速找出差異

概要 在現代職場中,Excel 已成為工作中不可或缺的利器。 在日常操作中,我們會遇到需要對兩個或多個 Excel 文件進行比較的情況,此時,一款高效的 Excel 文件比較工具就顯得尤為重要。 本文將為您介紹一款功能強大、優勢明顯的 Exc…

創新建筑形式:氣膜體育館助力校園體育設施革新

體育場館在校園中扮演著重要的角色,是學生們進行體育鍛煉、比賽和各類體育活動的場所。傳統的室內體育館建設往往需要大量資金和漫長的建設周期,但隨著氣膜體育館的嶄露頭角,校園體育設施的面貌正迎來一場革新。 快速搭建,靈活性極…

電機應用開發-直流有刷電機電流環控制實現

目錄 直流有刷電機電流環控制實現 硬件設計 直流電機電流環控制-位置式PID實現 編程要點 配置ADC可讀取電流值 配置基本定時器6產生定時中斷讀取當前電路中驅動電機的電流值并執行PID運算 配置定時器1輸出PWM控制電機 ADC數據處理 編寫位置式PID算法 直流電機電流環控…

3、領導跟你談話,講到你的團隊里面的好友,公司會進行觀察裁員,你會去傳話么?

作為一個團隊成員,我會認真聽取領導的意見,并尊重公司的決定。然而,作為一個好友,我也會考慮他們的利益,我會與他們溝通,提醒他們注意自己的表現和工作,努力提高業績和工作質量,以確…

5個免費在線工具推薦

NSDT 三維場景建模工具GLTF/GLB在線編輯器Three.js AI自動紋理化開發包YOLO 虛幻合成數據生成器3D模型在線轉換 1、NSDT 三維場景建模 訪問地址:NSDT 編輯器 2、GLTF/GLB在線編輯器 訪問地址:GLTF 編輯器 3、Three.js AI自動紋理化開發包 圖一為原始模…

Linux下安裝兩個版本python

1 python下載: 官網地址:Download Python | Python.org 第一:點擊下載如下圖: 第二:找到對應的python版本源碼包: 點擊右鍵復制下載地址,如下圖 例如我的是:https://www.python.org/…

【鴻蒙應用ArkTS開發系列】- 云開發入門實戰二 實現省市地區聯動地址選擇器組件(上)

目錄 概述 云數據庫開發 一、創建云數據庫的對象類型。 二、預置數據(為對象類型添加數據條目)。 三、部署云數據庫 云函數實現業務邏輯 一、創建云函數 二、云函數目錄講解 三、創建resources目錄 四、獲取云端憑據 五、導出之前創建的元數據…

企業如何通過軟文推廣提高競爭力

數字時代我們每天接收到的信息遠遠超過可接受的量,且技術進步帶來的“信息繭房”使用戶很難獲取真正有效的信息,但越是雜亂的信息環境,有價值信息的穿透力就越強,軟文推廣正是憑借價值感信息助力企業提高競爭力,接下來…

RabbitMQ快速學習之WorkQueues模型、三種交換機、消息轉換器(SpringBoot整合)

文章目錄 前言一、WorkQueues模型消息發送消息接收能者多勞 二、交換機類型1.Fanout交換機消息發送消息接收 2.Direct交換機消息接收消息發送 3.Topic交換機消息發送消息接收 三、編程式聲明隊列和交換機fanout示例direct示例基于注解 四、消息轉換器總結 前言 WorkQueues模型…

C plus plus

環境配置 vscodewindows vscode c 環境配置(終極版)_vscode配置c/c環境_BangBang的博客-CSDN博客VsCode安裝和配置C環境詳細全流程_vscode安裝c-CSDN博客MinGW、MinGW-w64 與TDM-GCC 應該如何選擇? - 知乎、VsCode安裝和配置C環境詳細全流程_vscode安裝c-CSDN博客 …

?LeetCode解法匯總5-正則表達式匹配?

目錄鏈接: 力扣編程題-解法匯總_分享記錄-CSDN博客 GitHub同步刷題項目: https://github.com/September26/java-algorithms 原題鏈接:力扣(LeetCode)官網 - 全球極客摯愛的技術成長平臺 描述: 「HTML 實…

Educoder中Hive綜合應用案例——用戶學歷查詢

第1關:查詢每一個用戶從出生到現在的總天數 ---------- 禁止修改 ----------drop database if exists mydb cascade; ---------- 禁止修改 -------------------- begin ---------- ---創建mydb數據庫 create database mydb;---使用mydb數據庫 use mydb;---創建表user create …

電腦找不到xinput1_3.dll怎么修復,快速處理dll問題的5個方法分享

在使用電腦的過程中,我們常常會遇到一些常見的問題,其中之一就是“電腦缺少xinput1_3.dll”。這個問題可能會影響到我們對電腦的使用體驗,甚至導致某些軟件無法正常運行。在我遇到這個問題并解決之后,我深刻地體會到了解決問題的重…

迅鐳激光板材切割自動化生產線中標高端機械裝備龍頭豪邁集團!

近年來,中國制造業逐步由低端制造業向高端制造業邁進、由勞動密集型向技術密集型轉變,智能制造帶動了制造業生產環節的自動化、信息化、數字化、智能化的迭代升級。 位于山東省的高端機械裝備龍頭——豪邁集團,緊跟國家發展戰略,加…