1 Star 0 Fork 1

ReviewClouds/j1900-gpio

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
test.c 1.52 KB
一键复制 编辑 原始数据 按行查看 历史
ReviewClouds 提交于 2020-11-17 07:15 . 完成shell和c的隔离
#include <stdio.h>
#include <unistd.h>
#include <sys/mman.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>
#include <stdint.h>
#include "kvconf.h"
#define Existence_of_electricity 0x01
#define No_electricity 0x00
int main(int argc, char *argv[])
{
uint8_t Value, fd;
char *mem;
uint64_t TMP = 0, i = 0;
uint8_t copy_action[100];
uint8_t Delay_time = 3;
uint8_t cmd[100] = {0};
if (argc == 1)
{
Delay_time = 2;
}
else if (argc == 2)
{
Delay_time = *argv[1] - 48;
}
while (1)
{
sleep(1);
// ++i;
Value = 0;
// printf("%d--%d\n",i,Value);
if (Value == 0)
++i;
else
i = 0;
if (Value == No_electricity && i >= Delay_time)
{
printf("%d--%d\n", i, Delay_time);
// sync同步完才执行poweroff ?
GetProfileString("./cls.conf", "command_before_shutdown", "sync_cmd", cmd);
if (*cmd != NULL)
system(cmd);
memset(cmd, 0, sizeof(cmd));
GetProfileString("./cls.conf", "command_before_shutdown", "_cmd", cmd);
if (*cmd != NULL)
system(cmd);
memset(cmd, 0, sizeof(cmd));
GetProfileString("./cls.conf", "command_before_shutdown", "poweroff_cmd", cmd);
if (*cmd != NULL)
system(cmd);
return 0;
}
}
return 0;
}
// select poll会从用户态拷贝到内核态,增加开销
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/ReviewClouds/j1900-gpio.git
git@gitee.com:ReviewClouds/j1900-gpio.git
ReviewClouds
j1900-gpio
j1900-gpio
master

搜索帮助

0d507c66 1850385 C8b1a773 1850385