最近购买的全志A63开发板串口,调试串口为ssy0,使用的是波特率11250,连接调试比较顺利,但是在列文件目录时 显示许多杂乱的信息: ls [0;0mTHIS_IS_NOT_YOUR_ROOT_FILESYSTEM[m [1;34mopt[m [1;34mbin[m [1;34mproc[m [1;34mdev[m [1;34mroot[m [1;34metc[m [1;34mrun[m [1;34mhome[m [1;34msbin[m [1;32minit[m [1;34msdcard[m [1;34mlib[m [1;34msys[m [1;36mlib64[m [1;34msystem[m [1;36mlinuxrc[m [1;34mtmp[m [1;34mlost+found[m [1;34mudisk[m [1;34mmedia[m [1;34musr[m [1;34mmnt[m [1;34mvar[m
可以看出中间有正确的信息内容,使用多个串口软件都是如此,但是使用SCRT软件调用串口通信是显示正确,通过串口监视器查看开发板发过来的信息都是相同的,而SCRT把这些杂乱的信息过滤掉了,网络搜索没有相关信息,查看ASC码发现杂乱信息开始为1B(esc)取消控制键,结束6D(m),这些可能是通信中的字符处理的特殊规定,1B 与 6D 的规范,无从查看相关内容。不过不影响我们从软件上同样过滤处理。 处理后显示:
ls THIS_IS_NOT_YOUR_ROOT_FILESYSTEM opt bin proc dev root etc run home sbin init sdcard lib sys lib64 system linuxrc tmp lost+found udisk media usr mnt var
处理后显示正常: 过滤vb代码: If Option1 And Check1 Then '过滤 字符串 temp = “” For i = 1 To Len(S) If Asc(Mid(S, i, 1)) <> 27 Then temp = temp & Mid(S, i, 1) Else For j = 1 To Len(S) - i i = i + 1 If Asc(Mid(S, i, 1)) = 109 Then Exit For Next End If Next S = temp End If 因为我用的是自己编写的串口助手软件,自然可以在代码中添加过滤内容了, 想下载的朋友 链接:https://pan.baidu.com/s/1S8JDSfiB-19Ph3f1sbnGGw ; 提取码:6szu 复制这段内容后打开百度网盘手机App,操作更方便哦
补充:原来这些乱码是一些转义字符,代表设置不同的颜色,由于使用纯文本 操作框,无法设置颜色,用富文本又有些小题大做。所以就此打住。具体代码: \033[ 标识符,这里是8进制就是1B,分号前面代表背景颜色,后面代表前景颜色。m前面的是前景色。 字颜色:30—–37
echo -e “\033[30m 黑色字 \033[0m” echo -e “\033[31m 红色字 \033[0m” echo -e “\033[32m 绿色字 \033[0m” echo -e “\033[33m 黄色字 \033[0m” echo -e “\033[34m 蓝色字 \033[0m” echo -e “\033[35m 紫色字 \033[0m” echo -e “\033[36m 天蓝字 \033[0m” echo -e “\033[37m 白色字 \033[0m”
字背景颜色范围:40—–47
echo -e “\033[40;37m 黑底白字 \033[0m” echo -e “\033[41;37m 红底白字 \033[0m” echo -e “\033[42;37m 绿底白字 \033[0m” echo -e “\033[43;37m 黄底白字 \033[0m” echo -e “\033[44;37m 蓝底白字 \033[0m” echo -e “\033[45;37m 紫底白字 \033[0m” echo -e “\033[46;37m 天蓝底白字 \033[0m” echo -e “\033[47;30m 白底黑字 \033[0m”
最后面控制选项说明
\33[0m 关闭所有属性 \33[1m 设置高亮度 \33[4m 下划线 \33[5m 闪烁 \33[7m 反显 \33[8m 消隐 \33[30m — \33[37m 设置前景色 \33[40m — \33[47m 设置背景色 \33[nA 光标上移n行 \33[nB 光标下移n行 \33[nC 光标右移n行 \33[nD 光标左移n行 \33[y;xH设置光标位置 \33[2J 清屏 \33[K 清除从光标到行尾的内容 \33[s 保存光标位置 \33[u 恢复光标位置 \33[?25l 隐藏光标 \33[?25h 显示光标
