.Net Micro Framework研究—串口部署释疑

admin 2019-7-22 167

前几天我用串口方式部署MF程序总是无法成功,但是用其自带的串口调试程序通信成功。用串口监控程序一查看发现串口参数之校验有问题,应该是无校验,但是微软的调试程序打开的却是偶校验(请参见:http://blog.csdn.net/yefanqiu/archive/2008/03/22/2207161.aspx )。
也许如其它网友所说这是USB转串口的问题,不过我以前购买的USB转串口仅支持2、3、5脚,对一些需要RTS和DTR硬件握手通信无法进行调试,所以我购买了PCMCIA串口。不过我不太死心,只好在台式机上安装VS2005,安装MF SDK2.5,最后一测试,所有的程序都通信成功。由于我的台式机的操作系统是Vista平台,并且串口监控程序无法正常运行,所以无从知道在Vista平台下各程序的串口参数,为了验证是否和操作系统相关,所以又找了一个安装Windows XP系统的台式机,安装上程序一测试,全通!用串口监控程序一监控,所有的程序打开串口参数全是无校验,这可就奇怪了!!!
是什么原因促使同样的程序在笔记本上打开的串口参数是偶校验,在台式机上是无校验?由于用其串口调试程序通信成功过,并且该串口的参数也可以配置为无校验(否则通信也就不成功了)。幸好我的笔记本上有一个COM4(猫口),用同样的程序打开COM1和COM4,监控发现打开的串口参数竟然不同,如下图。
image.png

COM4 是无校验(NONE)
image.png

 
COM1 是偶校验(EVEN) 但是用其自带的串口调试程序的串口参数是无校验
注:台式机和笔记本还有一个区别,串口参数中EOF,笔记本上的都是0,台式机的都是0x1a。
 
接着又在台式机做了一个试验,自己做了一根仅有2、3、5线的串口线,接上一试发现,仅串口调试程序可以通信成功,其它程序(MFDeploy和VS2005)是无法通信成功的。看来通信采用了硬件握手。
 
初步结论:
1、普通的不能实现硬件握手的USB转串口(或其它方式转串口)是不能通过串口方式进行MF调试的。
2、串口线必须是标准的MODEM线,仅2、3、5是不行的。
3、我买的低价PCMCIA串口设备其驱动程序应该和实际的物理串口驱动有差异(因为其通信不成功不是因为硬件握手)。
4、MFDeploy或VS2005串口参数来源和配置的方式比较特别(至少和开发板自带的串口调试程序不同),在特定情况下会使有问题的串口驱动配置成我至今也搞不明白的参数。


少客联盟- 版权声明 1、本主题所有言论和图片纯属会员个人意见,与少客联盟立场无关。
2、本站所有主题由该帖子作者发表,该帖子作者admin少客联盟享有帖子相关版权。
3、少客联盟管理员和版主有权不事先通知发贴者而删除本文。
4、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者admin少客联盟的同意。
5、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任。
6、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责。
7、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意。
8、官方反馈邮箱:chinasuc@chinasuc.cn


上一篇:VS2008中文版MSDN订阅下载问题
下一篇:.Net Micro Framework研究—串口部署的困惑
Whatever is worth doing is worth doing well. juvenile hacker league
最新回复 (0)
    • 少客联盟
      2
        登录 注册 QQ登录(停用)
返回