原创 Linux驅動開發-10、Linux延時處理

Linux延時處理 1、Linux 內核提供三個函數 a) void ndelay(unsigned long nsecs) //納秒 b) void udelay(unsigned long nsecs) //微秒 c) void md

原创 Linux驅動開發、17-輸入子系統淺析

輸入子系統 1、概念:內核對分散的,多種不同類別的輸入設備進行統一處理的驅動程序。 2、輸入子系統的好處: a) 統一物理形態各異的相似的輸入設備的處理功能 b) 提供了用於分發輸入報告給用戶應用程序的簡單事件(event)接口。驅動程序

原创 Linux Shell 編程語法

Shell 編程 變量 1.變量賦值方式 a) var=value #這種賦值方式需要value沒有空格符號 b) var=”value” #包含空格的變量可以這樣賦值 2.變量應用:$變量名 3.環境變量 a) HOME b) PWD

原创 Linux驅動開發、19-I2C子系統之客戶驅動分析與移植

I2C子系統_設備驅動移植     用戶程序通過I2C設備驅動程序訪問步驟是這樣的...   用戶的操作函數---/sys/bus/i2c/devices/....->設備驅動的操作函數---->最終回調i2c-core的函數實現數據的通

原创 Linux驅動開發、18-I2C子系統之用戶態驅動設計

Linux 系統下的I2C子系統 子系統架構   1. I2C核心 I2C 總線和 I2C 設備驅動的中間樞紐,它提供了I2C 總線驅動和設備驅動的註冊、註銷方法等。 2. i2c-dev 通用驅動 2.I2C控制器(適配器)驅動 對I2

原创 Linux驅動開發-13、平臺總線驅動模型

平臺總線驅動模型 1.概念 a) 一種虛擬總線,由內核創建 b) 一般在內核代碼中已近註冊了相應的平臺資源,在sys/bus/platform中可以查看平臺的設備和驅動   2.平臺設備:(查看內核document/driver-mode

原创 Linux驅動開發-8、中斷分層機制_軟中斷

中斷分層機制_軟中斷 1、概念: 軟中斷是模擬硬件中斷的概念,實現宏觀上的異步執行效果。其實tasklet也是基於軟中斷實現的。 2、軟中斷和硬中斷的區別 a) 硬中斷是外部設備對CPU的中斷,軟中斷時程序對內核的中斷 b) 信號是由內核

原创 Linux驅動開發-中斷分層機制_工作隊列 筆記 7

中斷分層機制_工作隊列 1.工作隊列概念: a) 任務推後執行 b) 被推後的任務由“內核線程”執行 c) 允許重新調度和睡眠 d) 這些被推後的工作組成一個雙向鏈表,既稱爲工作隊列 2.運行機制 註釋: 1.每個CPU都有獨立

原创 Linux驅動開發-中斷處理模型筆記 5

中斷處理模型 1、概念解析 a) I/O操作的不確定因素以及處理器和I/O設備之間速度不匹配,設備往往通過某種硬件信號異步喚起處理器的注意 b) 這些硬件信號就稱爲 中斷,每個設備都被分配了一個相關的標示符,別稱爲中斷請求號(IRQ)

原创 標準I/O庫 筆記

標準I/O庫 1.流和FILE對象 a) ASCII字符集:一個字符用一個字節表示 b) 國際字符:一個字符可以用多個字節表示 c) 標準I/O文件流可以用於單字節或者多字節字符集 2.流定向 a) 決定所讀、寫的字符是單字節或者是多字

原创 建立目標板Linux系統

建立目標板Linux系統 1、步驟 a) 決定系統組件 b) 配置及建立內核 c) 建立根文件系統 d) 設置引導軟件與配置 2、爲嵌入式系統開發軟件 3、網絡功能: a) 網絡功能讓嵌入式系統能夠跟外界交互。 b) HTTP, Teln

原创 Linux驅動開發-中斷分層機制筆記 6

中斷分層機制—tasklet 中斷上下文 因爲中斷產生時會打斷當前佔用CPU的進程,爲儘量提高進程的運行效率,不會卡頓,從而使中斷服務程序分爲頂半部和底半部兩個部分 頂部分是用來處理應急事件,特別是硬件相關;之後將CPU使用權交個當前進

原创 守護進程-解析

守護進程-解析 1.概念:守護進程也稱爲精靈進程,是生存期較長的一種進程 a) 系統自舉啓動,系統關閉時終止 b) 沒有控制終端,在後臺運行 2.終端查看守護進程 a) ps -axj i. -a 顯示由其他用戶所擁有的進程狀態 ii. 

原创 Linux驅動開發、20-SPI子系統分析

SPI總線 基礎概念:   SPI(Serial Peripheral Interface,串行外圍設備接口)總線,串行 主-從接口;很多集成與微控制器內部。   四線制,全雙共模式,速度達到幾兆,四線分別爲: SCLK(Serial C

原创 C++順序容器

C++順序容器 October 27, 2016 3:09 PM 容器的概念   容器容納特定類型對象的集合;也可以這麼理解:容器是一種數據結構,如list,vector,和deques ,以模板類的方法提供。爲了訪問容器中的數據,可以使