对于串口来说,一般大家都了解波特率,校验码,数据位之类的参数。然而在实际的数据传输中,有些参数也会影响数据的传输。现总结如下,以便大家查询。
在对串口进行编程时,可用portman对串口参数进行跟踪,提示如下:
15 0.00001006 IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600 
16 0.00000531 IOCTL_SERIAL_CLR_RTS Serial0 SUCCESS  
17 0.00000559 IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS  
18 0.00000447 IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8 
19 0.00000279 IOCTL_SERIAL_SET_CHAR Serial0 SUCCESS EOF:0 ERR:0 BRK:0 EVT:0 XON:11 XOFF:13 
20 0.00000391 IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:0 Replace:80000000 XonLimit:1000 XoffLimit:1000
其中
Rate: 9600指的是波特率。
StopBits: 1停止位
Parity: NONE 校验位
WordLength: 8 数据长度
这些是主要参数,但往往XON:11 XOFF:13 Shake:0 Replace:80000000 XonLimit:1000 XoffLimit:1000这些参数对传输也有所影响。故对SPCOMM控件的参数设置总结如下:
Shake:
 SPCOMMR的DsrSensitivity=true 为40   
 SPCOMMR的DtrControl属性 
  DtrDisable=0
  DtrEnable=1
  DtrHandshake=2
 SPCOMMR的Outx_CtsFlow=true 为8
 SPCOMMR的Outx_DsrFlow=true 为10
Replace: 
        SPCOMMR的Outx_XonXoffFlow=true  为1
     SPCOMMR的Inx_XonXoffFlow=true  为2
 SPCOMMR的ReplaceWhenParityError=true  为4
 SPCOMMR的IgnoreNullChar=true  为8
 SPCOMMR的TxContinueOnXoff=true  高位为8
 SPCOMMR的RtsControl属性 
  RtsDisable=00
  RtsEnable=40
  RtsHandshake=80
  RtsTransmissionAvailable=C0

XonLimit:  SPCOMM的XOnLimit
XoffLimit: SPCOMM的XOffLimit
XOFF:      SPCOMM的XOffChar
XON:       SPCOMM的XOnChar

SPCOMM控件对串口参数的设置的更多相关文章

  1. delphi7在win7系统如何安装spcomm控件

    1.先准备好串口控件SPCOMM,例如把它放在F盘的工具安装文件夹下,等一下加载时需要用到. 2.打开delphi7软件. 3.按下上面的Component>Install  Component ...

  2. MSComm控件进行串口编程的基本步骤

    Visual C++为我们提供了一种好用的ActiveX控件Microsoft Communications Control(即MSComm)来支持应用程序对串口的访问,在应用程序中插入MSComm控 ...

  3. 五种情况下会刷新控件状态(刷新所有子FWinControls的显示)——从DFM读取数据时、新增加子控件时、重新创建当前控件的句柄时、设置父控件时、显示状态被改变时

    五种情况下会刷新控件状态(刷新控件状态才能刷新所有子FWinControls的显示): 在TWinControls.PaintControls中,对所有FWinControls只是重绘了边框,而没有整 ...

  4. DevExpress 控件使用之GridControl基本属性设置

    DEV控件:gridControl常用属性设置     1.隐藏最上面的GroupPanel(实现方法两种)     ①代码实现:gridView1.OptionsView.ShowGroupPane ...

  5. DEV控件:gridControl常用属性设置(转载)

    特别长,先撸下来再说 1.隐藏最上面的GroupPanel  gridView1.OptionsView.ShowGroupPanel=false; 2.得到当前选定记录某字段的值  sValue=T ...

  6. DEV控件:gridControl常用属性设置

    1.隐藏最上面的GroupPanel  gridView1.OptionsView.ShowGroupPanel=false; 2.得到当前选定记录某字段的值  sValue=Table.Rows[g ...

  7. Chart控件,把Y轴设置成百分比

    这次所有属性设置都用代码(就当整理便于以后查询). 在窗体放置一个Chart控件,未做任何设置:然后编写代码: //设置 chart2.Legends[ ].Enabled = false;//不显示 ...

  8. 设置TextBlock默认样式后,其他控件的Text相关属性设置失效问题

    问题: 定义了默认TextBlock样式后,再次自定义下拉框 or 其他控件 ,当内部含有TextBlock时,设置控件的字体相关样式无效,系统始终使用TextBlock设置默认样式 解决方案: 为相 ...

  9. Dev的TextEdit控件IP地址的Mask设置

    1. 添加TextEdit控件. 2. 选中TextEdit控件,查看控件属性. 3. 展开Properties属性项,找到Mask属性项. 4. 设置Mask属性项的EditMask属性值为:(25 ...

随机推荐

  1. C 语言 进阶

    清单狂魔,只挖坑不填坑.. 前言 最近经常被询问 C 语言 相关的问题,突然便也觉得需要思考一下 C 语言的进阶了. 我用 C 语言写过的最大的一个项目,也只是那个贪吃蛇,后来就断断续续地用 Pyth ...

  2. abp ef codefirst 设置默认值

    public partial class tableIsWaringfiled : DbMigration { public override void Up() { //设置默认值为true Add ...

  3. 学习go语言第一天

    今天先下载了go语言,FQ去下载的,一开始想用eclipse,然后下载了go插件,结果出现错误,我英语水平有限,就换了liteIDE,感觉还不错,go语言环境变量因为我是msi安装的,好像可以不用自己 ...

  4. 轻松精通awk数组企业问题案例

    考试题1:处理以下文件内容,将域名取出并根据域名进行计数排序处理:(百度和sohu面试题) oldboy.log http://www.etiantian.org/index.html http:// ...

  5. tomcat调优(Mark)

    http://blog.csdn.net/jinwanmeng/article/details/7756591

  6. [NOWCODER] myh的超级多项式

    题面 已知$f_i=(\sum_{j=1}^ka_j{v_j}^i )\bmod 1004535809$ 给定$v_1,v_2,\ldots,v_k,f_1,f_2,\ldots f_k$ 求$f_n ...

  7. POJ 3974 Palindrome | 马拉车模板

    给一个字符串,求最长回文字串有多长 #include<cstdio> #include<algorithm> #include<cstring> #define N ...

  8. DP———1.最大子连续子序列和

    最大连续子序列 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Sub ...

  9. spring boot 2.0之后默认的连接池 HIkariCP介绍

    HIkariCP链接池比之传统的Tomcat JDBC datasource .c3p0 datasource 等传统链接池优势太大,在获取链接释放链接,执行效率上面高出很多,这个产品的口号是“快速. ...

  10. python Error Message: command 'gcc' failed with exit status 1

    参考:[ CSDN ] 解决方法 yum install gcc libffi-devel python-devel openssl-devel