原创 LED Example for utulinux 2440 LED测试示例

2010-2-27 13:55 3164 9 9 分类: MCU/ 嵌入式

LED Example for utulinux 2440 LED测试示例



注解:borlittle


仅供学习参考,源代码版权归原著者所有

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


/*


 *      LED Example for utulinux 2440


 *      一个简单的字符测试程序


 */


#include <stdio.h>               /*标准输入输出头文件*/


#include <stdlib.h>              /*标准库函数头文件*/


#include <unistd.h>              /*定义标准杂项的符号常量和类型,申明杂项的函数头文件*/


#include <sys/ioctl.h>           /*特殊控制函数ioctl头文件,在系统目录的sys目录下*/


 


int main(int argc, char **argv)  /*带参数主函数*/


{


       int on;


       int led_number;


       int fd;                        /*定义文件描述符变量*/


                                       /*获取控制台参数,并处理错误*/


       if (argc != 3 || sscanf(argv[1], "%d", &led_number) != 1 || sscanf(argv[2],"%d", &on) != 1 ||


           on < 0 || on > 1 || led_number < 0 || led_number > 3)


           {


              fprintf(stderr, "Usage:\n");   /*stderr将错误信息送到标准错误文件中,并通过fprintf输出到终端 */


              fprintf(stderr, "\t led led_number on|off\n");


              fprintf(stderr, "Options:\n");


              fprintf(stderr, "\t led_number from 0 to 3\n");


              fprintf(stderr, "\t on 1    off 0\n");


              exit(1);


       }


       fd = open("/dev/led", 0);       /*打开设备*/


       if (fd < 0)                    


              {


              perror("open device /dev/led");  /*打开失败,提示错误*/


              exit(1);


       }


       ioctl(fd, on, led_number);    /*控制I/O设备点亮相应的LED*/


       close(fd);                    /*关闭退出*/


       return 0;


}


 

文章评论0条评论)

登录后参与讨论
我要评论
0
9
关闭 站长推荐上一条 /2 下一条