ʵÀý½âÎölinuxÄÚºËI2CÌåϵ½á¹¹
Ò»¡¢¸ÅÊö
̸µ½ÔÚlinuxϵͳϱàдI2CÇý¶¯£¬Ä¿Ç°Ö÷ÒªÓÐÁ½ÖÖ·½Ê½£¬Ò»ÖÖÊǰÑI2CÉ豸µ±×÷Ò»¸öÆÕͨµÄ×Ö·ûÉ豸À´´¦Àí£¬ÁíÒ»ÖÖÊÇÀûÓÃlinux I2CÇý¶¯Ìåϵ½á¹¹À´Íê³É¡£ÏÂÃæ±È½ÏÏÂÕâÁ½ÖÖÇý¶¯¡£
µÚÒ»ÖÖ·½·¨µÄºÃ´¦£¨¶ÔÓ¦µÚ¶þÖÖ·½·¨µÄÁÓÊÆ£©ÓУº
¡ñ ˼·±È½ÏÖ±½Ó£¬²»ÐèÒª»¨Ê±¼äÈ¥Á˽âlinuxÄÚºËÖи´ÔÓµÄI2C×ÓϵͳµÄ²Ù×÷·½·¨¡£
µÚÒ»ÖÖ·½·¨ÎÊÌ⣨¶ÔÓ¦µÚ¶þÖÖ·½·¨µÄºÃ´¦£©ÓУº
¡ñ ÒªÇ󹤳Ìʦ²»½öÒª¶ÔI2CÉ豸µÄ²Ù×÷ÊìϤ£¬¶øÇÒÒªÊìϤI2CµÄÊÊÅäÆ÷²Ù×÷£»
¡ñ ÒªÇ󹤳Ìʦ¶ÔI2CµÄÉ豸Æ÷¼°I2CµÄÉ豸²Ù×÷·½·¨¶¼±È½ÏÊìϤ£¬×îÖØÒªµÄÊÇд³öµÄ³ÌÐò¿ÉÒÆÖ²ÐԲ
¡ñ ¶ÔÄں˵Ä×ÊÔ´ÎÞ·¨Ö±½ÓʹÓá£ÒòΪÄÚºËÌṩµÄËùÓÐI2CÉ豸Æ÷¼°É豸Çý¶¯¶¼ÊÇ»ùÓÚI2C×ÓϵͳµÄ¸ñʽ¡£I2CÊÊÅäÆ÷µÄ²Ù×÷¼òµ¥»¹ºÃ£¬Èç¹ûÓöµ½¸´ÔÓµÄI2CÊÊÅäÆ÷£¨È磺»ùÓÚPCIµÄI2CÊÊÅäÆ÷£©£¬¹¤×÷Á¿¾Í»á´óºÜ¶à¡£
±¾ÎÄÕë¶ÔµÄ¶ÔÏóÊÇÊìϤI2CÐÒ飬²¢ÇÒÏëʹÓÃlinuxÄÚºË×ÓϵͳµÄ¿ª·¢ÈËÔ±¡£
ÍøÂçºÍһЩÊé¼®ÉÏÓнéÉÜI2C×ÓϵͳµÄÔ´Âë½á¹¹¡£µ«·¢Ïֺܶ࿪·¢ÈËÔ±¿´ÁËÕâЩÎÄÕº󣬻¹ÊDz»Çå³þ×Ô¼º¾¿¾¹¸Ã×öЩʲô¡£¾¿ÆäÔÒò»¹ÊÇûŪÇå³þI2C×ÓϵͳΪÎÒÃÇ×öÁËЩʲô£¬ÒÔ¼°ÎÒÃÇÔõÑùÀûÓÃI2C×Óϵͳ¡£±¾ÎÄÊ×ÏÈÒª½â¾öÊÇÈçºÎÀûÓÃÏÖÓÐÄÚºËÖ§³ÖµÄI2CÊÊÅäÆ÷£¬Íê³É¶ÔI2CÉ豸µÄ²Ù×÷£¬È»ºóÔÙ¹ý¶Èµ½ÊÊÅäÆ÷´úÂëµÄ±àд¡£±¾ÎÄÖ÷Òª´Ó½â¾öÎÊÌâµÄ½Ç¶Èȥд£¬²»»áÉæ¼°ÌرðÏêϸµÄ´úÂë¸ú×Ù¡£
¶þ¡¢I2CÉ豸Çý¶¯³ÌÐò±àд
Ê×ÏÈÒªÃ÷È·ÊÊÅäÆ÷Çý¶¯µÄ×÷ÓÃÊÇÈÃÎÒÃÇÄܹ»Í¨¹ýËü·¢³ö·ûºÏI2C±ê×¼ÐÒéµÄʱÐò¡£
ÔÚLinuxÄÚºËÔ´´úÂëÖеÄdrivers/i2c/bussesĿ¼Ï°üº¬×ÅһЩÊÊÅäÆ÷µÄÇý¶¯¡£ÈçS3C2410µÄÇý¶¯i2c-s3c2410.c¡£µ±ÊÊÅäÆ÷¼ÓÔØµ½Äں˺󣬽ÓÏÂÀ´µÄ¹¤×÷¾ÍÒªÕë¶Ô¾ßÌåµÄÉ豸±àдÉ豸Çý¶¯ÁË¡£
±àдI2CÉ豸Çý¶¯Ò²ÓÐÁ½ÖÖ·½·¨¡£Ò»ÖÖÊÇÀûÓÃϵͳ¸øÎÒÃÇÌṩµÄi2c-dev.cÀ´ÊµÏÖÒ»¸öi2cÊÊÅäÆ÷µÄÉ豸Îļþ¡£È»ºóͨ¹ýÔÚÓ¦Óòã²Ù×÷i2cÊÊÅäÆ÷À´¿ØÖÆi2cÉ豸¡£ÁíÒ»ÖÖÊÇΪi2cÉ豸£¬¶ÀÁ¢±àдһ¸öÉ豸Çý¶¯¡£×¢Ò⣺ÔÚºóÒ»ÖÖÇé¿öÏ£¬ÊDz»ÐèҪʹÓÃi2c-dev.cµÄ¡£
1¡¢ÀûÓÃi2c-dev.c²Ù×÷ÊÊÅäÆ÷£¬½ø¶ø¿ØÖÆi2cÉ豸
i2c-dev.c²¢Ã»ÓÐÕë¶ÔÌØ¶¨µÄÉ豸¶øÉè¼Æ£¬Ö»ÊÇÌṩÁËͨÓõÄread()¡¢write()ºÍioctl()µÈ½Ó¿Ú£¬Ó¦Óòã¿ÉÒÔ½èÓÃÕâЩ½Ó¿Ú·ÃÎʹҽÓÔÚÊÊÅäÆ÷É
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈÐÒé ......
ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâÆª·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´Ë×ªÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨ÕâÆª²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
stat½á¹¹µÄ³ÉÔ±ÔÚ²»Í¬µÄunixÖлáÓÐËù±ä»¯.. µ«Ò»°ã¶¼°üº¬ÒÔÏÂËùʾµÄÄÚÈÝ£º
St_mode ÎļþȨÏÞºÍÎļþÀàÐÍÐÅÏ¢¡£
st_ino Óë¸ÃÎļþ¹ØÁªµÄinode
st_dev ±£´æÎļþµÄÉ豸
st_uid ÎļþÊôÖ÷µÄUIDºÅ
st_gid ......
ÔÚLinuxϵͳÖÐÎÒÒ»°ã²ÉÓñàÒëÔ´ÂëµÄ·½Ê½À´°²×°Apache£¬ÓÐÁ½ÖÖ·½·¨¿ÉÒÔÈÃApacheÔÚϵͳÆô¶¯Ê±×Ô¶¯Æô¶¯¡£
1. ÔÚ/etc/rc.d/rc.localÖÐÔö¼ÓÆô¶¯apacheµÄÃüÁÀýÈ磺/usr/local/httpd/bin/apachectl start
2. ½«apache×¢²áΪϵͳ·þÎñ
Ê×ÏȽ«apachectlÃüÁ±´ÖÁ/etc/rc.d/init.dĿ¼Ï£¬¸ÄÃûΪhttpd
ʹÓÃ±à¼Æ÷´ò¿ªhttpdÎļþ ......