若LED的进程不存在,则循环等待
时间: 2023-08-02 11:44:45 浏览: 41
好的,可以使用以下的shell脚本来实现:
```bash
#!/bin/bash
while true
do
if pgrep ledd > /dev/null
then
echo "ledd进程存在"
else
echo "ledd进程不存在,等待中..."
sleep 5s
continue
fi
# 其他操作
# ......
done
```
该脚本会不断循环,判断ledd进程是否存在。如果ledd进程不存在,则会输出"ledd进程不存在,等待中...",然后等待5秒钟后继续循环。当ledd进程存在时,会输出"ledd进程存在",然后执行其他操作。
你可以根据需要在脚本中添加其他的操作。在需要等待ledd进程启动时,可以使用该脚本来不断尝试连接ledd进程,直到进程启动成功。
相关问题
若LED的进程不存在,则执行/etc/init.d/ledd restart;否则延迟3秒循环等待,循环110次后,退出返回ReturnFail
好的,可以使用以下的shell脚本来实现:
```bash
#!/bin/bash
count=0
while true
do
if pgrep ledd > /dev/null
then
echo "ledd进程存在"
sleep 3s
else
echo "ledd进程不存在,正在重启ledd进程..."
/etc/init.d/ledd restart
sleep 5s
fi
count=$((count+1))
if [ $count -ge 110 ]
then
echo "已经循环110次,退出"
exit 1
fi
done
```
该脚本会不断循环,判断ledd进程是否存在。如果ledd进程不存在,则会输出"ledd进程不存在,正在重启ledd进程...",然后执行重启ledd进程的操作,并等待5秒钟后继续循环。如果ledd进程存在,则会等待3秒钟后继续循环。
脚本会在循环110次后退出,并返回1作为exit code。你可以根据需要调整循环次数。
让LED从左往右循环亮
要实现LED从左往右循环亮的功能,可以使用以下C语言代码:
```c
void wait (void) { /* wait function */ ; /* only to delay for LED flashes */ }
void main (void) {
unsigned int i; /* Delay var */
unsigned char j; /* LED var */
while (1) { /* Loop forever */
for (j=0x01; j< 0x80; j<<=1) { /* Blink LED 0, 1, 2, 3, 4, 5, 6 */
P1 = j; /* Output to LED Port */
for (i = 0; i < 10000; i++) { /* Delay for 10000 Counts */
wait (); /* call wait function */
}
}
}
}
```
这段代码会使LED灯从左往右循环亮起。在每次循环中,通过改变P1的值来控制LED灯的亮灭状态。循环的次数由for循环中的语句`j<<=1`决定,这里使用的是按位左移运算符来实现从左往右的效果。而wait函数用来延时控制LED灯的闪烁速度。
请问还有其他相关问题吗?
相关问题:
1. 如何让LED灯从右往左循环亮?
2. 如何实现LED灯的间隔闪烁效果?
3. 如何实现LED灯的间隔循环亮灭效果?
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)