免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3848 | 回复: 4
打印 上一主题 下一主题

请教44b0上AD驱动的相关问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-03-21 11:11 |只看该作者 |倒序浏览
10可用积分
最近在写几个硬件的驱动代码,由于刚接触这个,很多还是不懂,还希望大侠们帮我看下,下面是我碰到的错误,不甚感激阿。
AD驱动已经以模块的方式加载进内核,在lsmod命令下也可以看到
Module Size Used by Not tainted
adc 1128 0 (unused)

然后我运行一测试程序,。/test (chmod 777 test)出现。./test: Permission denied 错误,开发版其他的可执行程序/脚本都可以运行,没有任何问题。问题出在什么地方呢 ?驱动,还是测试代码 ?
test.c的代码如下:
----------------------------------------------------------------
int main(void){
int fd;
volatile unsigned int ad_data;

fd=open("/dev/ADC0.1",O_RDONLY);
if(fd==-1){
printf("can not open ADC0.0 \n");
exit(-1);
}

ioctl(fd,0,20);//set the speed of AD converting;
while(1){
ad_data=0;
read(fd,&ad_data,sizeof(ad_data));
printf("%d",ad_data);
sleep(10);
}

return 0;
}
----------------------------------------------------------------

最佳答案

查看完整内容

没关系。前一个用于/proc/devices中的对应关系表,从这张表里面找到对应的主设备号,然后根据主设备号创建名为后一个name的设备文件。

论坛徽章:
0
2 [报告]
发表于 2007-03-21 11:11 |只看该作者
没关系。前一个用于/proc/devices中的对应关系表,从这张表里面找到对应的主设备号,然后根据主设备号创建名为后一个name的设备文件。

原帖由 gczh1006 于 2007-3-21 14:36 发表于 4楼  
请教yidou斑竹

驱动中,register_chrdev() 中的参数 name 和,mknod name,c,major,minor 的name 有关系没?

论坛徽章:
5
3 [报告]
发表于 2007-03-21 11:58 |只看该作者
如果排除执行权限的问题,可能是程序代码非正常,比如说open或ioctl出错,可跟踪调试一下。
strace ./test
看看在什么地方有问题

论坛徽章:
0
4 [报告]
发表于 2007-03-21 14:28 |只看该作者
找到错误原因了

nfs客户端没有写权限

论坛徽章:
0
5 [报告]
发表于 2007-03-21 14:36 |只看该作者
请教yidou斑竹

驱动中,register_chrdev() 中的参数 name 和,mknod name,c,major,minor 的name 有关系没?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP