linux -/bin/sh "embedded linux"while do done - 需要 sleep 命令 - CPU 较少

标签 linux sh sleep

我正在使用非常有限的 Shell 开发嵌入式 Linux。内置命令非常少。

我想检查 gpio 端口。这适用于以下内容。但它需要很多 CPU/IO - 电源!!所以我想像 sleep 一样得到短暂的休息。但是最小的 sleep 时间是 1s。我会考虑 125 毫秒。

#!/bin/sh
#Abfrage des GPIO 23-->0"
while [ 1 ]
 do
 gpio23=`/bin/gpio r | grep 23`
 echo "" > /dev/null
  case "$gpio23" in
    *0x7801*)
            echo "enthaelt 0x7801"
            ;;
    *0x3801*)
            echo "enthaelt 0x3801"
            ;;
    *0x6801*)
            echo "enthaelt 0x6801"
            ;;
   esac
  done

最佳答案

你可以编写如下 C 程序:

#include <unistd.h>

int main()
{
 usleep(125);
 return 0;
}

然后像这样在bash脚本中使用它

#do some stuff
`./sleepProgram`
#do other stuff after sleep

它会成功的。

关于linux -/bin/sh "embedded linux"while do done - 需要 sleep 命令 - CPU 较少,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21474966/

相关文章:

bash - 即使第一个命令的子进程仍在后台运行,也关闭管道

c - sleep() 背后的算法是什么?

Python 在加载修改后的 json 时抛出错误

c - IS_ERR() 宏的有效使用

linux - 在 Linux 中通过命令行截断表

java - 如果在同步方法中调用,thread.yield() 是否会失去对对象的锁定?

go - 如何从云功能中安排一些事情

linux - Libfreenect2 点云帧捕获

linux - 有关和更好地理解编程的一般问题

Django postgresql 删除所有表和 syncdb