0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux,IIO驅(qū)動(dòng)完結(jié)有感

百問科技 ? 來源:百問科技 ? 2024-12-06 09:45 ? 次閱讀

1. 我錄制45天,你學(xué)完只需要1天

歷時(shí)1個(gè)半月,驅(qū)動(dòng)大全I(xiàn)IO驅(qū)動(dòng)完結(jié)了!20個(gè)視頻,時(shí)長5小時(shí)45分鐘。大綱如下:

01.1_IIO子系統(tǒng)簡化框架
01.2_DHT11操作原理與編程思路
01.3_DHT11驅(qū)動(dòng)程序體驗(yàn)_IMX6ULL
01.3_DHT11驅(qū)動(dòng)程序體驗(yàn)_STM32MP157
01.4_DHT11驅(qū)動(dòng)程序分析
01.5_通道的sysfs信息修改與體驗(yàn)
02.1_iio_buffer的核心要素與體驗(yàn)
02.2_增加iio_buffer并體驗(yàn)sysfs
02.3_實(shí)現(xiàn)iio_buffer的寫入
03.1_iio_trigger的引入與體驗(yàn)
03.2_iio_trigger內(nèi)部機(jī)制
03.3_iio-trig-hrtimer分析
03.4_修改DHT11驅(qū)動(dòng)使用iio_trigger
04.1_iio_event的引入與體驗(yàn)
04.2_修改DHT11驅(qū)動(dòng)使用iio_event_編程
04.3_修改DHT11驅(qū)動(dòng)使用iio_event_上機(jī)測試
04.4_使用trigger寫iio_event(不實(shí)用)
05.1_驅(qū)動(dòng)示例_IMX6ULL的ADC驅(qū)動(dòng)
05.2_驅(qū)動(dòng)示例_STM32MP157的ADC驅(qū)動(dòng)
05.3_STM32MP157的ADC驅(qū)動(dòng)分析

2. Linux驅(qū)動(dòng):用起來很爽,能用起來很困難

Linux驅(qū)動(dòng)的發(fā)展已經(jīng)形成了一個(gè)又一個(gè)的山頭,觸摸屏有"輸入子系統(tǒng)",I2C設(shè)備有"I2C子系統(tǒng)"。

硬件的差異必然導(dǎo)致訪問的差異,這很正常。

但是對(duì)于IIO子系統(tǒng),在常規(guī)的"/dev/xxx"設(shè)備節(jié)點(diǎn)外,又增加了"sysfs"文件的訪問,

而你要理解如何使用這些"sysfs",又必須理解IIO子系統(tǒng)的設(shè)計(jì)思路,

也就是一個(gè)寫APP的人,需要去理解內(nèi)核IIO子系統(tǒng)的知識(shí)。

即使作為Linux驅(qū)動(dòng)開發(fā)工程師,去理解IIO子系統(tǒng)也是困難的:

它使用"虛擬中斷控制器"管理傳感器的硬件操作函數(shù),

使用各類"trigger"l來實(shí)現(xiàn)不同方式的讀取方法:比如循環(huán)讀取、周期性讀取。

聽不懂了吧?

我一開始也是懵的!你能一下子看懂下面這個(gè)框圖嗎?

7dcbcd2e-b0a0-11ef-93f3-92fbcf53809c.png

Linux內(nèi)核里,習(xí)慣引入大量的結(jié)構(gòu)體,引入新的框架,但是又沒有足夠的注釋。

這就導(dǎo)致:

對(duì)于某個(gè)知識(shí)點(diǎn),已經(jīng)學(xué)會(huì)的人用起來很高效、很爽

但是,如果你想"學(xué)會(huì)",成本很高,很耗時(shí)

這就導(dǎo)致很多驅(qū)動(dòng)開發(fā)者,直接越過各類框架,比如越過IIO子系統(tǒng),簡單粗暴地使用字符設(shè)備操作傳感器。

3. 百問網(wǎng)的意義

我們研究Linux,轉(zhuǎn)換為教程,讓工程師更高效地理解、使用Linux,這就是我們存在的意義。

比如PCIE驅(qū)動(dòng),我們錄制了半年;IIO驅(qū)動(dòng),我們錄制了1個(gè)半月;你們只需要學(xué)習(xí)幾天。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 驅(qū)動(dòng)
    +關(guān)注

    關(guān)注

    12

    文章

    1844

    瀏覽量

    85395
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11324

    瀏覽量

    209938

原文標(biāo)題:難用的Linux,IIO驅(qū)動(dòng)完結(jié)有感

文章出處:【微信號(hào):baiwenkeji,微信公眾號(hào):百問科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Linux驅(qū)動(dòng)程序程序員指南

    電子發(fā)燒友網(wǎng)站提供《Linux驅(qū)動(dòng)程序程序員指南.pdf》資料免費(fèi)下載
    發(fā)表于 11-22 15:53 ?0次下載
    <b class='flag-5'>Linux</b><b class='flag-5'>驅(qū)動(dòng)</b>程序程序員指南

    Wilink8 Linux Wi-Fi驅(qū)動(dòng)程序R8.8版用戶指南

    電子發(fā)燒友網(wǎng)站提供《Wilink8 Linux Wi-Fi驅(qū)動(dòng)程序R8.8版用戶指南.pdf》資料免費(fèi)下載
    發(fā)表于 11-05 09:19 ?0次下載
    Wilink8 <b class='flag-5'>Linux</b> Wi-Fi<b class='flag-5'>驅(qū)動(dòng)</b>程序R8.8版用戶指南

    linux內(nèi)核中通用HID觸摸驅(qū)動(dòng)

    linux內(nèi)核中,為HID觸摸面板實(shí)現(xiàn)了一個(gè)通用的驅(qū)動(dòng)程序,位于/drivers/hid/hid-multitouch.c文件中。hid觸摸驅(qū)動(dòng)是以struct hid_driver實(shí)現(xiàn),首先定義一個(gè)描述hid觸摸
    的頭像 發(fā)表于 10-29 10:55 ?816次閱讀
    <b class='flag-5'>linux</b>內(nèi)核中通用HID觸摸<b class='flag-5'>驅(qū)動(dòng)</b>

    用于bq275xx電量計(jì)的WinCE/Linux驅(qū)動(dòng)程序

    電子發(fā)燒友網(wǎng)站提供《用于bq275xx電量計(jì)的WinCE/Linux驅(qū)動(dòng)程序.pdf》資料免費(fèi)下載
    發(fā)表于 10-17 11:17 ?0次下載
    用于bq275xx電量計(jì)的WinCE/<b class='flag-5'>Linux</b><b class='flag-5'>驅(qū)動(dòng)</b>程序

    LSP 2.10 DaVinci Linux驅(qū)動(dòng)程序

    電子發(fā)燒友網(wǎng)站提供《LSP 2.10 DaVinci Linux驅(qū)動(dòng)程序.pdf》資料免費(fèi)下載
    發(fā)表于 10-09 09:30 ?0次下載
    LSP 2.10 DaVinci <b class='flag-5'>Linux</b><b class='flag-5'>驅(qū)動(dòng)</b>程序

    linux系統(tǒng)的設(shè)備驅(qū)動(dòng)一般分幾類

    Linux系統(tǒng)的設(shè)備驅(qū)動(dòng)是操作系統(tǒng)與硬件設(shè)備之間的橋梁,負(fù)責(zé)實(shí)現(xiàn)操作系統(tǒng)與硬件設(shè)備之間的通信和控制。Linux系統(tǒng)的設(shè)備驅(qū)動(dòng)可以分為以下幾類: 字符設(shè)備
    的頭像 發(fā)表于 08-30 15:13 ?476次閱讀

    Linux設(shè)備驅(qū)動(dòng)程序分類有哪些

    Linux設(shè)備驅(qū)動(dòng)程序是操作系統(tǒng)與硬件設(shè)備之間的橋梁,負(fù)責(zé)實(shí)現(xiàn)硬件設(shè)備與操作系統(tǒng)之間的通信和控制。Linux設(shè)備驅(qū)動(dòng)程序的分類繁多,可以根據(jù)不同的標(biāo)準(zhǔn)進(jìn)行分類。 按硬件類型分類
    的頭像 發(fā)表于 08-30 15:11 ?625次閱讀

    linux驅(qū)動(dòng)程序如何加載進(jìn)內(nèi)核

    Linux系統(tǒng)中,驅(qū)動(dòng)程序是內(nèi)核與硬件設(shè)備之間的橋梁。它們允許內(nèi)核與硬件設(shè)備進(jìn)行通信,從而實(shí)現(xiàn)對(duì)硬件設(shè)備的控制和管理。 驅(qū)動(dòng)程序的編寫 驅(qū)動(dòng)程序的編寫是
    的頭像 發(fā)表于 08-30 15:02 ?527次閱讀

    linux驅(qū)動(dòng)程序主要有哪些功能

    Linux驅(qū)動(dòng)程序是操作系統(tǒng)與硬件設(shè)備之間進(jìn)行通信的橋梁,負(fù)責(zé)實(shí)現(xiàn)硬件設(shè)備與操作系統(tǒng)之間的數(shù)據(jù)交換和控制。Linux驅(qū)動(dòng)程序的主要功能包括以下幾個(gè)方面: 設(shè)備識(shí)別與初始化
    的頭像 發(fā)表于 08-30 14:47 ?413次閱讀

    linux驅(qū)動(dòng)程序的編譯方法是什么

    Linux驅(qū)動(dòng)程序的編譯方法主要包括兩種: 與內(nèi)核一起編譯 和 編譯成獨(dú)立的內(nèi)核模塊 。以下是對(duì)這兩種方法的介紹: 一、與內(nèi)核一起編譯 與內(nèi)核一起編譯意味著將驅(qū)動(dòng)程序的源代碼直接集成到Linu
    的頭像 發(fā)表于 08-30 14:46 ?681次閱讀

    linux驅(qū)動(dòng)程序的編譯方法有哪兩種

    Linux驅(qū)動(dòng)程序的編譯方法主要可以歸納為兩種: 手動(dòng)編譯 和 使用內(nèi)核構(gòu)建系統(tǒng)(Makefile)自動(dòng)編譯 。 1. 手動(dòng)編譯 手動(dòng)編譯驅(qū)動(dòng)程序通常涉及直接使用GCC(GNU Compiler
    的頭像 發(fā)表于 08-30 14:39 ?828次閱讀

    linux驅(qū)動(dòng)程序運(yùn)行在什么空間

    Linux 驅(qū)動(dòng)程序是操作系統(tǒng)的一部分,負(fù)責(zé)管理硬件設(shè)備與操作系統(tǒng)之間的交互。驅(qū)動(dòng)程序運(yùn)行在內(nèi)核空間(Kernel Space),這是操作系統(tǒng)的核心部分,與用戶空間(User Space)相對(duì)。內(nèi)核
    的頭像 發(fā)表于 08-30 14:37 ?463次閱讀

    Linux 驅(qū)動(dòng)開發(fā)與應(yīng)用開發(fā),你知道多少?

    一、Linux驅(qū)動(dòng)開發(fā)與應(yīng)用開發(fā)的區(qū)別開發(fā)層次不同:Linux驅(qū)動(dòng)開發(fā)主要是針對(duì)硬件設(shè)備進(jìn)行編程,處于操作系統(tǒng)內(nèi)核層,直接與硬件交互,為上層應(yīng)用提供設(shè)備訪問的接口。
    的頭像 發(fā)表于 08-30 12:16 ?863次閱讀
    <b class='flag-5'>Linux</b> <b class='flag-5'>驅(qū)動(dòng)</b>開發(fā)與應(yīng)用開發(fā),你知道多少?

    虹科技術(shù) Linux環(huán)境再升級(jí):PLIN驅(qū)動(dòng)程序正式發(fā)布

    Linux驅(qū)動(dòng)程序領(lǐng)域再添新成員,PLIN驅(qū)動(dòng)程序現(xiàn)已正式發(fā)布。
    的頭像 發(fā)表于 06-28 13:34 ?385次閱讀
    虹科技術(shù) <b class='flag-5'>Linux</b>環(huán)境再升級(jí):PLIN<b class='flag-5'>驅(qū)動(dòng)</b>程序正式發(fā)布

    驅(qū)動(dòng)ST-Link VCP Ctrl安裝失敗,且設(shè)備管理器中有感嘆號(hào)怎么解決?

    目前的現(xiàn)象是:驅(qū)動(dòng) ST-Link VCP Ctrl安裝失敗,且設(shè)備管理器中有感嘆號(hào),但是IAR程序燒錄正常。 請問有遇到類似情況的童鞋??? 請求指導(dǎo)~
    發(fā)表于 04-23 07:48