- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
vb实现pc机与单片机的串口通信
VB中利用串行通信控件实现 一 VB中实现串行通信的方法 一般用VB开发串行通信程序有两种方法 :一是利用Windows的通信API函数;另一种是采用VB标准控件来实现。利用API编写串口通信程序较为复杂,需要掌握大量通信知识,这里不讨论。 MSComm控件是Microsoft提供的扩展控件,用于支持VB程序对串口的访问。MSComm控件具有两种处理方式: 事件驱动方式:由MSComm控件的OnComm事件捕获并处理通信错误及事件; 查询方式:通过检查CommEvent属性的值来判断事件和错误。 本系统利用51单片机和VB现有的MSComm通信控件通过温度传感器,把检测到的温度在PC机上用曲线和数字的形式直观的实时反映出来。 二 控件的主要属性和事件 1.1 MSComm控件的主要属性及事件 此控件的属性较多,下面介绍与文中有关的几个属性[2]. CommPort 设置并返回通信端口号.如:Mscomm1.Commport=1表示指定使用COM1作为通信端口. (设置或返回串行端口号); Input 返回并删除接收缓冲区中的数据,在设计时无效,运行时为只读. InputLen——设置或返回接收缓冲区内用Input读入的个数。若取0,则INPUT读取整个缓冲区的内容; (确定被Input属性一次从接收缓冲区读取的字符数) InputMode 设置并返回被Input属性读取的数据类型,其中ComInputModeText以文本的形式返回,而ComInputModeBinary以二进制形式返回. InBufferCount——返回接收缓冲区内的等待读取的字节个数,可通过设置该属性为0来清除接收缓冲区; InBufferSize——设置或返回接收缓冲区的大小,缺省值为1024字节; Output 向输出缓冲区中写入数据,在设计时无效,运行时为只读. PortOpen 设置并返回通信端口的状态,运行时有效. Settings 设置并返回初始化参数,即波特率、奇偶校验、数据位和停止位.对于奇偶校验位,N表示不校验,E表示偶校验,O表示奇校验, M表示符号校验, S表示空格校验.如Mscomm1.Settings=“2400,N,8,1”表示所使用的通信端口以每秒2 400 B的速度传输,不作同位位校验,8个数据位,1个停止位.(设置或返回串行端口的波特率、奇偶校验位、数据位数、停止位) OnComm事件 当CommEvent属性的值变化时,就产生此事件,标志发生了一个通信事件或错误. 如果在通信过程中发生错误或事件,就会引发OnComm事件并且改变属性值,由CommEvent属性代码反映错误类型,在通信程序的设计中可根据该属性值来执行不同的操作。OnComm事件可能引发多种错误 CommEvent 返回通信事件或错误.只要有通信错误或事件发生都会产生OnComm事件,该属性存有所发生的错误或事件的数值代码. RThreshold 该属性为一阀值,它确定当接收缓冲区内字节个数达到或超过该值后就产生代码为MSCOMM_EV_RECEIVE的OnComm事件; 在MSComm控件设置Com-mEvent属性为CommEvReceive,并产生On-Comm事件之前设置并返回要接收的字符数. 1.2 用MSComm控件进行串口通信一般步骤 1)设置通信对象、通信端口号以及配置通信格式(如起始位个数、数据位长度、校验方式、停止位个数等)和其它相关属性. 2)设定通信协议. 3)打开通信端口,进行数据的传送和读入. 4)关闭通信端口.在完成串行通信操作后,将串行通信端口的资源归还给操作系统. 1.3 MSComm控件通信方式的选择 MSComm控件有两种处理通信的方式,即事件驱动方式和查询方式.事件驱动方式是处理端口通信的一种有效的方法,它可以利用On-Comm事件捕获并处理通信中发生的事件或错误,通过分别对每个CommEvent属性值编程即可完成对各个错误或事件的处理,实时性较强.而查询方式是在程序通过查询CommEvent属性的值来判断通信过程中的事件或错误并做出相应的处理,这种方式适合于应用程序较小、实时性要求不是很高的系统. 2 通信的实现 2.1 通信的硬件结构和上位机软件 系统采用工业控制PC机作为上位机c51单片机为下位机,二者通过RS232串行口连接以接收或上传数据或指令. 、 目前的 PC 机都有至少一个串行通讯端口 RS-232, RS-232 端口可用于两台计算机之间进行通讯,RS-232 的逻辑电平用正负电压表示,且信号使用负逻辑,逻辑 0 的电压范围是+5V~+15V,而逻辑 1 的电压范围是-5V~ -15V,RS-232 端口是计算机与其他设备沟通的最常用的接口,
文档评论(0)