从终端读取的方式。
为了能够用后台程序去读取终端输入,并且不阻塞住,做了以下尝试。
1. 打开设备的方式。 这种方式下,在后台无法接受到按键,在前台可以接受按键,需要回车后才能读取。
void *debug_thread(void* pin)
{
char c;
char buffer;
int fp;
char * curtty;
curtty = ttyname(STDIN_FILENO);
printf("curtty=%s\n",curtty);
fp = open(curtty,O_RDONLY|O_NONBLOCK);
if(!fp)
{
printf("open tty0 failed\n");
return NULL;
}
printf("System Debuging\n");
printf("1: video control debug\n");
for (;;) {
c=0;buffer=0;
c=read(fp,&buffer,1);
if(c!=-1)
printf("readback c=%x, buffer=%x\n",c,buffer);
}
close(fp);
g_debugrequest = 0;
g_indebug = 0;
return NULL;
}
阅读(850) | 评论(0) | 转发(0) |