#项目实现相关# | Linux、C++ | Ubuntu环境下利用cutecom实现传感器设备识别设置、串口数据的接收通信

目录

项目场景:

实现描述:

实现过程:

一、Windows环境下传感器设备数据收发的简单环境测试。

1、根据传感器设备的自带资料,利用厂家存在的数据接收软件,测试设备是否和PC通信正常。

2、附上一组接收到的有效数据,方便后期回溯。

二、linux环境下传感设备串口通信的实现。

1、Ubuntu中查看串口信息。

2、查看Ubuntu“虚拟机”,“可移动设备”,即可看到Ubuntu中是否连接好设备;

3、查看linux系统中右下角的设备小图标,是否亮起,亮几个就说明linux系统中连接了几个设备;

4、在linux系统文件目录中查看是否能找到设备文件。

5、安装minicom。

6、安装cutecom。

 7、设置cutecom实现数据接收。

8、发送传感设备启动命令,即可实现数据的接收。

9、通过程序实现数据接收。


项目场景:

运行环境:Ubuntu18.04,linux系统,gcc编译器,minicom,cutecom,某公司传感器设备


实现描述:

  • 需求:实现虚拟机能够检测到传感器设备;串口调试助手能够成功向传感器设备发送数据,并听过串口能够接收到传感器设备产生的数据。
  • 问题:在虚拟机中接收实际连接的串口设备的流程和操作不是很熟悉,害怕在中间步骤中产生问题又卡住
  • 解决思路:
  1. 先将传感器设备通过USB接口连接到PC,在Windows系统用设备自带的接收软件实现数据接收测试,验证基本的连接功能。
  2. 将外接传感器设备连接到Ubuntu虚拟机环境下,实现相关配置。
  3. 安装linux环境下的串口数据收发调试助手,配置相关波特率。
  4. 通过cutecom实现简单的数据收发。
  5. 编写简单的程序实现对于串口数据的收发,系统搭建测试完毕。

实现过程:

一、Windows环境下传感器设备数据收发的简单环境测试。

1、根据传感器设备的自带资料,利用厂家存在的数据接收软件,测试设备是否和PC通信正常。

可以看到通过发送设备测试命令,能够收到传感设备对应的数据。其数据格式以及内容是根据数据手册来进行分析的,图中是血氧传感器,数据是根据检测到的实时变化的。说明设备连接PC成功,且能够实现数据的收发。

2、附上一组接收到的有效数据,方便后期回溯。

FE C7 02 5C EA FF C7 03 5C C3 FC C7 02 5D EB FC C6 03 5D EB FE C6 03 56 EA FE 87 02 59 52 FE C7 02 5C 5A FE C6 03 5C EB FE C7 02 5D 52 FE 87 03 59 58 FF C6 03 5D 5A FF 87 02 5D 5A FC C7 02 5C 5A FE C7 03 58 58 FE 87 03 5D 5A FF C7 03 18 58 FE C7 03 59 10 FF C6 02 5D 5A FE C7 02 5D FD FE C7 03 5D 1A FE C7 02 5D 52 FF C7 03 5D 50 FE C7 02 5D C2 FE C7 02 5D 50 FE C7 03 5D 52 FE C6 03 5D 1A FE C7 02 5D 50 FE 87 03 57 CA FC C6 03 19 58 FE 87 03 5C 58 FC C7 03 5D F9 FE C7 02 5D EA FE C7 03 59 18 FE C7 02 A1 FD FE 87 03 59 10 FE C7 02 1D 18 FE C7 03 5C 5A FC C6 03 5C 58 FC C6 02 59 CB FF 87 03 5C 5A FF 87 03 5D 1A FE C7 02 5D 50 FC C7 02 5D EB FF C7 02 5C 12 FF 86 03 5D 1A FF C7 02 56 E2 FF C7 03 59 1A FE C7 03 1D 12 FE C6 03 5D 18 FF 86 02 5D 52 FE 87 03 5D 50 FE C7 03 59 18 FE C7 03 18 58 FE C7 03 59 18 FE C7 03 59 18 FF 87 03 19 58 FE C7 02 5D 58 FE C7 03 58 5A FF C7 02 5D 52 FF C6 03 47 EA FE 87 02 5D 50 FE C7 03 58 58 FF 87 03 5D 5A FE C7 02 5C 5A FE C7 03 5C 5A FC C6 03 5D EB FE C7 03 5D CB FE C7 02 5C EB FE 87 03 59 58 FF 87 03 1D 1A FE C7 03 5D 5A FC 87 02 1D 5A FF 87 02 5D 52 FE C7 03 59 10 FF C7 03 A5 F9 FE 86 02 57 CB FE C7 02 5D 58 FE C7 03 5D 5A FE C7 03 59 18 FE C7 03 59 1A FC C7 03 5C 58 FE C7 03 59 18 FC C7 02 5C CB FE C7 02 5D 5A FF C7 03 58 58 FE 87 03 59 58 FE C7 02 5D EA FE C7 03 59 10 FE C7 02 5C FD FE 87 03 59 18 FE C7 03 1C 52 FE 86 02 5D 5A FF C7 03 18 F9 FE C6 03 59 E2 FE C7 02 5C 50 FC C6 03 5C 58

二、linux环境下传感设备串口通信的实现。

1、Ubuntu中查看串口信息。

参考链接:

https://blog.csdn.net/dzjoke/article/details/88286990?utm_term=ubuntu%E5%A6%82%E4%BD%95%E6%9F%A5%E7%9C%8B%E4%B8%B2%E5%8F%A3&utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~sobaiduweb~default-3-88286990&spm=3001.4430

https://blog.csdn.net/weixin_42415578/article/details/82661683?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control&dist_request_id=&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control

2、查看Ubuntu“虚拟机”,“可移动设备”,即可看到Ubuntu中是否连接好设备;

3、查看linux系统中右下角的设备小图标,是否亮起,亮几个就说明linux系统中连接了几个设备;

4、在linux系统文件目录中查看是否能找到设备文件。

cd /dev/     :进入指定文件夹
ls               :显示所有文件
ls -l tty*      :显示所有以tty开头的设备文件,一般设备为ttyUSB0这种,查看是否存在对应的文件
cat /proc /tty/driver/serial    :显示设备的具体信息,看是否有设备进行收发
dmsg | grep ttyUSB0            :查看指定设备文件的详细信息
lsusb           :显示USB信息

 

5、安装minicom。

参考链接:

https://blog.csdn.net/weixin_42415578/article/details/82661683?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control&dist_request_id=&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control

https://blog.csdn.net/weixin_42415578/article/details/82661683?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control&dist_request_id=&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control

sudo apt-get install minicom    :安装minicom
sudo apt-get install minicom --fix-missing   :如果安装错误则重新修复一下
sudo apt-get install lrzsz
sudo minicom

 

启动之后,通过设置相关的通信参数即可实现数据接收。具体操作相关参考上面的连接。

但是启动之后,不太会用,也没有收到数据,参考的其他相关文章,也没有成功,就转战图形显示页面了。 

【问题】:无法解析域名、无法下载安装软件包

解决办法:

Ubuntu虚拟机网络连接断开,重启Ubuntu,验证网络是否连接正常,重新执行安装语句即可。(估计是我的电脑开机状态太久了)

6、安装cutecom。

sudo apt-get insatll cutecom

sudo cutecom

 7、设置cutecom实现数据接收。

setting里面设置波特率等,同时在主页面选中自己的设备名称(下拉列表里面就会出现自己的插拔设备,发现自己的设备名字为:/dev/ttyUSB0。

8、发送传感设备启动命令,即可实现数据的接收。

再次关闭终端,cutecom 也会随着关闭。

再次打开cutecom,直接点击open,就会一直持续不断的收到传感设备的数据,根本不需要自己输入启动的命令。(因为启动命令是一次启动即可)

那么就可以在程序中一直接收了。

9、通过程序实现数据接收。

接收数据乱码,验证是否是因为数据输出打印的格式问题

接收数据成功,但是貌似存在丢包现象,尤其是中间的C9设备这一个字节

 

如果在程序运行之前就一直打开传感器,那么是会一直进行数据接收的,直到程序中开始访问那个端口的时候,cutecom页面才会停止显示数据(虽然显示的是open状态,但是程序中和cutecom页面都收不到数据)。

  • 思考:是否是因为通过软件打开那个端口之后,程序执行到对于串口的操作的时候,会重新对于那个端口进操作,导致串口停止了收数据。
  • 下一计划:验证在程序中发送启动指令,而不通过cutecom来发送启动指令,看cutecom中是否能收到数据。

如果通过程序向串口设备中写启动命令之后,通过cutecom可以实现数据接收,那么说明启动命令发送成功。

但是如果cutecom收不到数据,那就尝试看是否可以通过程序接收到串口设备返回的数据。因为如果程序启动发命令、cutecom收数据,同样是存在端口两次访问冲突的问题,不知道是不是会导致停止接收数据

  • 在网上搜索向串口写启动命令的程序,然后测试小例子,之后融合进行程序中。

 


先到这里吧~

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在Linux下使用版本为0.30.3的CuteCom修改设备是可行的。CuteCom是一个串口监视器和调试工具,可以用于与串口设备进行通信和调试。 首先,确保已经在Linux系统中安装了CuteCom。如果没有安装,可以通过包管理器(例如apt、yum等)进行安装。安装完成后,打开CuteCom。 在CuteCom的菜单栏中,选择 "文件" 选项,并选择 "打开设备"。在弹出的对话框中,你可以看到当前可用的串口设备列表。 要修改设备,首先选择你想要修改的串口设备。然后,点击 "属性" 按钮,这将打开一个新的对话框。 在 "属性" 对话框中,你可以更改串口的名称、波特率、数据位、校验位、停止位等参数。确保根据你实际的要求进行配置。 完成设备的修改后,点击 "确定" 按钮保存更改,并关闭 "属性" 对话框。 现在,你已经成功修改了设备。你可以在CuteCom的界面中看到更新后的串口设备信息。你可以点击 "打开设备" 按钮,开始使用修改后的设备进行通信和调试。 总的来说,通过CuteCom的界面,你可以方便地修改串口设备,并根据需要配置相关的参数。这为你在Linux系统中与串口设备进行通信和调试提供了便利。 ### 回答2: 在Linux下使用版本为0.30.3的cutecom修改设备,你可以按照以下步骤进行操作: 1. 首先,确保已经安装了cutecom软件包。可以通过终端使用以下命令安装:sudo apt-get install cutecom 2. 打开cutecom应用程序。你可以在应用程序菜单中找到它,或者从终端输入cutecom命令来打开它。 3. 在cutecom中,点击菜单栏中的"Options"(选项)> "Serial Port"(串口)。 4. 在打开的串口设置对话框中,选择你想要修改的串口设备。 5. 你可以通过设置波特率、数据位、停止位、校验位等来修改串口设备的配置。这些设置可以根据你与设备通信需求来调整。 6. 在修改完设备配置后,点击对话框底部的"OK"按钮保存更改。 7. 现在,你可以使用cutecom来与修改后的设备进行通信了。在cutecom主界面上方的工具栏中,你可以找到发送、接收和其他与设备通信相关的功能。 请注意,具体的设备修改步骤可能会因设备类型和通信协议的不同而有所差异。上述步骤仅适用于使用cutecom版本0.30.3进行一般串口设备的修改。如果需要修改复杂的设备或其他通信协议,请参考设备文档或在线资源以获取更详细的指导。 ### 回答3: 要在Linux下使用版本为0.30.3的Cutecom来修改设备,首先需要确保已经安装了该版本的Cutecom软件。可以通过在终端中运行以下命令来安装Cutecom: ``` sudo apt-get install cutecom ``` 安装完成后,可以在应用程序菜单或通过终端运行Cutecom。 在Cutecom界面中,选择设备菜单,并选择要修改的设备。你可以在菜单中找到设备的列表,或者选择"扫描设备"来查找可用的设备。 选择要修改的设备后,可以通过在设置菜单中调整设备的各种参数。例如,你可以更改串口号、波特率、数据位、停止位、校验位等参数。 在设置设备参数后,你可以通过在界面上方的工具栏中选择发送数据按钮来发送数据设备。你可以在文本框中输入要发送的数据,并选择发送方式,例如ASCII或二进制。 如果你需要接收设备发送的数据,你可以在界面上方的工具栏中选择接收数据按钮。接收到的数据将显示在文本框中。 最后,如果你对设备的修改完成,可以通过选择设备菜单中的保存选项来保存修改后的配置。这样,下次使用Cutecom时,你可以直接加载你之前保存的设备配置。 总之,使用版本为0.30.3的Cutecom来修改设备Linux中是相对简单的。你只需要安装Cutecom,选择要修改的设备,调整设备参数,发送和接收数据,并保存修改后的配置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值