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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux iio 设备驱动,Linux设备驱动之IIO子系统——IIO框架数据读取-Go语言中文社区...

發布時間:2024/9/27 linux 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux iio 设备驱动,Linux设备驱动之IIO子系统——IIO框架数据读取-Go语言中文社区... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

IIO DATA ACCESS IIO數據獲取

只有兩種方法可以使用IIO框架訪問數據; 通過sysf通道進行一次性捕獲,或通過IIO字符設備進行連續模式(觸發緩沖)。

One-shot capture:單次獲取

一次性數據捕獲通過sysfs接口完成。 通過讀取與通道對應的sysfs條目,您將僅捕獲特定于該通道的數據。 給定一個帶有兩個通道的溫度傳感器:一個用于環境溫度,另一個用于熱電偶溫度:

# cd /sys/bus/iio/devices/iio:device0

# cat in_voltage3_raw6646# cat in_voltage_scale0.305175781

通過將比例乘以原始值來獲得處理值。

Voltage value: 6646 * 0.305175781 = 2028.19824053

器件數據表說過程值以mV給出。 在我們的例子中,它對應于2.02819V。

Buffer data access:緩沖區數據獲取

要使觸發的采集工作,必須在驅動程序中實現觸發器支持。 然后,要從用戶空間內獲取數據,必須:創建觸發器,分配它,啟用ADC通道,設置緩沖區的維度,并啟用它。這里主要介紹兩種:sysfs觸發器和hrtimer觸發器。

使用sysfs觸發器獲取:

使用sysfs觸發器捕獲數據包括發送一組命令少量sysfs文件。 讓我們列舉一下我們應該做些什么來實現這一目標:

1. 創建觸發器:在將觸發器分配給任何設備之前,應該創建它:

# echo 0 > /sys/devices/iio_sysfs_trigger/add_trigger

這里,0對應于我們需要分配給觸發器的索引。 在此命令之后,觸發器目錄將在/ sys / bus / iio / devices /下作為trigger0。

2. 將觸發器分配給設備:觸發器由其名稱唯一標識,我們可以使用該觸發器將設備綁定到觸發器。 由于我們使用0作為索引,因此觸發器將命名為sysfstrig0:

# echo sysfstrig0 > /sys/bus/iio/devices/iio:device0/trigger/current_t

我們也可以使用下面這個命令:cat /sys/bus/iio/devices/trigger0/name> /sys/bus/iio/devices/iio:device0/trigger/current_trigger. 也就是說,如果我們編寫的值與現有的觸發器名稱不對應,則不會發生任何事情。 為了確保我們真正定義了一個觸發器,我們可以使用cat/sys/bus/iio/devices/iio:device0/trigger/current_trigger.

3. 啟用掃描元素:此步驟包括選擇將其數據值推入緩沖區的通道。 應該注意驅動程序中的available_scan_masks:

# echo 1 > /sys/bus/iio/devices/iio:device0/scan_elements/in_voltage4_en

# echo1 > /sys/bus/iio/devices/iio:device0/scan_elements/in_voltage5_en

# echo1 > /sys/bus/iio/devices/iio:device0/scan_elements/in_voltage6_en

# echo1 > /sys/bus/iio/devices/iio:device0/scan_elements/in_voltage7_en

4. 設置緩沖區大小:這里應該設置緩沖區可以保存的樣本集數量:

# echo 100 > /sys/bus/iio/devices/iio:device0/buffer/length

5. 啟用緩沖區:此步驟包括將緩沖區標記為準備接收推送數據:

# echo 1 > /sys/bus/iio/devices/iio:device0/buffer/enable

要停止捕獲,我們必須在同一個文件中寫入0。

6.使能觸發器:啟動采集:

# echo 1 > /sys/bus/iio/devices/trigger0/trigger_now

現在數據獲取已經完成,下一步我們可以

7. 禁用緩沖區:

# echo 0 > /sys/bus/iio/devices/iio:device0/buffer/enable

8.分離觸發器Detach the trigger:

# echo "" > /sys/bus/iio/devices/iio:device0/trigger/current_trigger

9.轉儲IIO字符設備的內容

# cat /dev/iio:device0 | xxd –

使用hrtimer觸發器獲取(4.5及以上內核版本)

以下是允許使用hrtimer觸發器捕獲數據的命令集:

# echo /sys/kernel/config/iio/triggers/hrtimer/trigger0

# echo50 > /sys/bus/iio/devices/trigger0/sampling_frequency

# echo1 > /sys/bus/iio/devices/iio:device0/scan_elements/in_voltage4_en

# echo1 > /sys/bus/iio/devices/iio:device0/scan_elements/in_voltage5_en

# echo1 > /sys/bus/iio/devices/iio:device0/scan_elements/in_voltage6_en

# echo1 > /sys/bus/iio/devices/iio:device0/scan_elements/in_voltage7_en

# echo1 > /sys/bus/iio/devices/iio:device0/buffer/enable

# cat/dev/iio:device0 | xxd -

0000000: 0188 1a30 0000 0000 8312 68a8 c24f 5a14 ...0......h..OZ.0000010: 0188 1a30 0000 0000 192d 98a9 c24f 5a14 ...0.....-...OZ.

[...]

然后,我們查看類型以確定如何處理數據:

$ cat /sys/bus/iio/devices/iio:device0/scan_elements/in_voltage_type

be:s14/16>>2

Voltage processing: 0x188 >> 2 = 98 * 250 = 24500 = 24.5 v

IIO tools

您可以使用一些有用的工具來簡化和加快使用IIO設備開發應用程序的速度。 它們在內核樹中的tools / iio中可用:

lsiio.c:枚舉IIO觸發器,設備和通道

iio_event_monitor.c: 監視IIO設備的IIO事件的ioctl接口

generic_buffer.c: 檢索,處理和打印從IIO設備緩沖區接收的數據

libiio: 一個功能強大的庫,由模擬設備開發,用于接口IIO設備,可從https://github.com/analogdevicesinc/libiio獲得。

總結

以上是生活随笔為你收集整理的linux iio 设备驱动,Linux设备驱动之IIO子系统——IIO框架数据读取-Go语言中文社区...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成年人视频免费看 | 色狠狠综合 | 国产精品99久久久久久久久 | 天天狠狠 | 婷婷在线一区 | 97操操| 一区二区不卡免费视频 | 精品久久久一区二区 | 国产成人精品免费看视频 | 国产日韩精品一区二区三区在线 | 日韩人妻一区二区三区蜜桃视频 | 少妇精品 | 国产色视频 | 尤物毛片| 久久爱一区 | 在线看一区二区 | 先锋资源中文字幕 | 一级黄色片网站 | 欧美乱大交xxxxx潮喷l头像 | 日本不卡一区二区三区视频 | 欧美夫妻性生活视频 | 中文字幕在线不卡 | 久久久久免费精品视频 | 中文字幕激情小说 | 可以免费观看的毛片 | 91香蕉视频在线 | 中文字幕色片 | 午夜影院a | 99国产精品 | 在线看片福利 | 国产一区二区久久精品 | 不许穿内裤随时挨c调教h苏绵 | 最近中文字幕在线免费观看 | 在线黄色av| 岛国二区三区 | 国产伦理片在线观看 | 日韩精品123 | 狠狠人妻久久久久久综合麻豆 | 日本韩国欧美一区二区三区 | 变态 另类 国产 亚洲 | 一本大道东京热无码 | 亚洲少妇18p| 天堂av手机版 | 天天看天天做 | 欧美色v | 中文字幕8| 伊人久久大香线蕉av色婷婷色 | 欧美精品色呦呦 | 成人综合区一区 | videos另类灌满极品另类 | 久久综合中文字幕 | 久久免费视频播放 | 精品视频网站 | 亚洲av无码国产综合专区 | 草久影院 | 真实偷拍激情啪啪对白 | 欧美一区二区三区大屁股撅起来 | 成年午夜视频 | 男生尿隔着内裤呲出来视频 | 国产又黄又粗 | 欧美大片一区 | 激情欧美网站 | 少妇福利视频 | 欧美亚洲综合另类 | 中文字幕成人在线观看 | 国产成人精品视频一区二区 | 天天曰天天操 | 午夜电影一区二区 | 日韩爱爱视频 | 97免费在线观看视频 | 欧美日韩国产精品一区二区三区 | 顶级黄色片 | 欧美日日操 | 韩国美女被c | 91久久精品国产91性色69 | 国产综合一区二区 | 亚洲黄色在线观看视频 | 亚洲精品国产精品乱码 | a级片免费视频 | 成人免费毛片片v | 国产一区在线不卡 | 欧美第一视频 | 91丨九色丨蝌蚪丨老版 | jizz毛片 | 波多野结衣黄色 | 欧美黄色免费大片 | 久久久久99精品成人片试看 | 看全色黄大色黄大片大学生 | 亚洲国产日韩一区二区 | 麻豆福利视频 | 欧美三级手机在线观看 | 97精品国产97久久久久久春色 | 菲律宾av| 性欧美丰满熟妇xxxx性仙踪林 | 一区三区在线观看 | 天天干天天干 | 国产片淫乱18一级毛片动态图 | 国产在线观看免费视频软件 | 国产精品久久国产愉拍 |