I2C×ÜÏßÔÚLinuxϵͳÖеÄÇý¶¯Éè¼Æ
¡¡1 ÒýÑÔ
¡¡¡¡Linux²Ù×÷ϵͳÒò¾ßÓÐÔ´´úÂ빫¿ª¡¢±ãÓڲüõ¡¢Óй㷺µÄ´¦ÀíÆ÷Ö§³ÖµÈÓŵ㣬³ÉΪµ±Ç°Ç¶ÈëʽϵͳµÄÈÈÃÅÑ¡Ôñ¡£»ùÓÚI2C×ÜÏߵļüÅÌÀ©Õ¹É豸Ö÷ÒªÓÃÓÚÂú×ãǶÈëʽÉ豸ÖжԶఴ¼üµÄÐèÇó£¬Çý¶¯³ÌÐòÔÚϵͳÆô¶¯Ê±¶ÔÓ²¼þ½øÐгõʼ»¯¡£ÔÚϵͳÆô¶¯ºóʵÏÖÓ²¼þºÍÓ¦ÓóÌÐòÖ®¼äµÄÊý¾Ý½»»¥¡£Õë¶ÔS3C2410΢´¦ÀíÆ÷ºÍ¼üÅÌɨÃè¹ÜÀíÆ÷¼þ£¬ÉîÈëÌÖÂÛÈçºÎÔÚǶÈëʽ²Ù×÷ϵͳarm LinuxÖÐʵÏÖZLG7290µÄÇý¶¯¡£
¡¡¡¡2 I2C×ÜÏß
¡¡¡¡I2C×ÜÏßÊÇÆ÷¼þ¼ä´®Ðд«Êä×ÜÏߣ¬ÒÔÆä¹æ·¶ºÍ´øI2C½Ó¿ÚµÄÍâΧÆ÷¼þ»ñµÃ¹ã·ºÓ¦Óá£S3C2410´¦ÀíÆ÷ÄÚÖÃÓÐI2C×ÜÏß½Ó¿Ú¡£I2C×ÜÏßÊÇÓÉÊý¾ÝÏßSDAºÍʱÖÓSCL¹¹³ÉµÄ´®ÐÐ×ÜÏߣ¬¿É·¢ËͺͽÓÊÕÊý¾Ý£¬Ã¿¸öÆ÷¼þ¶¼ÓÐÒ»¸öΨһµÄµØַʶ±ð¡£I2C×ÜÏßÔÚ´«ËÍÊý¾Ý¹ý³ÌÖй²ÓÐ3ÖÖÐźţº(1)¿ªÊ¼ÐźţºSCLΪ¸ßµçƽʱ£¬SDAÓɸߵçƽÏòµÍµçƽÌø±ä£¬¿ªÊ¼´«ËÍÊý¾Ý¡£(2)½áÊøÐźţºSCLΪµÍµçƽʱ£¬SDAÓɵ͵çƽÏò¸ßµçƽÌø±ä£¬½áÊø´«ËÍÊý¾Ý¡£(3)Ó¦´ðÐźţº½ÓÊÕÊý¾ÝµÄIC½ÓÊÕµ½8 bitÊý¾Ýºó£¬Ïò·¢ËÍÊý¾ÝµÄIC·¢³öÌض¨µÄµÍµçƽÂö³å£¬±íʾÒÑÊÕµ½Êý¾Ý¡£CPUÏòÊܿص¥Ôª·¢³öÒ»¸öÐźź󣬵ȴýÊܿص¥Ôª·¢³öÓ¦´ðÐźţ¬CPU½ÓÊÕµ½Ó¦´ðÐźź󣬸ù¾Ýʵ¼ÊÇé¿ö×ö³öÊÇ·ñ¼ÌÐø´«µÝÐźŵÄÅжϡ£ÈôδÊÕµ½Ó¦´ðÐźţ¬ÔòÅжÏΪÊܿص¥Ôª³öÏÖ¹ÊÕÏ¡£Í¼1ΪS3C2410ºÍZLG7290µÄÁ¬½Óͼ¡£
¡¡¡¡3 Çý¶¯Ä£¿éµÄ½á¹¹
¡¡¡¡S3C2410AÄÚǶһ¸öI2C×ÜÏß¿ØÖÆÆ÷¡£ÔÚLinux²Ù×÷ϵͳÖУ¬¸Ã¿ØÖÆÆ÷µÄ×Ö·ûÐÍÇý¶¯°üÀ¨4¸öÄ£¿é£º(1)i2c-dev£ºÔ´³ÌÐòΪi2c-dev£®c£¬I2C×ÜÏß×Ö·ûÐÍÇý¶¯£¬Óë¾ßÌåʹÓõÄI2C¿ØÖÆÆ÷Î޹ء£(2)i2c-core£ºÔ´³ÌÐòΪi2c-core£®c£¬I2C×ÜÏß²Ù×÷ºËÐĺ¯Êý£¬Óë¾ßÌåʹÓõÄI2C¿ØÖÆÆ÷Î޹ء£(3)i2c-algo-s3c2410£ºÔ´³ÌÐòΪi2c-algo-s3c2410£®c£¬I2C×ÜÏß¿ØÖÆÆ÷I2CÇý¶¯Ëã·¨£¬Óë¾ßÌåµÄ¿ØÖÆÆ÷Ïà¹Ø¡£(4)i2c-s3c2410£ºÔ´³ÌÐòΪi2c-s3c2410£®c£¬I2C×ÜÏß¿ØÖÆÆ÷Ó²¼þ³éÏó²ã£¬Óë¾ßÌåµÄ¿ØÖÆÆ÷Ïà¹Ø¡£ÒÔÉÏ4¸öÄ£¿éÒÀ´ÎÊǵײãÓëÉϲãµÄ¹Øϵ£¬I2CÇý¶¯Ä£¿éµÄ²ã´Î½á¹¹Èçͼ2Ëùʾ¡£
¡¡¡¡4 Çý¶¯Ô´ÎļþµÄ±àÒë
¡¡¡¡Çý¶¯Ô´Îļþ°üÀ¨i2c-algo-s3c2410£®c£¬i2c-dev£®c£¬i2c-core£®c£¬i2c-s3c2410£®c4¸öÔ´Îļþ¡£½«Æä±àÒëΪģ¿é£¬Ôò²úÉú4¸öÄ£¿éÎļþ£¬±àÒ빤×÷ÓÉMakefileÎļþÍê³É,ÆäÎļþÄÚÈÝÈçÏ£º
µ±ÐèҪʹÓÃI2C×ÜÏß¿ØÖÆÆ÷Çý¶¯Ä£¿éʱ£¬¿ÉÒÔʹÓÃI2C×ÜÏß¿ØÖÆÆ÷Çý¶¯µÄÉ豸¹ÜÀíÎļþloadi2c¡£¸Ã¹ÜÀíÎļþÔËÐк󣬽«×Ô¶¯ÔÚLinuxµÄ£¯dev£¯Ä¿Â¼Ï´´½¨É豸½Úµãi2c¡£loadi2cÎļþÄÚÈÝÈçÏ£º
¡¡¡¡ÓÉÓÚ¸÷Ä£¿é¼äÓÐÉÏϲã¹Øϵ£¬Ôò¼ÓÔØÄ£¿é˳ÐòÓ¦ÊÇ´ÓÉϵ½Ï£¬×îÏȼÓÔØi2c-core£¬×îºó¼ÓÔ
Ïà¹ØÎĵµ£º
´´½¨×ÀÃæͼ±ê
Ä¿Ç°½«ÍøÂçÓ¦ÓÃÀ©Õ¹µ½×ÀÃæÊÇÒ»¸öÇ÷ÊÆ£¬´æÔÚןܶà½â¾ö·½°¸£¬±¾ÎÄÒÔ Mozilla Prism ΪÀý£¬ÀàËƵķ½·¨Í¬ÑùÊÊÓÃÓÚ Google Chrome ¡£
1. µ½ Mozilla Prism µÄÍøÕ¾ÉÏÏÂÔØ Prism£¬µã»÷ Download Now Ö®ºó»áÌáʾÓÐÁ½ÖÖ£¬Ò»ÖÖÊÇÒÔ Mozilla Firefox À©Õ¹µÄ·½Ê½£¬ÊʺÏÒѾ°²×°ÓÐ Firefox µÄÅóÓÑ£»Ò»Ö ......
¡¡I2C×ÜÏß¾ßÓнṹ¼òµ¥Ê¹Ó÷½±ãµÄÌص㡣±¾ÎÄÃèÊöÁËlinuxÏÂI2CÇý¶¯µÄ½á¹¹£¬²¢ÔÚ´Ë»ù´¡Éϸø³öÁËI2CÉ豸Çý¶¯ºÍÓ¦ÓõÄʵÏÖ¡£
¡¡¡¡1 ÒýÑÔ
¡¡¡¡I2C (Inter£Integrated Circuit)×ÜÏßÊÇÒ»ÖÖÓÉPHILIPS¹«Ë¾¿ª·¢µÄÁ½Ïßʽ´®ÐÐ×ÜÏߣ¬ÓÃÓÚÁ¬½Ó΢¿ØÖÆÆ÷¼°ÆäÍâΧÉ豸¡£I2C×ÜÏß×îÖ÷ÒªµÄÓŵãÊÇÆä¼òµ¥ÐÔºÍÓÐЧÐÔ¡£ÓÉÓÚ½Ó¿ÚÖ±½ÓÔÚ×é¼þÖ ......
1 ÒýÑÔ
¡¡¡¡Linux²Ù×÷ϵͳÒò¾ßÓÐÔ´´úÂ빫¿ª¡¢±ãÓڲüõ¡¢Óй㷺µÄ´¦ÀíÆ÷Ö§³ÖµÈÓŵ㣬³ÉΪµ±Ç°Ç¶ÈëʽϵͳµÄÈÈÃÅÑ¡Ôñ¡£»ùÓÚI2C×ÜÏߵļüÅÌÀ©Õ¹É豸Ö÷ÒªÓÃÓÚÂú×ãǶÈëʽÉ豸ÖжԶఴ¼üµÄÐèÇó£¬Çý¶¯³ÌÐòÔÚϵͳÆô¶¯Ê±¶ÔÓ²¼þ½øÐгõʼ»¯¡£ÔÚϵͳÆô¶¯ºóʵÏÖÓ²¼þºÍÓ¦ÓóÌÐòÖ®¼äµÄÊý¾Ý½»»¥¡£Õë¶ÔS3C2410΢´¦ÀíÆ÷ºÍ¼üÅÌɨÃè¹ÜÀíÆ÷¼þ£¬ÉîÈ ......
Link from: http://www.faqs.org/docs/Linux-mini/C++-dlopen.html
//1. == main.cpp =============================================
// How to build?
// g++ -o main main.cpp -ldl
//=======================================================
#include <iostream>
#include <dlfcn.h>
int main() { ......
1¡¢×ܽᱳ¾°
ÔÚlinuxϵͳÏ£¬Èç¹ûÄãÏÂÔز¢°²×°ÁËÓ¦ÓóÌÐò£¬ºÜÓпÉÄÜÔÚ¼üÈëËüµÄÃû³Æʱ³öÏÖ“command not found”µÄÌáʾÄÚÈÝ¡£Èç¹ûÿ´Î¶¼µ½°²×°Ä¿±êÎļþ¼ÐÄÚ£¬ÕÒµ½¿ÉÖ´ÐÐÎļþÀ´½øÐвÙ×÷¾ÍÌ«·±ËöÁË¡£ÕâÉæ¼°µ½»·¾³±äÁ¿PATHµÄÉèÖÃÎÊÌ⣬¶øPATHµÄÉèÖÃÒ²ÊÇÔÚlinux϶¨ÖÆ»·¾³±äÁ¿µÄÒ»¸ö×é³É²¿·Ö¡£±¾°¸Àý»ùÓÚRedHat AS4½² ......