Microsoft  CSIP   WindowsMobile   MEDC   合作伙伴   体验中心 设为首页 加到收藏夹

 
登录       点击换一张     注册新用户 找回密码

.Net Micro Framework研究—串口部署释疑
2008年07月07日11:03   编辑:叶帆 来源: 叶帆工作室 浏览: 253

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

    查看评论

请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。 本站拥有管理笔名和留言的一切权利。
相关文章推荐
· .Net Micro Framework研究—中文显示 2008-4-18  yefan
· .NET Micro Framework初体验 2007-11-1  aawolf
· 无线传感器网络标准之争—ZigBee与Z-Wave比较分析 2007-11-1  
· MEDC 2006经典回顾:超强.net相扑机器人大战 2007-11-1  glacier
· .Net Micro Framework研究—IO读写 2007-11-1  叶帆工作室

  

论坛推荐  
热点活动
更多»

© CSIP 信息产业部软件与集成电路促进中心 All Rights Reserved 版权所有 京ICP备06020771号
联系电话:010-63951881-8003 王先生        邮件:wangj@csip.org.cn