i.MX6ULLÖÕ½áÕßLinux²¢·¢Ó뾺ÕùʵÑ黥³âÌåʵÑé

ÈÕÆÚ£º2020-12-15

  • 1 ±àдÇý¶¯³ÌÐò

    ±¾ÊµÑéÀý³Ì·¾¶£ºi.MX6ULÖÕ½áÕß¹âÅÌ×ÊÁÏ/06_LinuxÇý¶¯Àý³Ì/07_gpioled_mutex

    ´´½¨gpioled_mutex.c£¬ÄÚÈÝÈçÏ£¨ÓÐÊ¡ÂÔ£© £º

    µÚ 33 ÐУ¬¶¨Ò廥³âÌå lock¡£

    µÚ 45~58 ÐУ¬ÔÚ open º¯ÊýÖе÷Óà mutex_lock_interruptible »òÕß mutex_lock »ñÈ¡ mutex£¬³É¹¦µÄ»°¾Í±íʾ¿ÉÒÔʹÓà LED µÆ£¬Ê§°ÜµÄ»°¾Í»á½øÈëÐÝÃß״̬£¬ºÍÐźÅÁ¿Ò»Ñù¡£

    µÚ 114 ÐУ¬ÔÚ release º¯ÊýÖе÷Óà mutex_unlock º¯ÊýÊÍ·Å mutex£¬ÕâÑùÆäËûÓ¦ÓóÌÐò¾Í¿ÉÒÔ»ñÈ¡ mutex ÁË¡£

    µÚ 138 ÐУ¬ÔÚÇý¶¯Èë¿Úº¯ÊýÖе÷Óà mutex_init ³õʼ»¯ mutex¡£

    »¥³âÌåºÍ¶þÖµÐźÅÁ¿ÀàËÆ£¬Ö»²»¹ý»¥³âÌåÊÇרÃÅÓÃÓÚ»¥³â·ÃÎʵġ£

    2 ±àдӦÓòâÊÔ³ÌÐò

    Ó¦ÓòâÊÔ³ÌÐòʹÓÃ38.1.2ÖеÄÓ¦ÓòâÊÔ³ÌÐò¼´¿É¡£

    3 ÔËÐвâÊÔ

    1¡¢±àÒëÇý¶¯³ÌÐò

    Ìí¼ÓMakefileÎļþ£¬ÐÞ¸Äobj-mµÄֵΪ gpioled_mutex.o£¬ÄÚÈÝÈçÏ£º

    Ê×ÏÈÎÒÃÇÔÚÖÕ¶ËÊäÈëÁ½¸öÃüÁÉèÖÃÁ½¸ö»·¾³±äÁ¿£©£º

    export ARCH=arm

    export CROSS_COMPILE=arm-linux-gnueabihf-

    È»ºóʹÓá°make¡±ÃüÁî½øÐбàÒ룬Éú³Égpioled_semaphore.koÇý¶¯Ä£¿éÎļþ¡£

    2¡¢ÔËÐвâÊÔ

    ½«±àÒëºÃµÄgpioled_mutex.koÇý¶¯Ä£¿éÎļþ¿½±´µ½/lib/modules/4.1.15Ŀ¼Ï£¨¼ì²é¿ª·¢°å¸ùÎļþϵͳÖÐÓÐûÓС°/lib/modules/4.1.15¡±Õâ¸öĿ¼£¬Èç¹ûûÓеϰÐèÒª×ÔÐд´½¨Ò»Ï¡£¿ª·¢°åÖÐʹÓõÄÊǹâÅÌ×ÊÁÏÀïÃæÌṩµÄbusyboxÎļþϵͳ£¬¹âÅÌ×ÊÁϵġ°i.MX6ULÖÕ½áÕß¹âÅÌ×ÊÁÏ\08_¿ª·¢°åϵͳ¾µÏñ\03_Îļþϵͳ¾µÏñ\01_BusyboxÎļþϵͳ¡±Ä¿Â¼Ï£©¡£ÊäÈëÏÂÃæÃüÁî¼ÓÔØÄ£¿é£º

    depmod

    modprobe gpioled_mutex

    Çý¶¯Ä£¿é¼ÓÔØ³É¹¦Èçͼ 3.1Ëùʾ£º

    Çý¶¯Ä£¿é¼ÓÔØ³É¹¦ºó£¬Ê¹ÓÃgpioled_atomic_testÓ¦ÓòâÊÔ³ÌÐò½øÐвâÊÔ£¬²âÊÔÁ÷³ÌºÍÔ­×Ó±äÁ¿²âÊÔÒ»Ñù¡£Ê¹ÓÃÏÂÃæµÄÃüÁî´ò¿ªLEDµÆ£º

    ./gpioled_atomic_test /dev/gpioled 1 &

    È»ºó½ô½Ó×ÅÊäÈëLEDµÆ¹Ø±ÕÃüÁ

    ./gpioled_atomic_test /dev/gpioled 0 &

    ÔËÐнá¹ûÈçÏ£º

    ¿ÉÒÔ¿´³öºÍÐźÅÁ¿µÄ²âÊÔ½á¹ûÒ»Ñù¡£

    Ð¶ÔØÄ£¿éÃüÁ

    rmmod gpioled_mutex

  • ÍúÍú×Éѯ
  • µãÕâÀï¸øÎÒ·¢ÏûÏ¢
  • µç»°×Éѯ

  • 01085270716
XML 地图