led.c
上传用户:sy_wanhua
上传日期:2013-07-25
资源大小:3048k
文件大小:2k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

C/C++

  1. /******************************************************************************
  2. * This is a small application that demonstrates how to make the LEDs on
  3. * the Quicknet Technologies, Inc. Internet LineJack card go blinky blink.
  4. *
  5. * Written by Ed Okerson (eokerson@quicknet.net)
  6. * Quicknet Technologies, Inc.
  7. *
  8. * The ixj driver uses the ioctl IXJCTL_SET_LED to determine which LED to
  9. * turn on, you pass it a char value and each of the l.s. bits represents
  10. * an LED.  If the bit is 1 the LED will come on, if the bit is 0 the LED
  11. * will go off.
  12. ******************************************************************************/
  13. #include <stdio.h> 
  14. #include <stdlib.h> 
  15. #include <strings.h> 
  16. #include <sys/ioctl.h>
  17. #include <sys/types.h>
  18. #include <sys/stat.h>
  19. #include <fcntl.h>
  20. #include "ixjuser.h"
  21. int ixj;
  22. void led(char en)
  23. {
  24.   printf("LED 1 = %dt", en & 0x1?1:0);
  25.   printf("LED 2 = %dt", en & 0x2?1:0);
  26.   printf("LED 3 = %dt", en & 0x4?1:0);
  27.   printf("LED 4 = %dt", en & 0x8?1:0);
  28.   printf("en = %dn", en);
  29.   ioctl(ixj, IXJCTL_SET_LED, en);
  30. }
  31. void closeall(void)
  32. {
  33.   close(ixj);
  34. }
  35. int main(int argc, char *argv[])
  36. {
  37.   char pname[80];
  38.   sprintf(pname, "/dev/ixj%s", argv[1]);
  39.   ixj = open(pname, O_RDWR);
  40.   atexit(closeall);
  41.   sleep(1);
  42.   led(0x1);
  43.   sleep(1);
  44.   led(0x2);
  45.   sleep(1);
  46.   led(0x4);
  47.   sleep(1);
  48.   led(0x8);
  49.   sleep(1);
  50.   led(0x3);
  51.   sleep(1);
  52.   led(0xC);
  53.   sleep(1);
  54.   led(0x5);
  55.   sleep(1);
  56.   led(0xA);
  57.   sleep(1);
  58.   led(0x9);
  59.   sleep(1);
  60.   led(0x6);
  61.   sleep(1);
  62.   led(0x0);
  63.   sleep(1);
  64.   led(0xF);
  65.   sleep(1);
  66.   led(0x0);
  67.   sleep(1);
  68.   led(0xF);
  69.   sleep(1);
  70.   led(0x0);
  71.   sleep(1);
  72.   led(0xF);
  73.   sleep(1);
  74.   led(0x0);
  75.   sleep(1);
  76. }