linuxÖÕ¶ËÉ豸uartÇý¶¯·ÖÎö
ÎÄÕÂÀ´Ô´£ºhttp://blog.chinaunix.net/u3/94284/showart_1982227.html
Ò»:ǰÑÔ
½Ó×ÅÇ°ÃæµÄÖÕ¶Ë¿ØÖÆÌ¨·ÖÎö,½ÓÏÂÀ´·ÖÎöserialµÄÇý¶¯.ÔÚlinuxÖÐ,serialÒ²¶ÔÓ¦×ÅÖÕ¶Ë,ͨ³£±»³ÆÎª´®¿ÚÖÕ¶Ë.ÔÚshellÉÏ,ÎÒÃÇ¿´µ½µÄ/dev/ttyS*¾ÍÊÇ´®¿ÚÖÕ¶ËËù¶ÔÓ¦µÄÉ豸½Úµã.
ÔÚ·ÖÎö¾ßÌåµÄserialÇý¶¯Ö®Ç°.ÓбØÒªÏÈ·ÖÎöuartÇý¶¯¼Ü¹¹.uartÊÇUniversal Asynchronous Receiver and TransmitterµÄËõд.·Òë³ÉÖÐÎļ´Îª”ͨÓÃÒì²½ÊÕ·¢Æ÷”.ËüÊÇ´®¿ÚÉ豸Çý¶¯µÄ·â×°²ã.
¶þ:uartÇý¶¯¼Ü¹¹¸Åò
ÈçÏÂͼËùʾ:
ÉÏͼÖкìÉ«²¿·Ý±êʶ¼´Îªuart²¿·ÝµÄ²Ù×÷.
´ÓÉÏͼ¿ÉÒÔ¿´µ½,uartÉ豸ÊǼÌtty_driverµÄÓÖÒ»²ã·â×°.ʵ¼ÊÉÏuart_driver¾ÍÊǶÔÓ¦tty_driver.ÔÚËüµÄ²Ù×÷º¯ÊýÖÐ,½«²Ù×÷תÈëuart_port.
ÔÚд²Ù×÷µÄʱºò,ÏȽ«Êý¾Ý·ÅÈëÒ»¸ö½Ð×öcirc_bufµÄ»·Ðλº´æÇø.È»ºóuart_port´Ó»º´æÇøÖÐÈ¡Êý¾Ý,½«ÆäдÈëµ½´®¿ÚÉ豸ÖÐ.
µ±uart_port´ÓserialÉ豸½ÓÊÕµ½Êý¾Ýʱ,»á½«É豸·ÅÈë¶ÔÓ¦line disciplineµÄ»º´æÇøÖÐ.
ÕâÑù.Óû§ÔÚ±àд´®¿ÚÇý¶¯µÄʱºò,Ö»ÏÈҪע²áÒ»¸öuart_driver.ËüµÄÖ÷Òª×÷ÓÃÊǶ¨ÒåÉ豸½ÚµãºÅ.È»ºó½«¶ÔÉ豸µÄ¸÷Ïî²Ù×÷·â×°ÔÚuart_port.Çý¶¯¹¤³Ìʦû±ØÒª¹ØÐÄÉϲãµÄÁ÷³Ì,Ö»Ðè°´Ó²¼þ¹æ·¶½«uart_portÖеĽӿں¯ÊýÍê³É¾Í¿ÉÒÔÁË.
Èý:uartÇý¶¯ÖÐÖØÒªµÄÊý¾Ý½á¹¹¼°Æä¹ØÁª
ÎÒÃÇ¿ÉÒÔ×Ô¼º¿¼ÂÇÏÂ,»ùÓÚÉÏÃæµÄ¼Ü¹¹´úÂëÓ¦¸ÃÒªÔõôд.Ê×ÏÈ¿¼ÂÇÒÔϼ¸µã:
1: Ò»¸öuart_driverͨ³£»á×¢²áÒ»¶ÎÉ豸ºÅ.¼´ÔÚÓû§¿Õ¼ä»á¿´µ½uart_driver¶ÔÓ¦Óжà¸öÉ豸½Úµã.ÀýÈç:
/dev/ttyS0 /dev/ttyS1
ÿ¸öÉ豸½ÚµãÊǶÔÓ¦Ò»¸ö¾ßÌåÓ²¼þµÄ,´ÓÉÏÃæµÄ¼Ü¹¹À´¿´,ÿ¸öÉ豸ÎļþÓ¦¸Ã¶ÔÓ¦Ò»¸öuart_port.
Ò²¾ÍÊÇ˵:uart_deviceÔõôͬ¶à¸öuart_port¹ØÏµÆðÀ´?ÔõÃ´È¥Çø·Ö²Ù×÷µÄÊÇÄÄÒ»¸öÉ豸Îļþ?
2:ÿ¸öuart_port¶ÔÓ¦Ò»¸öcirc_buf,ËùÒÔuart_port±ØÐëÒªºÍÕâ¸ö»º´æÇø¹ØÏµÆðÀ´
»ØÒättyÇý¶¯¼Ü¹¹ÖÐ.tty_driverÓÐÒ»¸ö½Ð³ÉÔ±Ö¸ÏòÒ»¸öÊý×é,¼´tty->ttys.ÿ¸öÉ豸Îļþ¶ÔÓ¦ÉèÊý×éÖеÄÒ»Ïî.¶øÕâ¸öÊý×éËù´úÂëµÄÊý¾Ý½á¹¹Îªtty_struct. ÏàÓ¦µÄtty_struct»á½«tty_driverºÍldisc¹ØÁªÆðÀ´.
ÄÇÔÚuartÇý¶¯ÖÐ,ÊÇ·ñÒ²¿ÉÓÃÏàͬµÄ·½Ê½À´´¦ÀíÄØ?
½«uartÇý¶¯³£ÓõÄÊý¾Ý½á¹¹±íʾÈçÏÂ:
½áºÏÉÏÃæÌá³öµÄÒÉÎÊ.¿ÉÒÔºÜÇå³þµÄ¿´¶®ÕâЩ½á¹¹µÄÉè¼Æ.
ËÄ:uart_driverµÄ×¢²á²Ù×÷
Uart_driver×¢²á¶ÔÓ¦µÄº¯ÊýΪ: uart_register_driver()´úÂëÈçÏÂ:
int uart_register_driver(struct uart_driver *drv)
Ïà¹ØÎĵµ£º
°²×°gftp
yum install gftp
ĬÈÏ״̬ÏÂgftpÊÇûÓÐÉèÖÃ×Ö·û±àÂëµÄ£¬ËùÒÔÎÒÃÇÉÏFTPµÄʱºò£¬¿´µ½ÀïÃæµÄÖÐÎÄÎļþÃûÈ«²¿ÊÇÂÒÂ룬»òÔò²»²¿·ÖÎļþ¿´µ½Îļþ¼ÐȴûÃû×Ö£»
ÆäʵÔÚgftp-2.0.17ÒÔºóµÄ°æ±¾¶¼ÒѾºÜºÃÖ§³Öºº×ÖÁË£¬ÎÒµÄÉèÖ÷½·¨ÊǶÔËüµÄÅäÖÃÎļþÐ޸ļ´¿É£¡
Ò»°ãµÄÈí¼þÅäÖÃÎļþ»á·ÅÔÚÓû§Ä¿Â¼Ï£¬ÀýÈçÎÒÓÃr ......
×î½ü¸Ð½Ó´¥perl£¬¸Ð¾õºÜ²»´í£¬´¦ÀíÎı¾·Ç³£·½±ã¡£Ç°½×¶ÎÓÃcȥͳ¼ÆÒ»Ð©Îı¾£¬ÀÛµÄÒªËÀ£¬¶øÇÒ³ÌÐòÖл¹¾³£³öbug£»¶øÓÃperlÔò²»Í¬£¬Ëü±ÜÃâµÄ¸´ÔÓµÄÊý¾Ý½á¹¹£¬ÕâÑù³ö´íµÄ¸ÅÂʾͺÜСÁË£¬¶øÇÒ±àд´úÂë¶ÌС¾«º·¡£Ç°Á½Ì콫perlÄõ½linuxÉÏÔËÐУ¬ËäÈ»Ìí¼ÓÁË#!/usr/local/bin/perl£¬µ«»¹ÊÇÌáʾÕÒ²»µ½½âÊÍÆ÷£ºbad interpreter¡£ÓôÃÆÑ½¡ ......
developerWorks Öйú
>
Linux
>
Linux »ã±àÓïÑÔ¿ª·¢Ö¸ÄÏ
ÎĵµÑ¡Ïî
<tr
valign="top"><td width="8"><img alt="" height="1" width="8"
src="//www.ibm.com/i/c.gif"/></td>< ......
Ö÷Ì⣺ linuxÄÚºËÄ£¿éµÄ³ÌÐò½á¹¹--Ä£¿é¼ÓÔØº¯Êý(±ØÐë)£¬Ä£¿éÐ¶ÔØº¯Êý(±ØÐë)£¬Ä£¿éÐí¿ÉÖ¤ÉùÃ÷(±ØÐë)£¬Ä£¿é²ÎÊý(¿ÉÑ¡)£¬Ä£¿éµ¼³ö·ûºÅ(¿ÉÑ¡)£¬Ä£¿é×÷ÕߵĵÈÐÅÏ¢ÉùÃ÷(¿ÉÑ¡)
Ò»¸ölinuxÄÚºËÄ£¿éÖ÷ÒªÓÉÒÔϼ¸¸ö²¿·Ö×é³É¡£
1¡¢Ä£¿é¼ÓÔØº¯Êý"ÓÃmodule_init()À´Ö¸¶¨"(±ØÐë)
µ±Í¨¹ýinsmodºÍmodprobeÃüÁî¼ÓÔØÄÚºËÄ£¿éʱ ......
ÆäʵÕâ²ÅÓ¦¸ÃÊÇÕâһϵÁÐÎÄÕµĵÚÒ»½Ú£¬ÒòΪÕâÆªÎÄÕ½²µÄÊÇÅ̹ſªÌìµØµÄÊ¡£»°ËµMr.
ProcessÊÇÒ»¸öÏÖ´úÈË£¬µ«ÊÇ£¬Ö»ÒªÊÇÈË£¬×ܸÃÓиö׿ÏÈ¡£ÈËÃÇ×ÜÏëÖªµÀ×Ô¼º´ÓÄÄÀ´£¬È»ºó²Å¿ÉÒÔ¹ÀÃþËãÒ»ÏÂ×Ô¼º½«È¥ÏòºÎ·½¡£ËùÒÔÔÛÒ²ÒªÁ˽âÒ»ÏÂ
LinuxµÄÊÀ½çÀïÈËÀàµÄÆðÔ´¡£
ͼ1£º´ÓÉϵ絽BIOS
°´ÏµçÔ´¿ª¹ØµÄÄǸöÕæÊµµÄÈ˾ÍÊÇLinuxÊÀ½çÀïµÄ ......