大家好,我现在想咨询点问题,就是我现在要编串口方面的软件,关于控件的选择问题

sinbo 2003-08-21 01:40:08
我现在有一个项目,是通过串口通讯的,
1,我要在一个弹片机上提取一定的数据,数据量很大的,
2,我还要通过猫拨同一个机器,当然两边都要有猫了,然后提取他的数据,
问题如下:
1,我用的bcb他没有提供串口控件,我不知道选择什么样的控件好,听说mscomm不可靠,
那pcomm怎么样,还有就是spcomm又是什么样的东西,他们的有关控件和资料在那里可以下到,真是麻烦大家了。
2,还有就是,我要拨通另一个机器,要他的数据,我是在那边写一个软件,来想传口不段的发数据,我在这边接受吗,还是通过winsocke来实现,后者我是听说的,不知道怎么回事,希望大家能帮我解答,谢谢


...全文
138 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
sinbo 2003-08-23
  • 打赏
  • 举报
回复
我现在用的NMStrmServ1做的文件传输程序,我不知道他有什么缺点,如果这个控件好的话,我就用这个了,要是不好的,我应该用什么样的控件,我还知道一下这个控件走的是tcp还是udp,还有就是NMUDP1这个控件他传输的时候准确吗?谢谢解答
  • 打赏
  • 举报
回复
方案3:两台电脑之间收发文件最简单的方法就是用 FTP 协议,TNMFTP 控件几句代码完成。
优点:完全采用 Windows 操作系统,包括硬件和软件,误码和出错处理等,Internet 上网站维护都是用的 FTP, 可以在所有 TCP/IP 的网络上使用,移植性好,兼容性好,代码简单。
  • 打赏
  • 举报
回复
如果与单片机通讯,必需用串口控件或者用API了,但是两台电脑传数据就不同了。

我认为两台电脑传数据:

方案1:socket
如果用 winsock 类型的控件,就需要用 Windows 的拨号网络。
BCB 的 winsock 控件可以用 TServerSocket 和 TClientSocket, 收发数据都比较简单,
这种方法的优点:硬件(Modem)使用自带的驱动程序,不用自己处理硬件接口,并且网络扩充性和升级都比较简单,例如以后这个程序移植到局域网或者通过 Internet,通过宽带网等传输,都不需要修改程序,直接可以用。

方案2:通过串口控制 Modem
需要串口控件,但 BCB 没有,需要用第三方的,或者用 API 函数编。
需要自己处理硬件(Modem)接口,虽然说简单说都是AT指令,但由于贺氏公司不存在了,并且又出来很多软猫,在硬件接口方面存在一些不兼容问题,我发现很多 Modem 不能按标准提供串口上那些讯号线(DTR,RING,RLSD(DCD)等),并且数据流控也有不兼容的地方,对某个Modem编程调试好了,更换 Modem 就可能出问题,对以后维护带来麻烦。并且不能提供网络升级,如果使用宽带网或者 Internet 等传输,需要用方案1(socket)重新编程。

你可以看看这个串口控件,在例子的基础上修改就可以达到你的目的:
有中文说明,有数据收发、单片机数据处理、Modem 拨号、传输文件(带CRC32校验)完整的例子。
http://www.cppfans.com/d_vcl_files/yb_comm_133.asp
路人丁 2003-08-23
  • 打赏
  • 举报
回复
串口速度不是很快!pc to pc 也同样是串口传输,你要在两台pc上做好数据收发程序即可!至于传输中是否有误码要你自己加上交验信息,同时串口本身也有校验。
sinbo 2003-08-22
  • 打赏
  • 举报
回复
能告诉SPCOMM在哪里下到吗,还有就我想两太机器,通过modem连接,然后传数据,但是我不知道选择bcb中哪个控件比较稳定,可靠,我的文件很大的,谢谢拉
影子传说 2003-08-22
  • 打赏
  • 举报
回复
pcomm
dongyangzong 2003-08-22
  • 打赏
  • 举报
回复
我用过spcomm for delphi 和 vccomm for c++builder. 都在c++Builder中使用.
编译好的程序使用起来都挺可靠,只是spcomm在编译时经常报错,不好解决.
现在一直用vccomm,比较好用.
winsocket的编程比串口还简单.
netsys2 2003-08-22
  • 打赏
  • 举报
回复
就用SPCOMM吧,FOR CB & Delphi

VB下就用MSCOMM
netsys2 2003-08-22
  • 打赏
  • 举报
回复
就用SPCOMM啊,还犹豫什么
sinbo 2003-08-22
  • 打赏
  • 举报
回复
用api涉及到多线程的东西,我不这方面的知识,所以要大家帮忙介绍一下,因为我的数据要求传输必须准确,不能有错误,而且还要求能传16进至的,大家说那个pcomm好,可是我不知道那里有呀,而且他是空件还是dll呀,支持vb吗,我找了很九也没有找到,希望大家帮忙,还有就是spcomm是和pcomm是一个吗,我搞不清楚了

sinbo 2003-08-22
  • 打赏
  • 举报
回复
我看我得和大家解释一下拉
我现在有两台电脑,(他们离的很远),没有网卡我现在要通过modem连接两台电脑,也就是拨通他,然后传我要的数据,如果我想拨猫,我就需要传口控件,我不想用windows的拨号程序,
我拨通了要传数据,一种是;向串口写数据,然后我读,一种就是用winsoket之类的控件,象网络上传数据那样通过modem来传,现在大家明白了吗,我想知道,我要选择cb中那个控件,我的数据很大,而且传输中绝对不能出现错误的!
路人丁 2003-08-22
  • 打赏
  • 举报
回复
这种问题很好解决!

你的方案是: PC(RS232)+Modem——Modem+单片机;
如果你想达到实时最好采用专线Modem。

对于串口编成部分可以使用API函数来做,当然了我认为用PComm不比API差,你可以到www.moxa.com网站上去下载PCommlit,如果你在北京我可以免费送你光盘(现在已经告别了心爱的自动化监控编程);

然后你就可以对单片机收发数据了!至于如何收发要看你和单片机编程的人如合作协议和你系统的要求了。
使用Socket编成绝对不可以的,除非你的单片机有网卡芯片支持网络功能!而且现在的工业用Modem一般最大DTE速度115200bps,用什么Socket?

听我的没错!
dongyangzong 2003-08-22
  • 打赏
  • 举报
回复
楼主,你的两台机的Modem之间的连接电缆,是专用电缆还是电话线?如果是电话线需要拨号,那么用网络控件,不需要串口控件.
spcomm在网上很多,搜索一下出一片。
fjye 2003-08-22
  • 打赏
  • 举报
回复
推荐PCOMM
ghwhz 2003-08-22
  • 打赏
  • 举报
回复
还有就是,我要拨通另一个机器,要他的数据,我是在那边写一个软件,来想传口不段的发数据,我在这边接受吗,还是通过winsocke来实现,后者我是听说的,不知道怎么回事,希望大家能帮我解答,


你说的是不是要串口接入以太网的技术,两边都是对串口操作,数据通过以太网传输,如果是这样的话可以去购买串口接入以太网的接口硬件,该硬件都是透明传输,也不是很贵,到网上查查就知道了。
GodenFluteSoftBoy 2003-08-22
  • 打赏
  • 举报
回复
不行的话就得自己用API来写了,我自己刚刚写完一个,可以用来进行串口通信,不过目前只支持文本和二进制方式传输
真如实观 2003-08-21
  • 打赏
  • 举报
回复
自己写一个有何不可。是基于API的,应该不难。
xizhouhawk 2003-08-21
  • 打赏
  • 举报
回复
推荐,pcomm比较好用!



fall1979 2003-08-21
  • 打赏
  • 举报
回复
你如果需要我可以给你提供!安装文件不大,只有几百K!
fall1979 2003-08-21
  • 打赏
  • 举报
回复
我最近搞这个,原来准备用MSCOMM的,但是MSCOMM好象不支持16进制数组的发送,所以最后我用了一个用delphi写的控件(是买书附送的光盘中带的),挺好使的!
加载更多回复(3)

13,822

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧