gpt4 book ai didi

linux - 在 Linux 中定期采样 gpio-pin 的最佳方法是什么?

转载 作者:太空宇宙 更新时间:2023-11-04 10:20:12 25 4
gpt4 key购买 nike

我喜欢对由我的 Raspberry Pi 的引脚生成的信号进行采样。我做了高采样率很难实现的体验。

首先我用 Python 做了一个快速的方法( super 慢)。然后我更改为 ANSI C + bcm2835.h 库。我获得了显着的性能提升。

现在我问自己一个问题:如何在 Linux 下进行最佳采样?

我的尝试是在用户空间进行的。但是,切换到内核空间又如何呢?我可以写一个简单的字符设备内核模块。在此模块中,会定期检查引脚。如果状态改变,一些信息被放入缓冲区。该 I/O 缓冲区由用户空间中应用程序的同步文件读取轮询。对我来说最好的解决方案是,如果可以用固定频率进行引脚检查(信号处理的采样周期应该是恒定的)。

为此设置可以是:

@kernel:字符模块+内核线程+gpio设备树接口(interface)+恒定采样时间的DSP

@user space: i/o 应用从字符模块同步读取

想法/提示?

最佳答案

我有一个解决方案。

我写过这样一个模块:

https://github.com/Appyx/gpio-reflect

您可以从 GPIO 引脚同步读取任何信号。

您可以使用输出并根据您的采样率计算信号。只是划分时期。

关于linux - 在 Linux 中定期采样 gpio-pin 的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44221761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com