minicom选项
支持颜色显示
minicom -c on
支持中文显示
env LANG=en_US minicom
支持数据十六进制显示
minicom -H
支持脚本
minicom -S
支持回显
minicom
Ctrl+A->Z
E local Echo on/off..E
minicom自动发送数据
首先需要设置:
-> minicom
-> Ctrl+A->O
-> 回车
-> 选D- Script Program
-> 设置为 /bin/bash
-> 保存为默认设置 dfl
-> Ctrl+A , Q 退出minicom
通过启动时指定脚本来实现
minicom -S autosend.sh
脚本如下:
#!/bin/bash
while [ 1 -ne 0 ]
do
echo 12345678
sleep 1
done
启动之后,指定脚本路径来执行
minicom -H
Ctrl+A->Z
回车
G run script (Go)
C Name of script 绝对路径
回车运行脚本
使用外部脚本
不通过minicom执行相关脚本,直接在其他窗口执行脚本如下:
#!/bin/bash
while [ 1 -ne 0 ]
do
echo 12345678 > /dev/ttyUSB0
sleep 1
done
串口与Shell编程
在这之前先介绍一下stty,stty(set tty)命令用于检查和修改当前注册的终端的通信参数。
stty -a 查看当前注册端口的设置情况:
stty -ixon将流控制设置为OFF,而命令
stty ixon则将流控其置为ON。
在stty命令中可以同时设置多个选项:stty ixon 1200
设置波特率为1200 并且设置流控为on
具体更多的参数设置可以使用man指令查看。
下面说下如何通过shell来实现数据的读取,这里主要是使用的cat指令:
cat /dev/ttyUSB0
但在如果执行上面命令,程序会一直停止在读取的界面,如果我们的要求是想读取一段一段的数据,
即分批次读取一定之间内的数据,保存并处理,那应该怎么办呢?
我们就需要先用stty将模式设置成raw 并且设置最大连接时间:
stty -F /dev/ttyUSB0 raw speed 9600 min 0 time 10
然后我们可以把每次读取到的数据存储到一个临时文件中,然后对其进行处理:
cat /dev/ttyUSB0 >> “tmpFile”
完成的代码如下:
stty -F /dev/ttyUSB0 raw speed 9600 min 0 time 10
while [ 1 -eq 1 ]
do
cat /dev/ttyUSB0 >> "tmpFile"
echo `date`
done