1.所采用的是友善之臂SPV5 210开发板,在ubuntu14操作系统下开发。
2.主要通过按键输入1、2、3、4控制开发板上的led灯循环亮灯,第一盏灯点亮,清零,退出的功能。
3.需要安装先安装驱动程序,才能够运行led显示台控制程序。
LED显示控制台程序代码:
#include<stdio.h>
#include<stdlib.h>
#include<sys/types.h>
#include<fcntl.h>
#include<sys/stat.h>
int fd;
void delay() //延时程序
{
int i= 1000000;
int j = 1000000;
for(i;i>0;i--)
for(j;j>0;j--);
}
void led_while() //led灯依次点亮
{
ioctl(fd, 1 ,0);
delay();
ioctl(fd, 0 ,0);
delay();
ioctl(fd, 1, 1);
delay();
ioctl(fd, 0, 1);
delay();
ioctl(fd, 1, 2);
delay();
ioctl(fd, 0, 2);
delay();
ioctl(fd, 1, 3);
delay();
ioctl(fd, 0, 3);
delay();
}
void led_allup() //led灯全部打开
{
ioctl(fd, 1,0);
ioctl(fd, 1,1);
ioctl(fd, 1,2);
ioctl(fd, 1,3);
}
void led_alldown() //led灯全部关闭
{
ioctl(fd, 0 ,0);
ioctl(fd, 0 ,1);
ioctl(fd, 0 ,2);
ioctl(fd, 0 ,3);
}
int main(void)
{
fd = open("/dev/guo-led",0);
if(fd<0)
{
printf("open dev failed!\n");
}
else
while(1)
{
printf("open dev sucess!\n");
printf(" LED controler \n");
printf("1.LED while open\n");
printf("2.LED1 open\n");
printf("3. setting 0\n");
printf("4.esc \n");
printf("make your choice\n");
char ch;
ch = getchar();
switch (ch)
{
case '1':
printf("LED while open-------\n");
led_while();
break;
case '2':
printf("LED1 open---------\n");
ioctl(fd, 1 ,0);
delay();
break;
case '3':
printf("setting 0------\n");
led_alldown();
delay();
break;
case '4':
printf("esc------\n");
break;
default:
break;
}
}
close(fd);
return 0;
}