




已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验三rs232通信程序设计,1.实验要求设计两台主机通过rs232接口进行字符通信的windows程序,实现最基本的双人聊天功能,理解物理层通信的实现过程。2.实验条件带有rs232接口的计算机,一条rs232连接线(双机互连或一台计算机的两个串口互连)。,3.实验指导,(1)rs232c接口9个引脚信号列表与时序,3.实验指导引脚意义1.cdcarrierdetect数据载波侦测2.rdreceivedata接收数据3.tdtransmitdata发送数据4.dtrdataterminateready数据终端准备好5.sgsingalsetready地线6.dsrdatasetready数据准备好7.rtsrequesttosend请求发送8.ctscleartosend清除发送9.riringindicate铃声指示器,(1)rs232c接口9个引脚信号列表与时序,pcpcdtr步骤1dsr步骤2rts步骤3dcd步骤4cts步骤5td步骤6rd步骤7,(1)rs232c接口9个引脚信号列表与时序,在windows环境下设计串口通信程序,一种途径是利用microsoft公司提供的activex控件mscomm32.ocx,它为开发rs-232通信程序提供了简便方法。(详细属性见ppt附录,p1524)mscomm控件的通信功能实现,实际上是调用了api函数,而api函数是由comm.drv解释并传给设备驱动程序执行的,对于应用程序开发者只需知道mscomm控件的属性和事件的用法即可以实现对串口的操作。,(2)mscomm32控件的属性,通常按照下面的步骤来使用mscomm控件进行通信控制:加入mscomm对象;选定通信端口号,即设定commport属性;设定通信参数,即settings属性;确定采用中断或是轮询方式处理到达数据;开启通信端口,即将portopen属性设为true;使用input或output属性,送出字符串或读入字符串;结束通信活动后,将通信端口关闭。,(3)利用mscomm控件的通信步骤,使用c#设计rs-232通信程序的关键有三点:mscomm控件的添加、控件属性设置、使用控件接收和发送数据。,(5)c#编程要点,添加mscomm控件c#开发平台在缺省状态下工具箱中并无mscomm控件。1.“项目”“添加引用”“com”菜单栏加入microsoftcommcontrol组件2.“工具”“选择工具箱项”“com组件”菜单栏中选择microsoftcommunicationcontrol组件3.在工具箱中找到mscomm控件(带有电话机图标)4.把mscomm控件添加到form中。其缺省名字是axmscomm1,以下假定重命名为comm1。,(6)实验步骤,若vs2005没有mscomm引用,需手动添加:(1)复制文件mscomm32.ocx到c:windowssystem32目录下。(2)注册组件:开始-运行-输入regsvr32mscomm32.ocx,注意事项,截图:添加引用,截图:添加控件,几个主要属性设置如下:comm1.commport=3;/设定串口号comm1.rthreshold=1;/当接收到1个字节数据时就触发oncomm事件comm1.settings=“9600,n,8,1”;/设置通信参数comm1.inputlen=0;/利用input可读取输入缓冲区所有到达的数据,串口控件属性的设置,数据的发送容易实现,只需将要发送的数据赋值给output,代码示例如下:由于前面rthreshold属性设置为1,所以只要有数据到达就会产生oncomm事件,并将commevent属性值置为comevreceive,使用控件接收和发送数据,实现数据接收示例代码如下:,使用控件接收和发送数据,程序主界面(参考),commport属性该属性用于设置或返回连接的串口编号。setting属性该属性用于设置或返回通信参数,属性值用字符串表示,主要设定波特率、奇偶检验、数据位数,停止位等4个参数。组成格式为:“bbbb,p,d,s”,附录:(2)mscomm32控件的属性,handshaking属性该属性用于设置或返回硬件握手协议,即pc机与通信设备(如modem)之间为了控制流速而约定的内部协议,属性值可以设置为如下的值:符号值数值描述comnone0默认值,无握手协议comxonoff1xon/xoff握手协议comrts2rts/cts握手协议comrtsxonxoff3xon/xoff握手协议和rts/cts握手协议,(2)mscomm32控件的属性,portopen属性该属性用于打开或关闭端口。属性值为boolean型。设为true可以打开端口;设为false可以关闭端口。outbuffersize属性该属性用于设置或返回发送缓冲区大小,值为integer型,表示发送缓冲区的字节数,缺省值为512字节。outbuffercounter属性该属性用于返回发送缓冲区内等待发送的字节数,可用来清空缓冲区。,(2)mscomm32控件的属性,output属性该属性用于通过发送缓冲区发送数据。sthreshold属性该属性为一阀值,当输出缓冲区字节数小于该值后就产生oncomm事件,并且commevent属性会被设定为comevsend。如果该值为0(默认值),则不会因输出缓冲区变化产生oncomm事件。,(2)mscomm32控件的属性,inbuffersize属性该属性用于设置或返回输入缓冲区大小,缺省值为1024字节。inbuffercount属性该属性用于返回输入缓冲区内等待读取的字节个数,可通过设置该属性为0来清除接收缓冲区。inputlen属性该属性用于设置或返回接收缓冲区内用input属性命令读入的字节个数。若取0(默认值),则input属性读取缓冲区中所有到达的字节。,(2)mscomm32控件的属性,input属性该属性用于从接收缓冲区读取并移走数据,每次处理的字节数由inputlen属性的设定值决定。rthreshold属性该属性为一阀值,当接收缓冲区内字节个数达到或超过该值后就产生oncomm事件,并且commevent属性会被设定为comevreceive。如果该值为0(默认值),则无论有多少数据到达输入缓冲区都不会产生oncomm事件。,(2)mscomm32控件的属性,inputmode属性该属性用于设置或返回接收数据的类型。若取缺省值0(cominputmodetext),则input接收文本型数据。取值1(cominputmodebinary),则input属性接收二进制数据。,(2)mscomm32控件的属性,dtrenable属性该属性确定在通信时是否使dataterminalready(dtr)线有效。dataterminalready是计算机发送到调制解调器的信号,指示计算机在等待接受传输。rtsenable属性该属性确定是否使requesttosend(rts)线有效。一般情况下,由计算机发送rts信号到连接的调制解调器,以请示是否允许发送数据。,(2)mscomm32控件的属性,mscomm控件只有一个事件,即oncomm事件。事件驱动通信是处理串行端口交互作用非常有效的方法,依据产生的事件和错误,mscomm控件为commevent属性赋不同的代码,同时产生oncomm事件。用户程序就可在oncomm事件处理程序中针对不同的commevent属性值执行不同的操作。,oncomm事件与commevent属性,(2)mscomm32控件的属性,commevent属性设计时无效,运行时只读。常见commevent属性值如下:comevreceive:当rthreshold属性值
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年投资促进机构行业当前发展现状及增长策略研究报告
- 收料员基础知识培训课件
- 支教面试课件内容
- 2025年管理学专业(客户关系维护与管理)职业技能资格知识考试题与答案
- 2025年社会工作者之初级社会工作实务真题练习试卷A卷附答案
- 2025护士资格证考试试题(含答案)
- 摩托车维修安全知识培训课件
- 摄影线下实拍课件
- 江西省抚州市2024-2025学年八年级下学期期末语文试题(解析版)
- 摄影店装修基础知识培训课件
- 一次调频综合指标计算及考核度量方法
- 车辆段平面布置设计
- 四大会计师事务所面试题
- HY/T 112-2008超滤膜及其组件
- GB/T 4669-2008纺织品机织物单位长度质量和单位面积质量的测定
- GB/T 4604-2006滚动轴承径向游隙
- GB/T 31315-2014机械结构用冷拔或冷轧精密焊接钢管
- Fanuc系统宏程序教程
- 腾讯云TCA云架构工程师考试真题
- 兽医产科学之公畜科学课件
- 动物育种学第四章生产性能测定
评论
0/150
提交评论