论坛» DIY与开源设计» 设计工具

自制的串口通信小软件ComCalWaveV4.0

助工
2013-03-22 13:14 1楼

回复可见

——回复可见内容——

* Project Mame : 串口通信、数据计算、波形显示 *

* Create Date : 2005年05月15日 *

* Create By : 韩克伟 *

* Function : 实现无限制串口通信、微型计算器和串口波形显示 *

* Build Condition: Delphi 7、ExpressQuantumGrid.Suite.v4.52 *

* Modify Date : 2005年12月30日 *

* Document : Delphi 7.0常用函数速查手册、SPCOMM控件readme *

* Others : 随时升级 *

ComCalWave是作为windows里计算器的一种补充 小软件,主要是为了方便电子

产品开发者使用,本软件并不具备windows计算器的所有功能,因为本软件面向的

对象和范围都与windows系统有着本质的区别,所以不要把本软件作为windows计算

器的替代品,但在一定程度上是可以替代的!他的方便之处莫过于计算串口数据的

校验和,对串口数据进行无限制接收,还可以对接收数据做波形显示,非常方便做

串口的数据通信协议。



文本框的承受能力是最多32768个字节的16进制数据,数据最大到64位。请不

要越限使用。



串口发送无限制,但接收一次只允许2048个字节数据,也就是1024个字,如果

数据量较大请隔时再发。





1、升级历史:

V4.0 本次是根据网友提议把几个文件合并成一个文件,可以自定波形显示方

式,也是一次重大升级,升级细节主要有以下几点:

1)把几个文件合而为一,通过选择显示波形。

2)增加了自己输入波形显示数据的幅值,也就是输入Y轴坐标。X轴显示

的是本次串口接收数据的数据量,只显示当前串口数据,并不累计,

所以每次有新数据收到时自动请空。

3)增加无波形显示的选择。

4)对波形显示输入幅值的数据进行过滤,只对整数有效,输入非法数据

时使用默认数据单字节为0-255(适用于8位数据方式的波形显示),

双字节为0-65535(适用于16位数据方式的波形显示,比如AD转换的结

果可能是10位或者12位或者16位)。

5)增加波形的鼠标操作,可以右键右拖放大,右键左拖缩小,按住左键

上下左右拖动可以移动图表到任何地方。

6)增加版本号和编译日期。

7)可以打开串口前自己输入需要的波特率,也可以从列表里选择,只对

整数有效,输入非法数据时以默认19200作为波特率。

8)可以打开串口后自己再输入自定波特率,也可以从列表里选择,即时

生效。由于打开串口后输入自定波特率需要频繁打开关闭串口,所以

不建议一个数字一个数字输入,建议通过粘贴方式输入需要的数字。

9)增加多处错误提示,比如自定输入波形显示数据时,自定输入波特率

时等。也修正了多处提示信息。

10)打开串口时增加波特率数据提示和波特率是选择还是输入的提示功能,

自动判断波特率和波特率选择方式。

11)关于接收自适应波特率的问题已经研究完毕,因只对标准波特率有效,

且波特率高于19200判断不准确,故而不添加进此次更新中,如果有朋

友需要,可以和我联系。

12)增加一些新的波特率6400、28800、153600、230400、307200、460800、

614400、921600、1228800等,但本软件已经开始允许输入任意的波特

率,所以以后不会新增加。

V3.0 本次是较大升级,主要有以下几点:

1) 修正界面颜色方案,不再刺眼,使得更柔和协调。

2) 增加了COM口,从原来的12个增加到现在的48个,其实大部分都用不到的。

3) 增加了对虚拟串口的支持。

4) 增加了停止位的选择。

5) 数据位受限与SPCOMM控件,只支持5、6、7、8,对4和9的支持不够好,我已屏蔽。

6) 增加了串口波特率16550。

7) 休正BandRate为BaudRate。

8) 修改了必须选择串口的限制。

9) 增加了不打开串口也可以关闭其他软件所打开的串口。

10)打开程序已然自动选择默认串口参数:COM1 9600 8 NONE 1

11)修正一个最大错误,屏蔽了串口数据的流控制,否则不能接收0x11和0x13的数据。

12)增加了内部支持二进制数据通信。

V2.0 后续开发comm_wav1、comm_wav2、comm_wav3,主要增加串口数据波形显示。

V1.0 第一版comm_cal,主要是串口通信和计算器。





2、使用说明:



1)文本框介绍:

1:是输入的第一个数。

2:是输入的第二个数。在串口模式有第二功能。

R:是计算结果,如果数据较大会自动按照科学计数显示,但不支持科学计

数的输入。在串口模式有第二功能。

Send Data Area :是串口发送数据窗口。

Receive Data Area:是串口接收数据窗口。

2)计算器模式:

概述 :所有计算是十进制,可以进行小数计算,但不能有非数字和小数点

的字符,小数点只能输入一个。软件会在计算时判断是否有非法字

符,任何出错信息都会以弹出窗口方式提示,非常直观。

+ :把1和2里面的数据按照十进制相加,结果存入R里面。

- :把1和2里面的数据按照十进制相减,结果存入R里面。

* :把1和2里面的数据按照十进制相乘,结果存入R里面。

/ :把1和2里面的数据按照十进制相除,结果存入R里面。

16->10:把R里面的数据按照16进制转换成十进制,但不支持小数点,可以

支持大写或小写的ABCDEF,在执行一次16转10进制后该按钮自动变

为“10->16”,意思是要把R里的数据转换成16进制,此时只支持

整数数据。

10->16:同上。该按钮使得在“16->10”“10->16”两个功能之间切换。

X^Y :把1里面的数据取2里面数据的幂,结果存入R里面。

Sum :对1进行累加计算,结果存R,进行累加计算时可以放弃鼠标,直接

用键盘的回车即可,每次回车都进行1+R的操作,包括小数和负数,

同时把1里面数据全部选种,方便进行下一次输入数字,所以使用

该功能只需键盘即可。

About :关于本软件。有第二功能,见串口操作模式。

Exit :退出本软件,也可以按ESC退出也可以鼠标点击窗口关闭,同时串

口自动关闭。

3)串口操作模式:

概述 :进行串口的各项操作,可以选择更多的串口,更多的波特率,也可

以选择更多的数据位和校验方式,比所有的串口软件都齐全。

Open Com :打开串口,但打开前必须先设置串口参数,否则软件会提示。

在打开串口之后,可以直接对串口参数进行再次设置或修改,

无须先关闭串口再打开,使用简单方便。该按钮相应变成灰色

不可使用状,同时也提示用户该串口在打开中。

Close Com :关闭串口,但文本框所有数据会被保存。同时该按钮变灰不可

用,“Open Com”按钮变可用状。

Send Data :发送数据,把Send Data Area 里的数据按照设置格式发送出

去,并在R文本框里显示相应发送信息和发送设置信息。软件

一直处于接收状态,只要接收到数据就在R文本框里显示相应

接收信息和接收设置信息。

COM-10 :发送接收数据格式设置,这是利用计算器上的“About”第二

功能,只要串口成功打开即变成第二功能,显示COM-10时是按

照ASCII方式接收和发送,使用该功能后显示变为COM-16,是

按照16进制接收和发送。

COM-16 :同上。该按钮使得在“COM-10”“COM-16”两个功能之间切换。

Send_Sum :对发送区的数据进行校验合计算,只支持16进制数据,结果显

示十进制在1里“DEC=***”,十六进制在2里“HEX=***”,同

时R里会有提示是发送区的校验合“Send Data Area Sum”。

该按钮变成第二功能“Receive_Sum”。1和2里的文本信息在

定时到后消失,只显示校验后的数据,方便复制粘贴等操作。

Receive_Sum:对接收区的数据进行校验合计算,只支持16进制数据,结果显

示十进制在1里“DEC=***”,十六进制在“HEX=***”,同时R

里会有提示是发送区的校验合“Receive Data Area Sum”。

同时该按钮变成第二功能“Send_Sum”。1和2里的文本信息在

定时到后消失,只显示校验后的数据,方便复制粘贴等操作。

COM Port :串口COM1-COM48。

Baud Rate :波特率75-1024000。

Date Bit :数据位4-9,限与控件类型,暂不支持4和9位。

Parity Check :校验方式None、Even、Odd、Mask、Space。

Stop Bit :停止位1、1.5和2。

4)串口数据波形显示:只要打开串口就处于接收状态,对每次接收到的数据进行

计算后在这里显示,特别适合进行AD检测后显示数据,可以方便的通过波形看

出数据的大小变化。在波形显示的图表中,可以直接用鼠标放大或缩小。具体

操作是在您认为需要放大的地方按住鼠标左键,往右圈选拖动是放大,往左圈

选拖动是缩小。在放大后可以按鼠标左键上下左右移动图表,这样就能看到数

据的细微之处了。

波形显示 :显示串口接收数据的波形,可以不选择,或选择8中方式中的

一种,只支持十进制整数。

单字节自动 :按照单字节方式自动幅值显示波形,数量自动单次累加。

单字节自选 :按照单字节方式以自己输入的数据作为幅值显示波形,数量自

动单次累加。输入数据在文本框1和文本框2里,如果没有数据

或非法数据则自动以0-255幅值显示波形,如果数据正确则自动

判断把两者之间的最小数作为底值幅值,最大数作为顶值幅值。

单字节0-255 :直接按照0-255作为幅值显示波形,数量自动单次累加。

双字节自动 :按照两个字节合并成一个字的方式自动幅值显示波形,数量自

动单次累加。

双字节自选 :按照两个字节合并成一个字的方式以自己输入的数据作为幅值

显示波形,数量自动单次累加。输入数据在文本框1和文本框2

里,如果没有数据或非法数据则自动以0-65535幅值显示波形,

如果数据正确则自动判断把两者之间的最小数作为底值幅值,

最大数作为顶值幅值。

双字节0-65535:两个字节合并成一个字的方式直接按照0-65535作为幅值显示波

形,数量自动单次累加。

双字节0-3000 :两个字节合并成一个字的方式直接按照0-3000作为幅值显示波

形,数量自动单次累加。

无波形显示 :等同于不选择任何方式,不显示数据波形。





3、技术支持:



本软件免费使用,免费升级,免费提供一切技术支持,有问题的用户完全可

以和本人联系以获得必要的帮助,也可以从本人这里获得更多的技术资料,但不

包括源程序。

如果您认为本软件对你有帮助,请来信告诉我,如果您想让我在这个基础上

给您开发一个适合您使用的版本也可以来信索求,如果您对本软件有什么意见和

看法也可以来信的哦。





4、作者信息:

本人从事电子产品开发工作时间很长,不过水平很一般,有愿意和我探讨技

术问题的,请不要介意我的知识浅薄,真心希望我能帮助大家共同进步。



作者:韩克伟

联系:hankw_china@163.com

QQ :38988446

手机:13612181688

地址:天津市

菜鸟
2013-03-22 15:20 2楼
好详细的说明,就是没图片,支持一下
院士
2013-09-12 14:27 3楼
下载下来看看
菜鸟
2014-04-12 12:04 4楼
下载下来看看,多谢了
高工
2014-04-12 12:20 5楼
回复可见一下~感谢楼主分享
高工
2014-04-12 13:34 6楼

多谢楼主分享,自制的还是可以学习下的,不知道楼主开不开源

高工
2014-04-12 13:51 7楼
感觉好强大
菜鸟
2014-06-24 12:47 8楼

好东西,下来看下

菜鸟
2014-12-29 13:20 9楼
回复可见 看看图
菜鸟
2015-02-06 21:06 10楼
太好的软件
共20条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册]