我是第一次接触Emebedded Linux。我想使用我的USB键盘使用线程..我知道线程的概念,但我想知道如何使用线程的概念来检测它。?
发布于 2012-08-10 23:49:25
如果你不想使用非阻塞I/O来读取键盘,你可以使用一个线程来执行阻塞读取,并在输入可用时向你的主线程发送信号(或者设置一个它可以轮询的标志)。
除了阻塞之外,您可能还需要处理线路模式的默认设置。
在单线程程序中轮询或响应过于单一的字符的常见选择是更改终端模式设置-请参阅termios、stty等的手册页。但是,如果您的程序退出,则需要将它们更改回来。
另一种选择是跳过整个终端基础设施,直接通过/dev/ input /读取输入事件。或者在极端情况下,您可以跳过USB HID驱动程序,为USB键盘编写自己的内核驱动程序。
发布于 2012-08-08 21:24:40
如果我没记错的话,你有一个嵌入式linux板,现在你想连接一个USB键盘,并在嵌入式linux板上的应用程序中使用它?如果这是正确的,那么你不需要对线程做任何事情。您需要做的是为该键盘安装驱动程序。为此,您应该查看内核构建配置,以查看是否启用了USB键盘驱动程序(HID驱动程序)。
发布于 2014-10-10 16:45:26
您可以根据自己的需求使用以下任一选项:
(阻止#en0#/O中断)
对于非阻塞I/O,可以尝试基于多线程的方法。对于阻塞的I/O,可以尝试基于epoll()系统调用的方法。
关于检测键盘的方法,您可以尝试以下方法:
输入设备使用文件/proc/
https://stackoverflow.com/questions/11793331
复制相似问题