监控输入端口node.js

Monitoring input port node.js

当数字输入端口上的输入发生变化时,我正在尝试发送有效载荷。我对正确的做法感到困惑。我正在使用 Linux 标准 gpio,通过从 /sys/class/gpio..

读取值

在node.js我用的是fs.readfile。但我只能手动读取值。如何通过事件更改触发它,以便每次输入引脚从 0 变为 1 时都可以发送有效负载?

你试过这个 npm 包了吗? https://www.npmjs.com/package/gpio

它使用节点的 EventEmitter 来通知您什么时候发生了变化。这是在发生更改时获取事件的代码片段 -> https://snipp.ly/bVk3GCBy

我的解决方案:

watcher = fs.watch('./some/path'); //returns an eventEmitter
watcher.addListener('change', (event, filename) => {

        if (event === 'change') {
            fs.readFile('./some/path/', 'utf8', (err, data) => {
                if (err) throw err;
                if(data) {

                    //Do something
                }
            })
        }