linux ´®¿Ú±à³Ì
ÔÚǶÈëʽLinuxÖУ¬´®¿ÚÊÇÒ»¸ö×ÖÉ豸£¬·ÃÎʾßÌåµÄ´®Ðж˿ڵıà³ÌÓë¶Á£¯Ð´ÎļþµÄ²Ù×÷ÀàËÆ£¬Ö»Ðè´ò¿ªÏàÓ¦µÄÉ豸Îļþ¼´¿É²Ù×÷¡£´®¿Ú±à³ÌÌØÊâÔÚÓÚ´®¿ÚͨÐÅʱÏà¹Ø²ÎÊýÓëÊôÐÔµÄÉèÖá£Ç¶ÈëʽLinuxµÄ´®¿Ú±à³ÌʱӦעÒ⣬ÈôÔÚ¸ùÎļþÖÐûÓд®¿ÚÉ豸Îļþ£¬Ó¦Ê¹ÓÃmknodÃüÁî´´½¨£¬ÕâÕâÀï¼ÙÉè´®¿ÚÉ豸ÊÇ/dev/ttyS0£¬½éÉÜһϴ®¿ÚµÄ±à³Ì¹ý³Ì¡£
££mknod /dev/ttyS0 c 4 64
1¡¢´ò¿ª´®¿Ú
´ò¿ª´®¿ÚÉ豸ÎļþµÄ²Ù×÷ÓëÆÕͨÎļþµÄ²Ù×÷ÀàËÆ£¬¶¼²ÉÓñê×¼µÄI/O²Ù×÷º¯Êýopen()¡£
fd = open("/dev/ttyS0",O_RDWR|O_NDELAY|O_NOCTTY);
open()º¯ÊýÓÐÁ½¸ö²ÎÊý£¬µÚÒ»¸ö²ÎÊýÊÇÒª´ò¿ªµÄÎļþÃû£¨´Ë´¦Îª´®¿ÚÉ豸Îļþ/dev/ttyS0);µÚ¶þ¸ö²ÎÊýÉèÖôò¿ªµÄ·½Ê½£¬O_RDWR±íʾ´ò¿ªµÄÎļþ¿É¶Á/д£¬O_NDELAY±íʾÒÔ·Ç×èÈû·½Ê½´ò¿ª£¬O£ßNOCTTY±íʾÈô´ò¿ªµÄÎļþΪÖÕ¶ËÉ豸£¬Ôò²»»á½«ÖÕ¶Ë×÷Ϊ½ø³Ì¿ØÖÆÖÕ¶Ë¡£
2¡¢ÉèÖô®¿ÚÊôÐÔ
´®¿ÚͨÐÅʱµÄÊôÐÔÉèÖÃÊÇ´®¿Ú±à³ÌµÄ¹Ø¼üÎÊÌ⣬Ðí¶à´®¿ÚͨÐÅʱµÄ´íÎó¶¼Óë´®¿ÚµÄÉèÖÃÏà¹Ø£¬ËùÒÔ±à³ÌÊ±Ó¦ÌØ±ð×¢ÒâÕâЩÉèÖã¬×î³£¼ûµÄÉèÖðüÀ¨²¨ÌØÂÊ¡¢ÆæÅ¼Ð£ÑéºÍֹͣλÒÔ¼°Á÷¿ØÖƵȡ£
ÔÚLinuxÖУ¬´®¿Ú±»×÷ΪÖÕ¶ËI/O£¬ËüµÄ²ÎÊýÉèÖÃÐèҪʹÓÃstruct termios½á¹¹Ì壬Õâ¸ö½á¹¹ÌåÔÚtermio.hÎļþÖж¨Ò壬ÇÒÓ¦ÔÚ³ÌÐòÖаüº¬Õâ¸öÍ·Îļþ¡£
typedef unsigned char cc_t ;
typedef unsigned int speed_t ;
typedef unsigned int tcflag_t ;
struct termios
{
tcflag_t c_iflag ; /*ÊäÈëģʽ±êÖ¾*/
tcflag_t c_oflag ; /*Êä³öģʽ±êÖ¾*/
&nbs
Ïà¹ØÎĵµ£º
ÔÚlinuxÄں˵ÄÔ´´úÂëÖУ¬ÒÔ»ã±àÓïÑÔ±àдµÄ³ÌÐò»ò³ÌÐò¶Î£¬ÓÐÁ½ÖÖ²»Í¬µÄÐÎʽ¡£
µÚÒ»ÖÖÊÂÍêÈ«µÄ»ã±à´úÂ룬ÕâÑùµÄ´úÂë²ÉÓÃ.s×÷ΪÎļþµÄºó׺¡£ÊÂʵÉÏ£¬¾¡¹ÜÊÇÍêÈ«µÄ»ã±à´úÂ룬ÏÖ´úµÄ»ã±à¹¤¾ßÒ²ÎüÊÕÁËCÓïÑԵij¤´¦£¬Ò²ÔÚ»ã±à֮ǰ¼ÓÉÏÁËÒ»ÌËÔ¤´¦Àí£¬¶øÔ¤´¦Àí֮ǰµÄÎļþÔòÒÔ.sΪºó׺¡£´ËÀࣨ.s£©ÎļþÒ²ºÍC³ÌÐòÒ»Ñù£¬¿ÉÒÔʹÓÃ#includ ......
ÊØ»¤½ø³ÌÒ²³ÆÎª¾«Áé½ø³Ì£¬ÊÇÒ»ÖÖÔËÐÐÔÚºǫ́µÄÌØÊâ½ø³Ì£¬Ëü²»´æÔÚ¿ØÖÆÖÕ¶Ë£¬²¢ÖÜÆÚÐÔµØÖ´ÐÐijÏîÈÎÎñ»òµÈ´ý´¦ÀíijÏîÈÎÎñ¡£
ÊØ»¤½ø³ÌÌØµã£º
l ËùÓеÄÊØ»¤½ø³Ì¶¼ÊÇÒÔ³¬¼¶Óû§Æô¶¯µÄ(UIDΪ0)£»
l ûÓпØÖÆÖÕ¶Ë(TTYΪ£¿)£»
l Öն˽ø³Ì×éIDΪ-1(TPGID±íʾÖն˽ø³Ì×éID£¬¸ÃÖµ±íʾÓë¿ØÖÆÖÕ¶ËÏà¹ØµÄǰ̨½ø³Ì×é£ ......
¹¦ÄÜÃèÊö£º
´¦ÀíÐźš£¼È¿ÉÓÃÓÚÉ趨¶ÔÈÎÒâÐźŵĴ¦Àí·½Ê½£¬Ò²¿ÉÓÃÓÚ¼ìÑé¸ÃÐźŵÄĿǰԤÉè´¦Ö÷½Ê½¡£
Ó÷¨£º
#include <signal.h>
int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact);
&n ......
understanding linux usb ehci device driver£¨2£©
understanding linux usb ehci device driver(2)
lm_tom@163.com
2. linux ehci device driver(ehci hcd)
2.1. linux usb subsystem arch overview(host)
2.2. ehci_hcd
2.3. ehci ʵÏֵĽӿÚ
2.3.1. ehci_pci_setup() (hc_driver->reset)
2.3.2. ehci_run() ( ......
Linux µÄ Input Device ÊÇÖØÒªµÄÒ»個 subsystem£¬ÔÚ進ÐÐ實Àý½é紹ǰ£¬ÏÈ´óÂÔÁ˽âÒ»ÏÂÏà關µÄ API¡£input.cÊÇLinuxµÄÊäÈë驅動³Ìʽ£¬Ö÷ÒªÖ§Ô®鍵盤與»¬ÊóµÄ輸È룻input.c½éÃæÌØÊâµÄµØ·½ÊÇ採ÓÃÁËʼþ£¨event£©µ ......