日韩性视频-久久久蜜桃-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语言中文社区...的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 精品久久不卡 | 在线永久看片免费的视频 | 国产露脸无套对白在线播放 | 亚洲精品视频在线观看免费视频 | 又色又爽又黄无遮挡的免费视频 | 亚洲精品乱码久久久久久国产主播 | 日人视频 | 靠逼在线观看 | 欧美精品aa | 黄色网址在线免费看 | 亚洲精品国产精华液 | 制服丝袜国产精品 | 黄色一级大片免费版 | 91插插插插插插插 | 亚洲乱子伦 | 91久久精品国产91久久 | 91视频免费网址 | www.色在线 | 天堂综合在线 | 国产永久免费视频 | 自拍偷拍亚洲图片 | 亚洲第一视频在线观看 | 亚洲乱色熟女一区二区三区 | 国产a黄 | 日韩欧美在线观看一区二区 | 欧美一区二区三 | 污污内射久久一区二区欧美日韩 | 久艹视频在线观看 | 五月婷婷六月综合 | 色婷婷av一区二区三区在线观看 | 136fldh导航福利微拍 | 麻豆三级在线观看 | 精品人妻在线播放 | 黄色免费在线观看网站 | 91在线一区二区三区 | 夫妻淫语绿帽对白 | 97一区二区三区 | 亚洲aaaa级特黄毛片 | 成人网在线免费观看 | 小箩莉末发育娇小性色xxxx | 91丨porny丨首页 | 免费手机av| 久久久久久一级片 | 免费黄片毛片 | 亚洲精品自拍 | 日本美女性爱视频 | 男女免费观看视频 | 91av官网| 国产靠逼视频 | 中文视频一区二区 | 久久99精品国产麻豆婷婷洗澡 | 校园春色 亚洲色图 | 黄色小毛片 | 久草网站 | 国产欧美一区二区三区国产幕精品 | 噜噜噜色 | 国产老头户外野战xxxxx | 国产精品嫩 | 中文字幕一区二区三区视频 | 欧美高清a| 亚洲一区二区影院 | 亚洲永久精品视频 | 9l视频自拍九色9l视频成人 | 公车激情云雨小说 | 国产777| 国产91嫩草 | 色a在线 | 躁躁躁日日躁 | 老司机久久精品视频 | 亚洲综合av一区二区三区 | 在线激情网站 | 成人片在线播放 | www.色播.com| 免费毛片大全 | 寡妇av| 国产特黄aaaaa毛片 | 丁香一区二区 | 日韩高清不卡 | 欧美黄色一区二区三区 | 日本a在线| 17c一起操 | 激情爱爱网 | 色呦呦国产精品 | 新婚夫妇白天啪啪自拍 | 性高潮久久久久久久久久 | 天堂精品在线 | 免费av免费看 | 人人人妻人人澡人人爽欧美一区 | 四虎影成人精品a片 | 亚洲91av | 玖色视频 | 香蕉视频国产 | 加勒比日韩 | 欧美精品午夜 | 潘甜甜在线 | 国产人妻互换一区二区 | 久久538| 国产午夜福利视频在线观看 | 亚洲男人在线天堂 |