找回密码
 注册
关于网站域名变更的通知
查看: 344|回复: 2
打印 上一主题 下一主题

[毕业设计] WINDOWS环境下PC机与单片机的通信

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-5-12 13:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
摘要:本文介绍了当前自动控制系统中PC机与单片机之间' K& G5 s3 W" v1 k1 a4 B/ z8 F
常用的几种通讯方法,如基于串口RS-232和RS-485、基于
. v& t  O4 O0 d8 t9 O6 N, IUSB接口与PC机的通讯。文中给出了部分程序9 @8 C5 v8 r9 A3 n
关键词: PC机;单片机;通讯接口;VC++
& q/ r+ c1 W' K0 e3 M在自动控制系统中,PC机与单片机组成上位机和下位机,  V$ Z; I1 s) Y$ s: F
其基本构成是:下位机(单片机系统)完成信号检测、A/D转换和6 T: K) ]0 x: O0 v0 M! m# j' @7 Q
简单的控制功能,通过系统总线(如RS--232、RS--485、USB)与上
/ e" h0 i3 {: C! }9 e- {- a位机(PC机)相连进行监测、控制,形成主从式结构。下面就上3 m* q5 g, m7 ^* N$ n
位机和下位机之间目前几种常用的通讯方法作--些介绍。
9 U' T; S" _2 t+ E: M' Z) d: C1RS-232的串行通讯
& V# }4 ?4 r/ ]6 E! |在工业控制中,串口是常用的计算机与外部串行设备之间- a# [8 ^$ ?. ^: n0 M
的数据传输通道,由于串行通信方便易行,成本低,且完全能满+ Y! e* o  [: `: f
足要求,所以应用广泛。( q# m" l: I( n9 p6 a! _
1.1、利用VC++的标准通信函数0 P8 u2 m( i, E. _5 H% W7 V, ?
利用VC+t的标准通信函数-inp和._outp可实现串口通信。! g% z; P: @4 f
下面是一一个串口初始化的程序:( F. t' o, ?7 L8 `% k$ t/ g

5 `" S( \* h9 E4 `# U# p1.2、使用串行通倍控件MSComm
0 S' @5 s: `0 e# {( \$ g, w  b" g9 vMSCOMM控件,即Microsoft Communication Control, 是Mi-/ I% J9 d2 B! B' y+ R
crosoft为简化Windows下串行通信编程而提供的ActiveX控件。
5 ~2 P- [- F$ T- }8 {  e& m. e( Z它提供了- -系列标准通信命令的使用接口,利用它可以建立与; j5 h2 ~7 ]. i$ J( \- f' f# m
串口的连接,并可以通过串口连接到其他通信设备(如调制解调$ x' N- B0 W+ T( [' ?# c
器),发出命令,交换数据以及监视和响应串行连接中发生的事.4 L1 L: j1 Y  U# X3 _6 N( s; r9 n
件和错误。MSCOMM控件可用于创建电话拨号程序、串口通信
$ b  H1 M+ O' o4 D, `程序和功能完备的终端程序。1 {* X9 K2 E2 }0 F# f

) @9 X7 O* k& k' J串行通信控件MSComm32.0CX提供了使用RS--232来进行  d. o# N  a& s9 C1 D
数据通信的所有协议,VC编程语言为该控件提供了标准的事件1 D7 i) K% S4 O; P/ b* y* l6 U
处理函数过程,并通过属性和方法提供了串行通信的设置。它9 o, }4 `, z/ j
使用户能够方便地访问Windows串行通信驱动程序的大多数特2 _; J$ Q  p, T$ M* d' L+ `
性,包括输入输出缓冲区的大小及决定何时使用流控制命令挂& U7 L6 R  ]8 p, F
起数据传输等。
5 n: J5 s1 p2 g9 S" h在ClassWizard中为新创建的通信控件定义成员对象(CM-
8 v# g' q4 |  C& T! NSComm m. Serial), 通过该对象便可以对串口属性进行设置,
3 e  l$ e% b- \3 _+ E9 VMSComm控件共有27个属性。如果需要通过多个串行口与多台
8 |+ G% l3 S6 k3 R8 n* D# @设备通信,那么每一个串行口对应于一个单独的MSComm控
$ K, k3 \1 o7 q6 k8 L; j8 t. b6 J件。串行口的设置参数既可以在对话框编辑器里设定,也可以在
: }. f) d5 F5 c0 W4 t程序代码中通过调用CMSComm类的成员函数设定。例如,我们* i" t0 y  P- w( K! |
可以在MyCOMDIg类的OnInitDialog成员函数中初始化4 v/ j& Z/ @- R. R
MSComm控件的参数,代码如下:* z* H" [  @) S1 ~: N' c

; D+ i9 J# u% C: _. s- r' I. E+ L1 t+ ]. s$ G1 H/ a1 ]
- W" B5 Q( _6 r- g& h: H2 H7 J9 F
附件下载:
游客,如果您要查看本帖隐藏内容请回复
1 \/ @" U0 n7 W; ~: G/ D; l

1 U% U3 [& b0 l. M: }

该用户从未签到

2#
发表于 2020-5-12 13:40 | 只看该作者
在工业控制中,串口是常用的计算机与外部串行设备之间的数据传输通道

该用户从未签到

3#
发表于 2020-5-13 07:40 | 只看该作者
MSCOM vs. API.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-3 06:54 , Processed in 0.140625 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表