当前位置: 首页 > news >正文

openEuler系统串口文件手法压力测试及脚本使用说明

目录

串口压力测试脚本使用说明

1、概要

2、测试环境准备

2.1PC端准备

2.2设备端准备

3、工具介绍

4、数据发送测试

4.1 PC端打开串口软件

4.2设备端执行测试脚本

4.3、算接收文件MD5码

5、数据接收测试

5.1设置串口接收

5.2 串口接收MD5值校验

6 附件

附件1 串口数据收发测试脚本

附件2 MD5码校验测试脚本

1、概要

设计串口数据压力测试自动化脚本,并对脚本即相关配测工具使用方法进行说明。

2、测试环境准备

2.1PC端准备

     1、PC端安装配测串口软件:sscom 

     2、PC端根据测试需要准备一定大小的文件(本说明以1M数据文件为例进行测试)

2.2设备端准备

      1、设备端提前将ttysTest文件夹放置到系统中

3、工具介绍

1、sscom 软件可打开相应串口,设置相应波特率,可根据需要将接收数据保存到文件,同时可以发送文件到设备端

     

2、ttysTest.sh文件为串口收发测试脚本,reciveMD5Test.sh文件为接收数据MD5检验脚本

4、数据发送测试

4.1 PC端打开串口软件

PC端打开sscom测试软件,并设置正确的串口号跟波特率后打开串口

Pc端选择接收数据到文件,sscom会自动保存数据到提示的文件中,一般保存目录为sscom工具安装目录。

4.2设备端执行测试脚本

1、设备端进入测试脚本文件夹

2、执行测试脚本,并根据提示输入串口号和波特率,脚本自动发送文件夹内txt文件到PC端

4.3、算接收文件MD5码

1、修改PC端接收数据文件格式为txt类型

2、打开PC机cmd命令工具,计算设备端发送文件MD5值,并与设备端显示MD5值比较,数值一致为测试通过

5、数据接收测试

5.1设置串口接收

1、执行测试脚本ttysTest.sh 数据发送完成后,按任意键退出,即进入串口数据接收模式

2、PC端sscom选择文件后,选择HEX发送,点击发送文件

3、sscom会显示数据发送进度

4、根据sscom显示,发送完成后,设备端按Ctrl+c退出接收

5.2 串口接收MD5值校验

1、PC端计算发送文件MD5值

2、设备端执行 sh ReceiveMD5Check.sh,根据提示输入发送数据MD5值

3、脚本计算并对比接收文件MD5值与输入MD5值是否一致,数值一样为测试通过

6 附件附件1 串口数据收发测试脚本

#!/bin/bash

# 检查参数个数

read -p "请输入串口号/dev/ttyS*:" port

serial_port="/dev/ttyS$port"

# 使用stty检查串口设备是否存在

if [[ -c $serial_port ]]; then

    echo "串口设备存在:$serial_port"

else

    echo "串口设备不存在:$serial_port"

    exit 1

fi

#echo "串口号为:$serial_port"

read -p "请输入串口波特率:" serial_baudrate

echo "串口波特率为:$serial_baudrate"

stty -F $serial_port $serial_baudrate

echo "开始发送数据..."

cat devSend.txt > $serial_port

# 等待用户输入来结束脚本

read -p "按任意键退出发送" -n 1 -s

# 直接获取cat的PID

#kill $!

echo -e "\003"

echo "发送完成"

md5Send=$(md5sum devSend.txt)

echo "发送文件MD5值:$md5Send"

echo -e "请比对文件MD5值,若MD5值一致,串口发送测试通过"

#cat指令还在运行强行结束

#if [ -n "$!" ]; then

#  kill $!

#fi

stty -F $serial_port -icanon min 1 time 0

#stty -F $serial_port -close

#进入串口数据接收

stty -F $serial_port $serial_baudrate

echo "开始接收串口数据,按Ctrl+c退出串口接收"

cat $serial_port > pcSend.txt

exit

附件2 MD5码校验测试脚本

#!/bin/bash

read -p "输入PC端发送文件MD5值:" pcMD5

md5Recive=$(md5sum pcSend.txt | awk '{print $1}')

echo -e "\n接收文件MD5值:$md5Recive"

if test $pcMD5 = $md5Recive

then

    echo "接收文件MD5值一致"

    echo "串口接收测试通过"

else

    echo "接收文件MD5值不一致"

    echo "串口接收测试失败"

fi

exit

http://www.dtcms.com/a/279577.html

相关文章:

  • 破解 VMware 迁移难题:跨平台迁移常见问题及自动化解决方案
  • 我的第一个开源项目:SpringCloud电商前端Vue实战
  • AI驱动编程范式革命:传统开发与智能开发的全维度对比分析
  • 《解锁音频处理新姿势:探索Librosa的无限可能》
  • androidstudio 高低版本兼容
  • 量产技巧之RK3588 Android12默认移除导航栏状态栏​
  • imx6ull-系统移植篇5——U-Boot 顶层 Makefile 简析
  • 蓝象智联入选江苏金融数据开发主体:隐私计算如何赋能公共数据价值释放?
  • Java :编译器的占位符 T#1
  • 【PTA数据结构 | C语言版】字符串匹配算法
  • es的自定义词典和停用词
  • 天海电子闯上市:业绩增速骤降,“踩雷”合众汽车,存坏账风险
  • Go从入门到精通(22) - 一个简单web项目-统一日志输出
  • 5.浏览本地文件获取路径与文件名称 C#例子 WPF例子
  • Elasticsearch 9.x 升级变化
  • 【安卓笔记】线程基本使用:锁、锁案例
  • Windows安装postgreSQL(保姆级教程)
  • 机床自动化中的“方言翻译官”:EtherNet/IP 转 PROFIBUS DP 实战手记
  • 安全初级(一)
  • 胡志明证券交易所新一代交易系统解决方案——基于美联储利率决议背景下的越南跨境金融基础设施升
  • pycharm恢复出厂设置,可以解决大多数pycharm存在的问题
  • nginx:SSL_CTX_use_PrivateKey failed
  • 怎么 将训练后的词嵌入向量反编译为自然语言
  • AI多因子模型解析白银14年新高:流动性压力与工业避险需求的联动效应
  • 数字化工厂规划-项目启动会汇报材料编写思路
  • Android Studio C++/JNI/Kotlin 示例 二
  • 三相新能源并网系统序阻抗模型——序阻抗分析器IMAnalyzer
  • Docker部署语音转文字(STT)服务并接入Home Assistant
  • linux服务器redis配置开机自启
  • 2025 R3CTF