linux串口写入命令失败,linux – 从串口读取失败
我有以下C程序:
#include
#include
#include
int main()
{
int fd = open("/dev/ttyS0",O_RDWR | O_NOCTTY | O_NONBLOCK);
if(fd < 0)
{
perror("Could not open device");
}
printf("Device opened\n");
struct termios options;
tcgetattr(fd,&options);
cfmakeraw(&options);
cfsetispeed(&options,B19200);
cfsetospeed(&options,B19200);
tcsetattr(fd,TCSANOW,&options);
char txpacket[] = {0x23,0x06,0x00,0xdd,0xf9};
ssize_t written = write(fd,txpacket,sizeof(txpacket));
printf("Written %d bytes\n",written);
printf("Starting to wait for target to respond\n");
while(1)
{
fd_set readset;
FD_ZERO(&readset);
FD_SET(fd,&readset);
int nCount = select(fd + 1,&readset,NULL,NULL);
if(nCount > 0)
{
if(FD_ISSET(fd,&readset))
{
int i;
char buffer[128];
ssize_t bytesread = read(fd,buffer,sizeof(buffer));
printf("Received %d bytes\n",bytesread);
for(i = 0; i < bytesread; i++)
{
printf(" %02x",buffer[i]);
}
}
}
}
}
该程序打开串行设备/ dev / ttyS0,向其写入一系列数据并开始监听响应.我得到以下输出:
Device opened
Written 6 bytes
Starting to wait for target to respond
Received 0 bytes
Received 0 bytes
Received 0 bytes
Received 0 bytes
Received 0 bytes
Received 0 bytes
...
并且该应用程序消耗100%的cpu.即使目标硬件实际传输它,我也无法接收任何数据.
怎么了?
linux串口写入命令失败,linux – 从串口读取失败相关推荐
- LInux 项目二命令总结,linux项目管理常用命令小结
当前位置:我的异常网» 项目管理 » linux项目管理常用命令小结 linux项目管理常用命令小结 www.myexceptions.net 网友分享于:2015-08-26 浏览:13次 li ...
- linux中make命令大全,Linux中的命令 make -f 是什么意思
二.Makefile的文件名 默认的情况下,make命令会在当前目录下按顺序找寻文件名为"GNUmakefile"."makef ile"."Make ...
- linux 限制带宽命令,Linux服务器限制网络带宽流量速率(限制应用程序和指定网卡的流量)
linux 限制带宽命令,Linux服务器限制网络带宽流量速率 一.限制应用程序的网络流量速率 1.trickle介绍 2.如何判断trickle对应用程序是否有效? 3.Linux安装Trickle ...
- linux系统rar命令行,Linux下rar命令详解
Linux下rar命令详解 发布时间:2010-05-24 23:28:23 作者:佚名 我要评论 通常rar命令由一个主命令加若干选项(可选)构成,操作文档为操作施加的.rar文件对象,文件 ...
- linux 监控报文命令 nc,linux监控命令nc用法
一.nc命令检测端口的用法 # nc -v -w 10 %IP% -z %PORT% -v 显示指令执行过程. -w 设置等待连线的时间. -u 表示使用UDP协议 -z 使用0输入/输出模式,只在扫 ...
- linux系统charp命令,操作系统 Linux系统
Linux操作系统 预备知识(Operating System): 1.GNU项目,GNU项目是一个自由软件项目,旨在建立一个完全自由开放通用的UNIX软件平台. 2.操作系统:管理计算机硬件和软件资 ...
- linux 脚本 退出命令,使用linux的exit命令退出shell
使用linux的exit命令退出shell 发布时间:2020-07-11 11:29:48 来源:亿速云 阅读:103 作者:清晨 栏目:服务器 这篇文章将为大家详细讲解有关使用linux的exit ...
- linux添加目录命令权限,linux chmod命令设置目录/文件权限详解
首页 > Linux教程 > 常用命令 > chmod 文件权限 linux chmod命令设置目录/文件权限详解 linux中chmod命令用于改变系统文件或目录的访问权限,用数字 ...
- linux添加服务命令行,Linux系统自有服务(上)
系统自有服务(上).md Linux系统自有服务 自有服务,即不需要用户独立去安装的软件的服务,而是当系统安装好之后就可以直接使用的服务(内置) 学习目标 1.了解Linux的7种运行模式 2.了解用 ...
- linux怎么配置命令模式,Linux几种命令模式
原标题:Linux几种命令模式 必须掌握的几个Linux命令 我们为什么要学习Linux的命令? 初学者上手Linux系统会很懵.不管你是否安装了图形化界面,或者去网上找一些教程.或者一些Linux的 ...
最新文章
- CVPR 2020 | 元学习人脸识别框架详解
- pyinstaller 编译完exe执行结果 ModuleNotFoundError: No module named ‘sqlalchemy‘
- 设计模式之--原型模式
- mailto发送邮件
- java http 流_java 模拟http请求,通过流(stream)的方式,发送json数据和文件
- 【Flink】SqlValidatorException: Column xxx not found in any table
- 通过的镜像源安装python包
- 源代码分析工具推荐Understand
- 向量对矩阵列空间的投影_向量(阵列)处理和超标量处理器
- 一只基于Vue2.x的移动端微信UI。 -YDUI Touch
- VC++调用IcmpSendEcho函数实现对远端地址的ping检测(附源码)
- python3.6源码编译安装 解决SSL报错
- STM32智能门锁学习一,按键解锁,蓝牙解锁、oled显示,步进电机
- 游戏运营专员的职责有哪些?提高游戏收入的关键是什么?
- 做为程序员 给大家推荐不很错的淘宝店
- 我指间的刺青是对你的誓言
- .tsv以及.csv格式文件
- 压缩包下载后php文件怎么打开,用户下载的压缩包rar格式或zip文件如何解压 解压后就可以安装或运行里面的文件了...
- 英特尔OpenVINO(TM)工具包为创新智能视觉提供更多可能
- wps右边的标记区域怎么去掉_wpsword视图去掉标记 wps怎么取消标记
热门文章
- ad19原理图标注_AD19中原理图的模板如何进行编辑?
- matlab计算斜方差_计算一幅图像的信噪比
- 用了十年的昵称badboy_怎样用5秒钟看清一对夫妻的真实感情状况?
- ARM中断分析之三:WinCE驱动的中断分析
- linux php cpu,获取Linux服务器性能CPU、内存、硬盘等使用率 PHP
- python 管道 异步读取 select_python之异步select解析
- openpyxl 绘制饼形图_好享学丨快速上手Pythonmatplotlib 箱线图绘制,学术人必备
- innodb 悲观锁 乐观锁_mysql乐观锁、悲观锁、共享锁、排它锁、行锁、表锁
- 请简述计算机硬件系统的运行过程,操作系统简述题
- 河流水质指标预测与不确定性分析:机器学习模型的比较研究--文献阅读