当前位置:操作系统 > Unix/Linux >>

Linux下串行通信调试工具SCT1.04版

一 前言:

  我因为工作的需要,经常需要开发在不同OS的外设通信程序,有一段时间在写unix下的串行通信程序时,发现unix/linux的串口结合了很多终端特性(比如在TTY模式下会自动处理某些字符终端控制符),与windows的方式有很大的差异,也因此花了不少时间。我想现在很多人都在做linux下的开发,也会有人碰到和我一样的问题,因此我编写了sct(serial communication tracer)串行通信调试器,希望它能帮助其他人进行串口通信开发,同时这个软件是以GPL方式发布的,我希望它的源代码会对别人有一定的参考价值。

  二 软件下载地址:

  http://www.makeidea.net/freesoft.html#sct

  三 软件说明:

  sct(Serial Communication Tracer的缩写)是一个很有用的Linux/Unix串行通信调试工具,软件内置了Shell命令解释器,你可以通过直接输入简短的命令和参数来控制串口的打开/关闭和进行各种发送/接收活动,以下是sct 1.04版的简短的例子,双引号之间的内容为输入的命令

  ??"?" 显示所有命令列表

  ??"sel /dev/ttyS0" 选择/dev/ttyS0为当前端口

  ??"stat" 显示当前端口的设备名称,通信参数设置,打开/关闭状态

  ??"open" 打开当前端口

  ??"close" 关闭当前端口

  ??"term" 进入terminal模式,模拟一台ASCII终端

  ??"setbuf 1 a" 用ASCII符设置第一缓冲区的数据,共有10个缓冲区可用

  ??"setbuf 1 h" 用16进制数设置第一缓冲区的数据,共有10个缓冲区可用

  ??"dispbuf 1" 用Hex码和ASCII码显示第一缓冲区的内容

  ??"send 1" 将第1缓冲区的内容从当前端口发送出去

  ??"recv 2" 从当前端口接收数据并存放到第2缓冲区

  ??"sendrecv 1 2" 从当前端口发送第1缓冲区的内容,然后立即接收数据并存放到第2缓冲区,用于对外设"命令-应答"模式调试

  ??"sendrecv 1 1" 从当前端口发送第1缓冲区的内容,然后立即接收数据并覆盖到第1缓冲区,用于对外设"命令-应答"模式调试

  ??"savebuf log.dat 1" 将第1缓冲区的内容存放到数据文件log.dat

  ??"loadbuf 1 log.dat" 将数据文件log.dat的内容装载到第1缓冲区

  *对于windows下的用户,只要安装了cygwin的环境,也可以运行sct(需要在cygwin下重新编译,不需要更改源代码),另外在使用中不要忘记将当前端口用"sel"命令设为"com1"或"com2"等(缺省为/dev/ttyS0)

  四 sct1.04版以后的开发计划

  sct中的对串口部分的代码将被借鉴到我的另一个GPL软件包vsio中,vsio是虚拟流式IO的缩写,vsio以流的方式操作常见的PC外设,比串口/并口/USB等。届时sct将直接利用vsio操作io端口,不仅能调试串口,还能调试并口/USB等,sct将成为真正意义上的"串行通信调试器",而不是"串口调试器"。

  

上一个:深入浅出定制Linux系统环境变量
下一个:从源代码打造一个最小化的Linux系统

更多Unix/Linux疑问解答:
路由原理介绍
子网掩码快速算法
改变网络接口的速度和协商方式的工具miitool和ethtool
Loopback口的作用汇总
OSPF的童话
增强的ACL修改功能
三层交换机和路由器的比较
用三层交换机组建校园网
4到7层交换识别内容
SPARC中如何安装Linux系统(2)
SPARC中如何安装Linux系统(1)
用Swatch做Linux日志分析
实战多种Linux操作系统共存
浅析Linux系统帐户的管理和审计
Linux2.6对新型CPU的支持(2)
电脑通通透
玩转网络
IE/注册表
DOS/Win9x
Windows Xp
Windows 2000
Windows 2003
Windows Vista
Windows 2008
Windows7
Unix/Linux
苹果机Mac OS
windows8
安卓/Android
Windows10
如果你遇到操作系统难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,