打印
[i.MX]

IMX6/28板子上执行程序找不到文件

[复制链接]
912|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
叶小雨95|  楼主 | 2015-2-2 12:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本人是Linux新手,写了一个驱动传感器接受数据的程序,在电脑里正常运行,到了板子里编译成功后却无法执行。经调试后发现是程序找不到文件/dev/ttyACM0。部分程序代码如下
void openport(const char* port_name )
{
    laser_fd = open( port_name, O_RDWR | O_NONBLOCK | O_NOCTTY, 777 );
        cout<<"laser_fd = "<<laser_fd<<endl;
    read_buf_start = 0;
    read_buf_end = 0;

    if( laser_fd == -1 ){
                printf("error code : %d\n",errno);
    }

        lockwrite(laser_fd,1);

        //USB串口设置
        struct termios newtio;
        memset(&newtio.c_cc, 0, sizeof( newtio.c_cc) );
        newtio.c_cflag  =   CS8 | CLOCAL | CREAD;
        newtio.c_iflag  =   IGNPAR;
        newtio.c_oflag  =   0;
        newtio.c_lflag  =   0;
.........................
其中port_name在main里面定义const char* port_name = "/dev/ttyACM0";

程序在板子里执行后显示
linaro@linaro-ubuntu-desktop:~$ cd laser/
linaro@linaro-ubuntu-desktop:~/laser$ ./laser
laser_fd = -1
error code:6
再查一下errno.h的定义为
#define ENXIO 6 /* No such device or address */

然后我再检查了一下发现有这个设备
linaro@linaro-ubuntu-desktop:/dev$ ls ttyACM0 -l
crwxrwxrwx 1 root dialout 166, 0 Jan  1 08:22 ttyACM0
现在我是莫名其妙彻底没辙了,希望高手指点

板子上的系统是12.04

相关帖子

沙发
FSL_TICS_Rita| | 2015-2-2 18:04 | 只看该作者
明天帮你看一下哈,今天事情太多了。

使用特权

评论回复
板凳
叶小雨95|  楼主 | 2015-2-4 14:20 | 只看该作者
FSL_TICS_Rita 发表于 2015-2-2 18:04
明天帮你看一下哈,今天事情太多了。

先谢谢啦,还请大神指点:)!!

使用特权

评论回复
地板
FSL_TICS_Rita| | 2015-2-10 20:46 | 只看该作者
楼主你好,请问你使用的是哪款板子呢?BSP版本是什么?

使用特权

评论回复
5
叶小雨95|  楼主 | 2015-4-8 10:28 | 只看该作者
已解决  谢谢

使用特权

评论回复
6
bzw073| | 2015-4-8 10:34 | 只看该作者
手动创建试试

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

20

帖子

0

粉丝