请教linux下spi驱动问题
展开全部
/*这是一个简单的用户程序与驱动交互的例程*/
void main(void)
{
int testdev;
int i;
char buf[10];
/* 这里是用的open系统调用,是linux内核接口函数,不是库函数,返回fd,详细请google ,这个open最终会调用驱动中的open函数(代码流程是这样的open()->sys_open()->filp_open()->dentry_open()->驱动open)*/
testdev=open("/dev/test",O_RDWR);
if(testdev==-1)
{
printf("Cann'topenfile...../n");
exit(0);
}
printf("buf=0x%x/n",buf);
/*下面的readwrite和ioctl是用户程序和内核驱动的最直接的交互方式*/
read(testdev,buf,10);
write(testdev,buf,1);
led_ctl.port='G';
led_ctl.bit=5;
led_ctl.value=0;
ioctl(testdev,GPIO_IO_SET_GPG,&led_ctl);
printf("%s",buf);
pause();
close(testdev);
void main(void)
{
int testdev;
int i;
char buf[10];
/* 这里是用的open系统调用,是linux内核接口函数,不是库函数,返回fd,详细请google ,这个open最终会调用驱动中的open函数(代码流程是这样的open()->sys_open()->filp_open()->dentry_open()->驱动open)*/
testdev=open("/dev/test",O_RDWR);
if(testdev==-1)
{
printf("Cann'topenfile...../n");
exit(0);
}
printf("buf=0x%x/n",buf);
/*下面的readwrite和ioctl是用户程序和内核驱动的最直接的交互方式*/
read(testdev,buf,10);
write(testdev,buf,1);
led_ctl.port='G';
led_ctl.bit=5;
led_ctl.value=0;
ioctl(testdev,GPIO_IO_SET_GPG,&led_ctl);
printf("%s",buf);
pause();
close(testdev);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询