linux´®¿ÚÓ¦Óÿª·¢
linux´®¿ÚÓ¦Óÿª·¢
2009Äê10ÔÂ20ÈÕ ÐÇÆÚ¶þ 14:16
1¡¢´®¿Ú¸ÅÊö
Óû§³£¼ûµÄÊý¾ÝͨÐŵĻù±¾·½Ê½ÓÐÁ½ÖÖ£º²¢ÐÐͨÐźʹ®ÐÐͨÐÅ¡£
´®ÐÐͨÐÅÊǼÆËã»ú³£ÓõĽӿڣ¬È磺RS-232-C½Ó¿Ú¡£¸Ã±ê×¼¹æ¶¨²ÉÓÃÒ»¸öDB25оÒý½ÅÁ¬½ÓÆ÷»òDB9оÒý½ÅÁ¬½ÓÆ÷¡£Ð¾Æ¬ÄÚ²¿³£¾ßÓÐUART¿ØÖÆÆ÷£¬Æä¿É¹¤×÷ÓÚInterrupt(ÖжÏģʽ)»òDMA£¨Ö±½ÓÄÚ´æ·ÃÎÊ£©Ä£Ê½¡£
UARTµÄ²Ù×÷Ö÷Òª°üÀ¨ÒÔϼ¸¸ö²¿·Ö£º
Êý¾Ý·¢ËÍ£»Êý¾Ý½ÓÊÕ£»²úÉúÖжϣ»²úÉú²¨ÌØÂÊ£»Loopbackģʽ£»ºìÍâģʽ£»×Ô¶¯Á÷¿ØÄ£Ê½¡£
´®¿Ú²ÎÊýµÄÅäÖÃÖ÷Òª°üÀ¨£º²¨ÌØÂÊ¡¢Êý¾Ýλ¡¢Í£Ö¹Î»¡¢Á÷¿ØÐÒé
linuxÖеĴ®¿ÚÉ豸Îļþ´æ·ÅÓÚ/devĿ¼Ï£¬ÆäÖд®¿ÚÒ»£¬´®¿Ú¶þ¶ÔÓ¦É豸ÃûÒÀ´ÎΪ“/dev/ttyS0”¡¢“/dev/ttyS1”¡£ÔÚlinuxϲÙ×÷´®¿ÚÓë²Ù×÷ÎļþÏàͬ¡£
2¡¢´®¿ÚÏêϸÅäÖÃ
ÔÚʹÓô®¿Ú֮ǰ±ØÐëÉèÖÃÏà¹ØÅäÖ㬰üÀ¨£º²¨ÌØÂÊ¡¢Êý¾Ýλ¡¢Ð£Ñéλ¡¢Í£Ö¹Î»µÈ¡£
´®¿ÚÉèÖÃÓÉÏÂÃæ½á¹¹ÌåʵÏÖ£º
Struct termios {
tcflag_t c_iflag; /*input flags */
tcflag_t c_oflag; /*output flags */
tcflag_t c_cflag; /*control flags */
tcflag_t c_lflag; /*local flags */
cc_t c_cc[NCCS]; /*control characters */
};
¸Ã½á¹¹ÖÐc_cflag×îÎªÖØÒª£¬¿ÉÉèÖò¨ÌØÂÊ¡¢Êý¾Ýλ¡¢Ð£Ñéλ¡¢Í£Ö¹Î»¡£ÔÚÉèÖò¨ÌØÂÊʱÐèÔÚÊý×Öǰ¼ÓÉÏ‘B’£¬ÈçB9600»òB19200¡£Ê¹ÓÃÆäÐèͨ¹ý“Ó딓»ò”²Ù×÷·½Ê½¡£
ÊäÈëģʽc_iflag³ÉÔ±¿ØÖƶ˿ڽÓÊն˵Ä×Ö·ûÊäÈë´¦Àí¡£
´®¿Ú¿ØÖƺ¯Êý£º
Tcgetattr È¡ÊôÐÔ(termios½á¹¹)
Tcsetattr ÉèÖÃÊôÐÔ(termios½á¹¹)
cfgetispeed µÃµ½ÊäÈëËÙ¶È
Cfgetospeed µÃµ½Êä³öËÙ¶È
Cfsetispeed &nb
Ïà¹ØÎĵµ£º
Õâ´Îתµ½Á˺½¿ÕµÄÒ»¸öÏîÄ¿£¬ÐèÒªÔÚLinuxÏÂÓÃC×ö¿ª·¢¡£°æ±¾¹ÜÀí²ÉÓÃSVN£¬´Ó×òÌìÏÂÎ翪ʼÎҾͿªÊ¼Á˰²×°£¬ÕæµÄÊÇÍ´¿àµÄ¹ý³Ì¡£ÏÖÔÚµ¹Êǰ²×°ºÃÁË£¬µ«ÊÇÅäÖÃÃüÁûÓÐÕÆÎÕ¡£
Èç¹ûÓÐȨÏÞ´ÓÍøÉÏÖ±½Ó¸üÐÂÈí¼þ£¬ÎÒ²»±ØÃ¿´Î¶¼È¥ÕÒÔ´Âë°ü£¬È ......
vi filename :´ò¿ª»òн¨Îļþ£¬²¢½«¹â±êÖÃÓÚµÚÒ»ÐÐÊ×
¡¡¡¡vi +n filename £º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚµÚnÐÐÊ×
¡¡¡¡vi + filename £º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚ×îºóÒ»ÐÐÊ×
¡¡¡¡vi +/pattern filename£º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚµÚÒ»¸öÓëpatternÆ¥ÅäµÄ´®´¦
¡¡¡¡vi -r filename £ºÔÚÉÏ´ÎÕýÓÃvi±à¼Ê±·¢Éúϵͳ±ÀÀ££¬»Ö¸´filename
......
ÆäʵÊǸöÂù¼òµ¥µÄÎÊÌâ¡£ÔÚLDD3µÄµÚ15ÕÂÉÏÓÐд£¨¼û“Remapping Specific I/O Regions”ÕâÒ»½Ú£©¡£²»¹ýµ±Ê±×÷ÕßÑ¡ÔñÁËÒ»¸ö´íÎóµÄ×ö·¨£ºÏȰÑÕâ¿éIO¿Õ¼äÓÃioremapÓ³Éäµ½ÁËÄں˿ռ䣬ȻºóÔÚÓû§½ø³Ì·ÃÎʱ»Ó³ÉäµÄµØÖ·Ëù²ú ÉúµÄȱҳÖжÏÀÓÃvmalloc_to_pageµÃµ½page£¬·µ»Ø¸øÓû§½ø³Ì¡£
È»¶ø£¬vmalloc_to_pageû·¨Óà ......
×èÈû²Ù×÷ÊÇÖ¸£¬ÔÚÖ´ÐÐÉ豸²Ù×÷ʱ£¬Èô²»ÄÜ»ñµÃ×ÊÔ´£¬Ôò½ø³Ì¹ÒÆðÖ±µ½Âú×ã¿É²Ù×÷µÄÌõ¼þÔÙ½øÐвÙ×÷¡£·Ç×èÈû²Ù×÷µÄ½ø³ÌÔÚ²»ÄܽøÐÐÉ豸²Ù×÷ʱ£¬²¢²»¹ÒÆð¡£±»¹ÒÆðµÄ½ø³Ì½øÈësleep״̬£¬±»´Óµ÷¶ÈÆ÷µÄÔËÐжÓÁÐÒÆ×ߣ¬Ö±µ½µÈ´ýµÄÌõ¼þ±»Âú×ã¡£
ÔÚLinuxÇý¶¯³ÌÐòÖУ¬ÎÒÃÇ¿ÉÒÔʹÓõȴý¶ÓÁУ¨wait queue£©À´ÊµÏÖ×èÈû²Ù×÷¡£wait queueºÜÔ ......
×¢: ¸ÃϵÁÐÎÄÕÂ×ªÔØ×Ôarm+linux chinaunix²©¿ÍȦȦÖ÷Ö®²©¿Í——http://blog.chinaunix.net/u/22630 /article_54997.html ΪÁËÊʺÏÎҵıàÒë»·¾³£¬Ô´´úÂëÓи͝£¬µ«ÊÇÏàÐÅÎÒ¸ü¸ÄºóµÄ´úÂë¸ü¼ÓÊʺÏÏÖÔÚ´ó¶àÊý¶ÁÕßµÄpc»·¾³¡£
×èÈû²Ù×÷ÊÇÖ¸£¬ÔÚÖ´ÐÐÉ豸²Ù×÷ʱ£¬Èô²»ÄÜ»ñµÃ×ÊÔ´£¬Ôò½ø³Ì¹ÒÆðÖ±µ½Âú×ã¿É²Ù×÷µ ......