虚拟机要以管理员身份运行
不能选择自动,自动默认是无线。
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <errno.h>
#include <stdlib.h>
#include <string.h>
int key1_fd=-1;
int key2_fd=-1;
int led_fd=-1;
int beep_fd=-1;
int main(int argc, const char *argv[])
{
char s2;//key1 a
key1_fd=open("/dev/s2",O_RDWR);
if(key1_fd<0)
{
perror("open key1 error:");
exit(-1);
}
char s3;//key2 b
key2_fd=open("/dev/s3",O_RDWR);
if(key2_fd<0)
{
perror("open key2 error:");
exit(-1);
}
char led; //1 2
led_fd=open("/dev/myled",O_RDWR);
if(led_fd<0)
{
perror("open led error:");
exit(1);
}
beep_fd = open("/dev/mybeep", O_RDWR);
if (beep_fd < 0)
{
perror("open beep error:");
exit(1);
}
char beep='2';
write (beep_fd, &beep, 1);
while(1)
{
read(key1_fd, &s2, 1);
printf("key1=%c\n",s2);
if(s2 == 'a')
{
beep='1';
write(beep_fd,&beep,1);
led='2';
write(led_fd,&led,1);
}
read(key2_fd,&s3,1);
printf("key2=%c\n",s3);
if(s3=='b')
{
beep='2';
led='1';
write(beep_fd,&beep,1);
write(led_fd,&led,1);
}
}
close(beep_fd);
close(led_fd);
close(key1_fd);
close(key2_fd);
return 0;
}