1. 我就是来点个灯,源码如下。有可以测试的就测试一下吧。
  2. /* Copyright -20220809- shen  All Rights Reserved. */
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5. #include <stdint.h>
  6. #include <stdbool.h>
  7. #include <string.h>
  8. #include <getopt.h>
  9. #include <signal.h>
  10. #include <unistd.h>
  11. #include <errno.h>
  12. #include <libgen.h>
  13. /* Get array size */
  14. #define ARRAY_SIZE(array) sizeof(array) / sizeof(array[0])
  15. /* Exit flag */
  16. volatile bool g_quit = false;
  17. /* User-operable LEDs */
  18. static char *g_leds[1] =
  19. {
  20.     "/sys/class/leds/blue"
  21. };
  22. void sig_handle(int arg)
  23. {
  24.     g_quit = true;
  25. }
  26. int main(int argc, char **argv)
  27. {
  28.     int i = 0;
  29.     int c = 0;
  30.     int num = 0;
  31.     int flag = 0;
  32.     char cmd[64] = {0};
  33.     while (!g_quit)
  34.         {
  35.         /* Turn on LEDs */
  36.                 {
  37.             /* Set the LED brightness value to 0 to turn on the led */
  38.             snprintf(cmd, 64, "echo 0 > %s/brightness", g_leds[0]);
  39.             if (system(cmd) != 0)
  40.                         {
  41.                 fprintf(stderr, "Error: Failed to turn on %s\n", g_leds[0]);
  42.                 exit(EXIT_FAILURE);
  43.             }
  44.                         else
  45.                         {
  46.                                 fprintf(stderr, "LED:%s LED_ON \n", g_leds[0]);
  47.                                
  48.                         }
  49.         }
  50.         /* Keep the LEDs on for 1000 ms */
  51.         usleep(1000 * 1000);
  52.         /* Turn off LEDs */
  53.         {
  54.             /* Set the LED brightness value to 1 to turn off the LED */
  55.             snprintf(cmd, 64, "echo 1 > %s/brightness", g_leds[i]);
  56.             if (system(cmd) != 0)
  57.                         {
  58.                 fprintf(stderr, "Error: Failed to turn off %s\n", g_leds[0]);
  59.                 exit(EXIT_FAILURE);
  60.             }
  61.                         else
  62.                         {
  63.                                 fprintf(stderr, "LED:%s LED_OFF \n", g_leds[0]);
  64.                                
  65.                         }
  66.         }
  67.         /* Keep the LEDs off for 1000 ms */
  68.         usleep(1000 * 1000);
  69.     }
  70.     printf("Exit\n");
  71.     return 0;
  72. }
全部代码以及文件都在下面的压缩包里面。
Test_LED.rar (5.23 KB, 下载次数: 0)
全部回复 0
暂无评论,快来抢沙发吧