当前位置:  技术问答>linux和unix

串口读数据错误,返回-1,即Operation not permitted

    来源: 互联网  发布时间:2016-04-28

    本文导语:    我写了个串口应用程序,其串口是usb虚拟成的串口,驱动为linux下的源代码cdc_acm.c实现的。   现在可以实现写数据,但读不到从单片机返回的数据,   其中单片机发送数据是没有问题的,驱动应该没问题,应该...

  我写了个串口应用程序,其串口是usb虚拟成的串口,驱动为linux下的源代码cdc_acm.c实现的。
  现在可以实现写数据,但读不到从单片机返回的数据,
  其中单片机发送数据是没有问题的,驱动应该没问题,应该是串口应用程序的问题,请大家指导一下!
  串口的设置是:
      ptty->ntm.c_cflag = CS8 | CLOCAL | CREAD;
      ptty->ntm.c_iflag = IGNPAR;
      ptty->ntm.c_oflag = 0;
      ptty->ntm.c_cflag |= B38400;
      ptty->ntm.c_cflag &= ~PARENB;
      ptty->ntm.c_iflag &= ~INPCK;
      ptty->ntm.c_cflag &= ~CSTOPB;
      ptty->ntm.c_lflag = 0;
      ptty->ntm.c_cc[VTIME] = 0; // inter-character timer unused
      ptty->ntm.c_cc[VMIN] = 1; // blocking read until 1 chars received
      tcflush (ptty->fd, TCIFLUSH);
      tcsetattr (ptty->fd, TCSANOW, &ptty->ntm)
  
  发送与接受代码:
  unsigned char tty_test[32];
  ret = write (ptty->fd, tty_test, 32); //写入数据后,单片机就能返回数据255
  if (ret > 0)
    {
      i = read (ptty->fd, &recv_status, 1);       
    }
 结果是:i=-1

|
你在创建描述符时加上用户权限

|
首先确定问题到底是在应用层还是在底层。
建议使用 minicom 作为应用层程序,进行测试。这样,你可以判断出底层有无问题。

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 在windows中的VMware装了个linux,主板有两个串口,能做windows和linux的串口通信测试么,怎么测试这两个串口在linux是有效
  • linux下几个设备通过串口串行连接,如何协调各串口发送数据
  • 散分100,求解串口键盘和串口鼠标驱动
  • Linux 中用java语言写串口程序,提示找不到串口
  • 高分求助:我笔记本没有串口,在linux下要和一个串口设备连,怎么办?
  • 关于linux串口通信中写串口的问题
  • 开发板串口与实际内核中的串口文件的对应关系怎么回事?谢谢帮忙
  • 怎么判断串口已经收到数据,并及时读出?怎么判断串口已经将写入的数据发送完毕?
  • 工控机有6个串口,但用光盘安装debian6.05,在dev中只找到4个串口,如何解决。
  • linux下串口发送数据用串口精灵接受不到或为全零
  • 在虚拟Linux系统下能进行串口通讯吗?最好给个串口通讯的代码!谢谢!
  • 要加多个串口,怎么分别指定他们的driver_name和dev_name以示区别各个串口?
  • 工控机上用光盘安装debian6.05,硬件上有6个串口,但是软件上即dev中只有4个串口,如何解决。
  • 嵌入式linux,串口初始化时,无法设置串口属性
  • 扩展的串口卡上的串口操作的问题
  • 请教串口通信的编程
  • 请问如何以独占的方式打开串口
  • linux串口驱动该怎么写
  • 虚拟串口怎么读数据? 请有 串口 或者 usb 驱动经验的高手指点
  • linux下如何清空串口的输入输出缓存


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3