代码拉取完成,页面将自动刷新
同步操作将从 Linux-APP/serial-tester 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
一款Linux下的串口设备测试程序:
$ git clone --recurse-submodules https://gitee.com/Linux-APP-chuckie/serial-tester.git
$ cd serial-tester
$ make
$ LANG=zh_CN.UTF8 ./serial-tester
serial-tester V1.0.3,Linux下的串口测试程序,构建于 May 14 2023 21:52:19。
在运行本程序前,你可能需要将你的用户名通过命令
'sudo usermod -a -G dialout $USER' 添加到'dialout'用户组下,
或者通过'sudo'提权运行本程序(sudo ./serial-tester),
否则程序无法获取访问串口设备的权限。
USAGE: ./serial-tester <mode> [option] [arg], optional mode:
normal: Normal mode
recv : Receive only mode
send : Send only mode
loop : Loopback mode
stress: Stress test mode
Refer to following helps.
./serial-tester normal [option] <arg>
正常模式,类似于minicom基本功能,在控制台下实时收发数据。
--device,-F <arg>
指定串口设备,例如'/dev/ttyUSB0'。
--options,-o <arg>
设置串口设备参数,参数格式: [baudrate[,data bits[,parity[,stop bits[,hardware flow]]]]]
baudrate : 默认值为115200。
data bits: 可选值为5~8,默认为8。
parity : 可选值'o','O','e','E','N','n', 默认为'n'。
stop bits: 可选值为1~2, 默认为1。
hw flow : 硬件流控开关。可选值为'on'/'off',默认为'off'。
--rs485,-R <arg>
启用RS485模式,并设置RS485参数。参数格式: [delay before send[,delay after send[,level on sending]]]
delay before send: 发送前提前使能RTS的时间,毫秒单位
delay after send : 发送后延迟关闭RTS的时间,毫秒单位
level on sending : 控制发送的RTS电平,可选值0-1。
e.g.
Normal模式,并设置串口参数为115200,8,n,1 关闭流控:
./serial-tester normal -F /dev/ttyS0 -o 115200,8,n,1,off
./serial-tester recv [option] <arg>
仅接收模式,仅接收数据并打印输出或者保存到文件中。
--device,-F <arg>
指定串口设备,例如'/dev/ttyUSB0'。
--options,-o <arg>
设置串口设备参数,参数格式: [baudrate[,data bits[,parity[,stop bits[,hardware flow]]]]]
baudrate : 默认值为115200。
data bits: 可选值为5~8,默认为8。
parity : 可选值'o','O','e','E','N','n', 默认为'n'。
stop bits: 可选值为1~2, 默认为1。
hw flow : 硬件流控开关。可选值为'on'/'off',默认为'off'。
--rs485,-R <arg>
启用RS485模式,并设置RS485参数。参数格式: [delay before send[,delay after send[,level on sending]]]
delay before send: 发送前提前使能RTS的时间,毫秒单位
delay after send : 发送后延迟关闭RTS的时间,毫秒单位
level on sending : 控制发送的RTS电平,可选值0-1。
--dump,-D <arg>
输打印输出模式。可选值:0/none/n,1/ascii/a,2/hex/h。
0/none/n : 不打印输出,默认值。
1/ascii/a:打印字符串。
2/hex/h :打印十六进制。
--file,-f <arg>
指定文件保存接收数据。
--max-len,-l <arg>
指定接收数据的最大长度(字节),<=0 表示一直接收。
e.g.
1. 仅接收数据并打印输出到控制台,指定最大接收长度为4K字节:
./serial-tester recv -F /dev/ttyS0 -o 115200,8,n,1,off -l 4096 -D ascii
2. 仅接收数据并保存到文件中:
./serial-tester recv -F /dev/ttyS0 -o 115200,8,n,1,off -f recv.txt
./serial-tester send [option] <arg>
仅发送模式,发送文件。若未指定发送文件,将会随机生成数据后发送。
--device,-F <arg>
指定串口设备,例如'/dev/ttyUSB0'。
--options,-o <arg>
设置串口设备参数,参数格式: [baudrate[,data bits[,parity[,stop bits[,hardware flow]]]]]
baudrate : 默认值为115200。
data bits: 可选值为5~8,默认为8。
parity : 可选值'o','O','e','E','N','n', 默认为'n'。
stop bits: 可选值为1~2, 默认为1。
hw flow : 硬件流控开关。可选值为'on'/'off',默认为'off'。
--rs485,-R <arg>
启用RS485模式,并设置RS485参数。参数格式: [delay before send[,delay after send[,level on sending]]]
delay before send: 发送前提前使能RTS的时间,毫秒单位
delay after send : 发送后延迟关闭RTS的时间,毫秒单位
level on sending : 控制发送的RTS电平,可选值0-1。
--dump,-D <arg>
输打印输出模式。可选值:0/none/n,1/ascii/a,2/hex/h。
0/none/n : 不打印输出,默认值。
1/ascii/a:打印字符串。
2/hex/h :打印十六进制。
--file,-f <arg>
指定待发送文件。
--max-len,-l <arg>
指定发送数据的最大长度(字节),<=0 表示一直发送。该值在'-f'选项有效时会被忽略。
--block,-B <arg>
指定单次发送数据块的大小,可选值为1~64*1024,默认值为1024。
--interval,-i <arg>
指定发送间隔,单位毫秒,可选值:0~60*1000;0表示无间隔发送,默认0。
e.g.
1. 随机生成数据发送,并在控制台输出已发送数据:
./serial-tester send -F /dev/ttyS0 -o 115200,8,n,1,off -l 4096 -D hex
2. 发送文件中的数据:
./serial-tester send -F /dev/ttyS0 -o 115200,8,n,1,off -f sent.dat
./serial-tester loop [option] <arg>
回环模式,接收数据并回送出去同时将接收数据打印输出或者保存到文件中。
--device,-F <arg>
指定串口设备,例如'/dev/ttyUSB0'。
--options,-o <arg>
设置串口设备参数,参数格式: [baudrate[,data bits[,parity[,stop bits[,hardware flow]]]]]
baudrate : 默认值为115200。
data bits: 可选值为5~8,默认为8。
parity : 可选值'o','O','e','E','N','n', 默认为'n'。
stop bits: 可选值为1~2, 默认为1。
hw flow : 硬件流控开关。可选值为'on'/'off',默认为'off'。
--rs485,-R <arg>
启用RS485模式,并设置RS485参数。参数格式: [delay before send[,delay after send[,level on sending]]]
delay before send: 发送前提前使能RTS的时间,毫秒单位
delay after send : 发送后延迟关闭RTS的时间,毫秒单位
level on sending : 控制发送的RTS电平,可选值0-1。
--dump,-D <arg>
输打印输出模式。可选值:0/none/n,1/ascii/a,2/hex/h。
0/none/n : 不打印输出,默认值。
1/ascii/a:打印字符串。
2/hex/h :打印十六进制。
--file,-f <arg>
指定文件保存接收数据。
--max-len,-l <arg>
指定接收数据的最大长度(字节),<=0 表示一直接收。
--block,-B <arg>
指定单次发送数据块的大小,可选值为1~64*1024,默认值为1024。
--interval,-i <arg>
指定发送间隔,单位毫秒,可选值:0~60*1000;0表示无间隔发送,默认0。
e.g.
1. 接收数据并回传数据,同时打印输出到控制台,指定最大接收长度为4K字节:
./serial-tester loop -F /dev/ttyS0 -o 115200,8,n,1,off -l 4096 -D ascii
2. 接收数据并回传数据,同时保存到文件中:
./serial-tester loop -F /dev/ttyS0 -o 115200,8,n,1,off -f recv.txt
此模式下类似于minicom/picocom,实时收发数据.
此模式下仅接收数据,如果开启了-D
选项,会输出接收到的数据到屏幕,此模式还支持如下选项:
--max-len,-l
最大读取字节数,默认为0(一直读取)。若设置该参数,则读取指定字节数的数据后自动退出。--file,-f
保存接收到的数据到指定文件此模式下仅发送数据,如果开启了-D
选项,会输出已发送的数据到屏幕,此模式还支持如下选项:
-B
一次发送数据的大小(1-64*1024字节),默认1024字节。-i
两次发送之间的间隔,以百毫秒为单位,默认为0,也就是无间隔。--max-len,-l
最大发送字节数,默认为0(一直发送)。若设置该参数,则发送指定字节数的数据后自动退出。--file,-f
从指定文件读取数据并发送,发送完成自动退出。从模式下自动将接收到的数据回传给发送者,如果开启了-D
选项,会输出接收/发送的数据到屏幕,此模式还支持如下选项:
--max-len,-l
最大读取字节数,默认为0(一直读取)。若设置该参数,则读取指定字节数的数据后自动退出。--file,-f
保存接收到的数据到指定文件-B
一次发送数据的大小(1-64*1024字节),默认1024字节。-i
两次发送之间的间隔,以百毫秒为单位,默认为0,也就是无间隔。此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。