Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

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ÏÂÈçºÎ°ÑIO¿Õ¼äÓ³Éäµ½Óû§½ø³Ì¿Õ¼ä£¿


ÆäʵÊǸöÂù¼òµ¥µÄÎÊÌâ¡£ÔÚLDD3µÄµÚ15ÕÂÉÏÓÐд£¨¼û“Remapping Specific I/O Regions”ÕâÒ»½Ú£©¡£²»¹ýµ±Ê±×÷ÕßÑ¡ÔñÁËÒ»¸ö´íÎóµÄ×ö·¨£ºÏÈ°ÑÕâ¿éIO¿Õ¼äÓÃioremapÓ³Éäµ½ÁËÄں˿ռ䣬ȻºóÔÚÓû§½ø³Ì·ÃÎʱ»Ó³ÉäµÄµØÖ·Ëù²ú ÉúµÄȱҳÖжÏÀÓÃvmalloc_to_pageµÃµ½page£¬·µ»Ø¸øÓû§½ø³Ì¡£
È»¶ø£¬vmalloc_to_pageû·¨Óà ......

Linux»·¾³½ø³Ì¼äͨÐÅ£¨Î壩——¹²ÏíÄÚ´æ

http://www.ibm.com/developerworks/cn/linux/l-ipc/part5/index1.html
¹²ÏíÄÚ´æ¿ÉÒÔ˵ÊÇ×îÓÐÓõĽø³Ì¼äͨÐÅ·½Ê½£¬Ò²ÊÇ×î¿ìµÄIPCÐÎʽ¡£Á½¸ö²»Í¬½ø³ÌA¡¢B¹²ÏíÄÚ´æµÄÒâ˼ÊÇ£¬Í¬Ò»¿éÎïÀíÄÚ´æ±»Ó³Éäµ½
½ø³ÌA¡¢B¸÷×ԵĽø³ÌµØÖ·¿Õ¼ä¡£½ø³ÌA¿ÉÒÔ¼´Ê±¿´µ½½ø³ÌB¶Ô¹²ÏíÄÚ´æÖÐÊý¾ÝµÄ¸üУ¬·´Ö®ÒàÈ»¡£ÓÉÓÚ¶à¸ö½ø³Ì¹²Ïíͬһ¿éÄÚ´æÇøÓò£ ......

2)Linux³ÌÐòÉè¼ÆÈëÃÅ

2)Linux³ÌÐòÉè¼ÆÈëÃÅ--½ø³Ì½éÉÜ
LinuxϽø³ÌµÄ´´½¨
Ç°ÑÔ:
ÕâƪÎÄÕÂÊÇÓÃÀ´½éÉÜÔÚLinuxϺͽø³ÌÏà¹ØµÄ¸÷¸ö¸ÅÄî.ÎÒÃǽ«»áѧµ½:
½ø³ÌµÄ¸ÅÄî
½ø³ÌµÄÉí·Ý
½ø³ÌµÄ´´½¨
ÊØ»¤½ø³ÌµÄ´´½¨
----------------------------------------------------------------------------
----
1¡£½ø³ÌµÄ¸ÅÄî
Linux²Ù×÷ϵͳÊÇÃæÏ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ