使用roslaunch调用串口程序时需要的异常退出问题
来源:互联网 发布:数据分析建模方法 编辑:程序博客网 时间:2024/06/07 17:37
写了个程序,使用串口收发数据:
使用rosrun 执行此程序时,拔掉usb转串口模块,程序正常,不会出现异常。
但在利用roslaunch调用此节点时,拔掉usb转串口模块,程序死掉,异常。
发现时打开串口的方式造成的。
在打开方式改为:“O_RDWR | O_NOCTTY | O_NDELAY”即可。
查询资料显示:
标志O_NOCTTY可以告诉UNIX这个程序不会成为这个端口上的“控制终端”。如果不这样做的话,所有的输入,比如键盘上过来的Ctrl+C中止信号等等,会影响到你的进程。而有些程序比如getty(1M/8)则会在打开登录进程的时候使用这个特性,但是通常情况下,用户程序不会使用这个行为。
O_NDELAY标志则是告诉UNIX,这个程序并不关心DCD信号线的状态——也就是不关心端口另一端是否已经连接。如果不指定这个标志的话,除非DCD信号线上有space电压否则这个程序会一直睡眠。
感谢http://blog.chinaunix.net/uid-27041925-id-3998634.html提供的信息
1 0
- 使用roslaunch调用串口程序时需要的异常退出问题
- 解决JNI调用DetachCurrentThread程序异常退出的问题
- 使用qApp->quit();退出程序需要注意的一点问题
- CFileDialog程序异常退出问题
- CRT堆 程序退出时的异常
- 使用gdb调试网络程序时,收到SIGPIPE信号异常退出问题
- Linux程序异常退出打印调用堆栈
- Linux程序异常退出打印调用堆栈
- 使用异常时需要注意的一些问题(转)
- roslaunch的使用和编写
- 修改IOS程序在异常退出时,再次开启会crash的问题
- keil C51使用串口时程序跑死的问题
- 使用C#异步调用WebServices时需要注意的问题
- CFileDialog 异常退出的问题
- 关于GDI资源使用后未释放,导致GDI对象猛增,程序花屏,异常退出的问题
- VB使用API实现串口通讯的异常问题
- 程序异常退出时发送邮件报告的代码
- 程序异常退出时发送邮件报告的代码
- VLFeat开源库介绍及在VS2013中的编译
- 1005. 继续(3n+1)猜想
- hdu2604 Queuing (矩阵快速幂+动态规划)
- 监听listivew滚动距离最优方案
- C++指针函数的定义
- 使用roslaunch调用串口程序时需要的异常退出问题
- 教你制作一个OS X 10.9 Mavericks 安装U盘
- Activity在异常情况下的生命周期——Android开发艺术探索笔记
- SSH进阶(4)——Spring框架入门及环境搭建
- Android ADT安装技巧其常见错误处理
- 操作员计算机绑定
- hdu 2092 整数解
- JSP有哪些内置对象和动作?它们的作用分别是什么?
- 【图书分配】