Linux串口调试软件serials

深度deepin15.11 serials 串口助手
本人经常使用Linux,但是一直没找到一个好用的串口调试软件,虽说Linux有强大的minicom,但是本人还是喜欢用图形界面软件。而此类软件虽说很多,但有一个通病,必须在root权限下运行。如此一来,好好的一个图形界面软件非要在终端中启动。在我看来,诸如此类都是伪图形界面,还没有完全脱离命令行。因此,就有了开发一款真正脱离命令行的串口调试软件的想法。

我将这个软件命名为serials,serials的基本思想是:权限分离。即将需要root权限操作的代码从普通的代码中分离出来,作为一个daemon,该daemon自动以root权限运行。而另一部分则为客户端,当客户端需要进行特权操作时,向daemon发送请求,daemon将执行该操作并将结果返回给客户端。此过程类似于在本地进行了一次RPC。

serials使用D-Bus实现了上述思想,同时UI美化借用了QTCN论坛帐号为“liudianwu”的大牛提供的css文件。serials实现了同类软件普遍可见的所有功能,一些特别的定制功能尚未实现,留待后续更新。

此外,serials支持UTF-8编码的中文收发,加入了很多人性化的小功能,如:16进制输入时自动空格,窗口顶层显示,CRC校验,中键清空数据,Ctrl+Enter键发送,互动显示,串口自动扫描,自动打开,参数自动保存等。特别地,在帮助信息中的醒目位置提供了RS-232(DB-9)的引脚描述图。

下面是serials在deepin 15.11 运行截图,直接在文章开头链接下载安装。Linux串口调试软件serials_第1张图片Linux串口调试软件serials_第2张图片
上面是serials在Ubuntu 16.04的运行截图。

serials的开发环境为Qt 5.2.1,Ubuntu 14.04,下载安装命令为(3条命令请依次执行):

sudo add-apt-repository ppa:h167297/hening
sudo apt-get update
sudo apt-get install serials

当前支持的版本:
Trusty (14.04) ,Vivid (15.04),Xenial (16.04),Yakkety (16.10),Zesty (17.04),Artful (17.10),Bionic (18.04),Disco (19.04),Eoan (19.10),Focal (20.04)

最新版本已在:Trusty (14.04) ,Xenial (16.04),Bionic (18.04),Disco (19.04),Eoan (19.10),Focal (20.04) 发布。

Vivid (15.04),Yakkety (16.10),Artful (17.10) 由于已经过了维护期,不能再发布新版本了,所以这些系统上的BUG不能靠自动更新修复了。
目前旧版本已知的BUG是打不开串口:由于/usr/sbin/serialsbus脚本换行格式为DOS导致的,需要执行dos2unix转换为UNIX风格回车换行符。
软件出了二进制包外,为了打开串口时不需要root认证输密码,所以一共用了4个shell脚本来程序的前台和后台启动。它们分别是:
/usr/bin/serials
/usr/sbin/serialsdbus
/usr/lib/serials/serials.sh
/usr/lib/serials/serialsdbus.sh
以serials为名的脚本有问题或格式不对,会导致程序打不开,以serialsdbus为名的脚本有问题或格式不对,会导致串口打不开。

在其它老旧版本下sudo apt-get update会报错,找不到Release文件和二进制包了。
这种情况下手动添加,将下面两句
deb http://ppa.launchpad.net/h167297/hening/ubuntu trusty main
deb-src http://ppa.launchpad.net/h167297/hening/ubuntu trusty main
添加到 /etc/apt/source.list中
添加key,以便ubuntu校验包
sudo apt-key adv --keyserver http://keyserver.ubuntu.com --recv-keys E1BAB8E7
再执行sudo apt-get update,会有未签名之类的警告,忽略。
再执行安装命令:sudo apt-get install serials

安装完成后将在桌面生成快捷方式,可直接双击运行,无需在终端以root权限启动!(仍保留对命令行启动的支持,命令为serials)

如果希望连安装都不需要命令,那么请到 http://download.csdn.net/download/h167297/9838997下载离线deb包(Zesty (17.04)版本),已经打包了所需的qt库,若还缺少依赖请自行解决。由于上传后的资源不能更改,上述链接的资源无法持续更新,而用命令下载可以获取最新版本(文中介绍的版本是现阶段最新的)。

悄悄地告诉你:用命令还可以获取源码(sudo apt-get source serials)

ppa路径:https://launchpad.net/~h167297/+archive/ubuntu/hening/+packages
在https://launchpad.net上放源码是因为只有在这里构建成功了,才能使用sudo apt-get install serials下载。

当前已经构建的包(precise构建失败了,没空去解决):
Linux串口调试软件serials_第3张图片

若使用Git,请fork该仓库 https://github.com/h167297/serials.git 。

由于本人已经不在嵌入式领域,进入ICT领域了,工作原因,已经没时间更新了,欢迎各位共同完善这个工具。

你可能感兴趣的:(Qt,Open,Source)