论坛风格切换切换到宽版
  • 6393阅读
  • 23回复

FT-817ND CAT 出现问题,求救 [复制链接]

上一主题 下一主题
离线BG4FQD
发帖
3407
只看该作者 20楼 发表于: 2011-12-31
'
测试过了,用串口连接电台,dtr、rts设为always on,n1mm依然出错。用串口监视器监控n1mm发往电台的数据流,发现就是错误的,比如设置频率14085.0,应该发送的正常控制数据应该是01 40 85 00 01,可是在呼号栏里输入14085回车后,n1mm实际发送的数据是01 40 00 00 01.
第三个数据因为大于80,被改成00发送了,导致电台的频率被设置为14000.0了。
'


多捕获一些数据,看看能否找到错误规律,

其他大于 0x80的数据会出错吗吗?

如果你用的pl2303芯片, 一般来说dtr和rts是无效的,2303的这些引脚都需要做ttl电平转换才能有效,而普通的转换线根本没接这几个管脚。
所以 always on还是off没任何意义。
离线BG6IF
发帖
673
只看该作者 21楼 发表于: 2011-12-31
相关微软文章(article id: 318784 - last review: may 13, 2003 - revision: 2.0
)的全文翻译:
某些串行端口mscomm.input 返回 comreaderror (8020)
症状:当某些串口使用mscomm控制的输入法时,mscomm.input方法可能会失败,并且您可能收到 comreaderror 错误 (错误 8020)。
原因:发生这个问题,是因为mscomm.input只读取串行驱动程序中立即可用的字节。按照设计,如果串行驱动程序没有收到任何字节mscomm.input不会返回任何字节。因为mscomm控制不预期readfile法会返回 error_io_pending,如果出现这种情况,mscomm返回 comreaderror 错误。
解决方案:串行驱动程序应对所有读请求同步返回success,用当前的数据立即充满。
只知道一些第三方的串行驱动程序发生这个问题。要更正此问题,请与串行驱动程序的制造商联系以获取更新的驱动程序。
离线ba6iv
发帖
1293
只看该作者 22楼 发表于: 2011-12-31
我用的是主板上的com口,难道是主板的驱动不行?
附串口监听时的抓包数据(删除了一些无用的重复数据)。
附件: 串口高级监视器.txt (0 K) 下载次数:16
离线BG6IF
发帖
673
只看该作者 23楼 发表于: 2012-03-08
我换了用ftdi芯片的串口转usb,情况还是那样,恐怕不是串口驱动程序的问题。