筆記參考了宋寶華老師的《Linux設備驅動開發詳解:基於最新的Linux 4.0內核》以及韋東山老師的嵌入式驅動教程 筆記開發環境: 單板:第一章到第八章使用TINY4412-1611;第九章及之 ...
筆記參考了宋寶華老師的《Linux設備驅動開發詳解:基於最新的Linux 4.0內核》以及韋東山老師的嵌入式驅動教程 筆記開發環境: 單板:第一章到第八章使用TINY4412-1611;第九章及之 ...
一、MMC簡介 eMMC使用BGA封裝了Nand Flash和Flash控制器,向外提供MMC標准接口,其結構圖如下圖所示(圖來自《eMMC5.1官方標准協議》)。eMMC的出現使得手機廠商就能專注 ...
和手機一樣,開發板中也帶有調整背光亮度的功能。 調整背光亮度依賴於PWM,它通過調節脈沖寬度來控制背光亮度,此方式需要使用PWM驅動。本章將對其進行講解。 一、用戶空間調整背光亮 ...
一、V4L2框架主要結構體分析 V4L2(video for linux version 2),是內核中視頻設備的驅動框架,為上層訪問視頻設備提供統一接口。 V4L2整體框架如下圖: ...
在讀者學習本章以及后續章節之前,最好擁有ADC和觸摸屏裸機基礎,可以參考:ADC和觸摸屏編程。 和按鍵驅動類似,觸摸屏也是通過電平來體現按下或松開。因此如果想要寫出通用的觸摸屏驅動,需要 ...
由於之后的觸摸屏驅動分析中使用到了GPIO子系統和i2c子系統,因此在分析觸摸屏驅動之前我准備把這兩個子系統進行簡單分析。 在讀者學習本章以及后續i2c相關章節之前,最好了解i2c通信方 ...
一、DMA簡介 DMA(Direct Memory Access,直接內存存取),DMA傳輸將數據從一個地址空間復制到另外一個地址空間。傳輸過程由DMA控制器獨立完成,它並沒有拖延CPU的工作,可以 ...
一、USB固件和USB傳輸方式 USB固件: USB固件一般不需要我們編寫,在此不做程序分析。 USB固件中包含USB設備的出廠信息,如廠商ID、產品ID、主版本號和次版本號等。這就是為什么當我 ...
由於之后的觸摸屏驅動分析中使用到了GPIO子系統和i2c子系統,因此在分析觸摸屏驅動之前我准備把這兩個子系統進行簡單分析。 之前我們使用GPIO引腳的方式並不是推薦的方式,當我們更改某一 ...
在讀者學習本章以及后續LCD相關章節之前,最好擁有LCD裸機基礎,可以參考:LCD編程。 在內核中,表示LCD使用的是framebuffer(幀緩沖,簡寫為fb),其內容對應於屏幕上的界 ...