yunqian09 发表于 2010-2-22 14:07:14

SPCOMM 和CH341A 不兼容? delphi 问题解决:SPCOMM在端口号 大于10 的时候会出问题(

这几天delphi做的上位机 和STM32调试
遇见奇怪问题

stm32 +CH341a +Spcomm做的串口上位机 一直显示
http://cache.amobbs.com/bbs_upload782111/files_26/ourdev_534824.jpg
(原文件名:33.jpg)

下载了网上用SPCOMM做的串口助手
http://cache.amobbs.com/bbs_upload782111/files_26/ourdev_534825.jpg
(原文件名:22.jpg)

同样的问题
http://cache.amobbs.com/bbs_upload782111/files_26/ourdev_534826.jpg
(原文件名:4444.jpg)




Stm32+pl2303+Spcomm做的串口上位机 没问题
stm32 +CH341a+其它控件做的上位机没问题


------------------------------------------------------------------
CH341A 的驱动已经重装N遍了          ./emotion/em037.gif


http://cache.amobbs.com/bbs_upload782111/files_26/ourdev_534827.jpg
(原文件名:55.jpg)

yunqian09 发表于 2010-2-22 16:20:38

SPCOMM在端口号 大于10 的时候会出问题??????????????

yunqian09 发表于 2010-2-22 16:45:37

问题答案出来了::::::::::::::::: SPCOMM在端口号 大于10 的时候会出问题(至少我这个版本是这样子的,郁闷)

yunqian09 发表于 2010-2-22 22:40:44

Delphi使用spcomm实现串口通信解决10个以上串口问题


如果你已经会使用SPCOMM且出现10个以上的串口问题

请改一下串口名

COM1.CommName='\\.\com18';

就这样 加'\\.\'就行了我也不知道什么回事.......

i387DX 发表于 2010-2-23 05:28:09

关注,SPCOMM兼容性问题的解决……

crestxa 发表于 2010-2-23 08:54:10

建议使用CPORT

Appcat 发表于 2010-2-23 10:18:13

\\.\com18是windows里边的SymbolLinkName,这个在WINAPI里边就需要这样写,SPCOMM的这部分的源代码如下:
procedure TComm.StartComm;
var
   hNewCommFile:   THandle;
begin
   // Are we already doing comm?
   if (hCommFile <> 0) then
      raise ECommsError.Create( 'This serial port already opened' );

   hNewCommFile := CreateFile( PChar(FCommName),               <------就是这里,要加上\\.\
                                 GENERIC_READ or GENERIC_WRITE,
                                 0, {not shared}
                                 nil, {no security ??}
                                 OPEN_EXISTING,
                                 FILE_ATTRIBUTE_NORMAL or FILE_FLAG_OVERLAPPED,
                                 0 {template} );

   if hNewCommFile = INVALID_HANDLE_VALUE then
      raise ECommsError.Create( 'Error opening serial port' );   
                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^如果不是SymbolLinkName写法,串口号大于9这里就出错了

ktao123 发表于 2010-5-17 20:51:54

谢谢
让我解决了这个问题~
页: [1]
查看完整版本: SPCOMM 和CH341A 不兼容? delphi 问题解决:SPCOMM在端口号 大于10 的时候会出问题(