Visual C++在异步串行通信控制中的应用
来源:互联网 发布:淘宝内部券平台代理 编辑:程序博客网 时间:2024/05/05 03:03
Visual C++在异步串行通信控制中的应用 邱红兵 韩峰 摘要:系统介绍了Visual C++实现异步串行通信的基本原理,分别讲述了用Windows函数库API函数实现和C运行时库的实现方法,以及在控制系统中的编程应用实例。 The Visual C++ Application in Asynchronous Serial Communication Control QIU Hong-bing HAN feng Abstract: The paper is focus on the principle of asynchronous serial communication by Visual C++, and tells of their implement methods using API function in Windows function warehouse and C function singly. The paper also adduces program application sample in control system. 1 引言 2 工作原理 图1 控制系统网络结构图 3 Visual C++实现串行通信 |
图2 RS-232接口连接 3.2.2 异步串行通信原理 表1 UART内部寄存器端口分配 |
端口地址** | 指令 | 条件* | 寄存器名称及作用 |
0x3f8(0x2f8) 0x3f8(0x2f8) 0x3f8(0x2f8) 0x3f9(0x2f9) 0x3f9(0x2f9) 0x3fa(0x2fa) 0x3fb(0x2fb) 0x3fc(0x2fc) 0x3fd(0x2fd) 0x3fe(0x2fe) | _outp _inp _outp _outp _outp _inp _outp _outp _inp _inp | DLAB=0 DLAB=0 DLAB=1 DLAB=1 DLAB=0 — — — — — | 写入发送器保持寄存器 读出接收器数据寄存器 写入波特率因子(LSB) 写入波特率因子(MSB) 写入中断允许寄存器 读出中断标识寄存器 写入线路控制寄存器 写入MODEM控制寄存器 读出线路状态寄存器 读出MODEM状态寄存器 |
* DLAB指线路控制器 D7位; ** 括号前指COM1,括号内指COM2。 下面,从编程应用的顺序考虑,对表1各个寄存器的作用进行说明(端口地址以COM1为例)。 |
图3 查询I/O方式下通信流程图 BOOL CCommu::WaitForStatus(int flag) 4 结束语 作者简介:邱红兵(1974-),男,湖北云梦县人,硕士研究生,主要从事数学模型建立、微机应用软件开发、机电控制及自动化研究。 参考文献
|
- Visual C++在异步串行通信控制中的应用
- 异步串行通信
- 串行异步通信-UART
- 串行异步通信-UART
- 串行异步通信接口
- 同步串行通信和异步串行通信
- 同步串行通信与异步串行通信
- 基于多线程技术的异步串行通信应用
- 串行通信控制
- 串行通信控制
- 同步与异步串行通信
- 同步与异步串行通信
- 串行通信、并行通信、同步通信、异步通信
- 串行与并行、同步和异步串行通信
- 异步串行通讯和同步串行通信两者的对比
- 异步串行通信波特率的误差
- msp430串行通信模块(异步模式)
- 工作那些小事(异步串行通信)
- Eiffel 简介
- The way to dynamic validate xml against DTD
- Amdahl's Law
- 在Java中读写Excel文件
- SQLServer和Access、Excel数据传输简单总结
- Visual C++在异步串行通信控制中的应用
- ANT安装、配置
- 同愚昧作斗争
- JAVA面试题集
- 使用 Sender 参数
- 网络时代计算机病毒发展的新趋势
- 在rational rose的sequence图中表示条件逻辑。
- VC 7.0 中使用CDaoRecordset 类/使用Dao 方法操作数据库
- 今天开始用电驴(e-mule)