




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VisualC++串口通信技术信息安全研究所雨雾雨雾雨雾第一章第二章第三章雨雾第四章介绍计算机接口技术的基本内容,重点介绍了串口通信协议RS232。对串口通信的基本概念,数模模数转换原理和应用简单说明。MSComm控件进行通信编程的基本方法、属性和事件。介绍Windows操作系统下串口通信API的演变,主要API函数。第一章概述1、计算机接口技术简介2、RS232串口标准1、计算机接口技术简介(1)什么是接口?(2)接口的基本功能(3)常见的接口(4)接口的控制方式2、RS232串口标准(1)RS—232概述(2)数据终端设备与数据通信设备(3)RS—232协议标准(4)RS—232窗口通信基本连接方法第二章端口通信编程技术1、基本概念2、模数/数模转换3、端口参数2.1基本概念(1)端口通信—同步、异步传输(2)单工、双工和全双工通信(3)端口通信—通信协议(4)数据编码(5)数据安全和完整2.2模数/数模转换(1)数模转换器(2)模数转换器2.3端口参数(1)比特率(2)流量控制方法(3)缓冲储存器(4)串口适配器终端和I/O地址第三章MSComm控件进行串口编程(1)MSComm控件介绍(2)MSComm控件串口编程——基本流程(3)MSComm串口数据通信——字符传输(4)MSComm控件串口数据通信——高级应用3.1MSComm控件介绍1、控件的操作模式(1)事件驱动方法(2)查询方法2、控件的属性(1)voidSetCommPort(short
nNewvalue)shortGetCommPort();用于设置并返回连接的串口端口号(2)voidSetSettings(LPCSTR
lpszNewValue);String
GetSettings();用于设置并返回数据传输速率、奇偶校验、数据比特、停止比特参数。(3)Handshaking属性用于设置或者返回硬件握手协议。ComNone
默认值、无握手协议comXOnXOffXON/XOFF握手ComRTS
请求发送或清除发送握手comRtsXOnXOff请求发送和清除发送握手都可以(4)voidSetRThreshold(short
nNewValue)shortGetRThreshold()用于设置并返回要接受的字符数(5)voidSetCTSHolding(BOOL
bNewValue);BOOLGetCTSHolding()用于确定是否通过查询CTS线的状态发送数据(6)voidSetThreshold(short
nNewValue);short
GetSThreshold();设置并返回传输缓冲区中允许的最小字符数。(7)voidSetInputModel(long
nNewValue);long
GetInputModel();设置并返回传输数据的类型——0:文本、1:二进制(8)voidSetInputLen(short
nNewValue);short
GetInputLen();设置并返回Input属性从接收缓冲区读取的字符数。(9)voidSetInBufferSize(short
nNewValue);short
GetInBufferSize();用于设置接收缓冲区的大小。(10)voidSetInufferCount(short
nNewValue);short
GetInBufferCount()用于设置和返回接收数据缓冲区中等待数据的字节个数。(11)VARIANTGetInput();用于获得数据缓冲去中数据。(12)voidSetPortOpen(BOOL
bNewValue);BOOL
GetPortOpen();用于打开或关闭端口(13)voidSetOutBufferSize(short
nNewValue)用于设置发送缓冲区的大小。(14)voidSetOutBufferCount(short
nNewValue)用于设置和返回发送数据缓冲区中等待数据的字节个数。
(15)voidSetOutput(constVARIANT&newValue)用于向发送缓冲区中写数据流(16)voidGetCommEvent();用于获取事件信息。(17)voidSetDTREnable(BOOLbNewValue);BOOL
GetDTREnable()用于确定在通信是是否使用DTR线有效。(18)voidSetRSTEnable(BOOLbNewValue);BOOL
GetRSTEnable()用于确定在通信是是否使用RST线有效。(19)voidSetEOFEnable(BOOL
bNewValue);BOOL
GetEOFEnable()确定在输入过程中是否寻找文件的结尾字符。(20)voidSetCDHolding(BOOLbNewValue);BOOL
GetCDHolding();通过查询CD线的状态来确定当前是否有传输。(21)voidSetDSRHolding(BOOL
bNewValue);BOOL
GetDSRHolding();确定DataSetReady线的状态。(2)MSComm控件串口编程——基本流程1、在Project中插入MSComm控件2、初始化并打开控件3、捕捉串口事件4、串口读写5、关闭串口第四章WindowsAPI编程控制串口1、WindowsAPI串口通信编程概述2、WindowsAPI串口通信相关函数1
WindowsAPI串口通信编程概述应用程序API(ApplicationProgrammingInterface)驱动程序Windows开放服务体系2
WindowsAPI串口通信相关函数1、打开串口HANDLE
CreateFile(LPCSTR
lpszName,DWORD
fdwAccess,DWORDfdwShareModw,LPSECURITY_ATTRIBUTES
lpsa,DWORD
fdwCreate,DWORD
fdwAttrsAndFlags,HANDLE
hTemplateFile);2、分配缓冲区BOOLSetupComm(HANDLE
hFile,DWORD
dwInQueue,DWORD
dwOUTQueue);3、关闭串口BOOLCloseHandle(HANDLE
hObject);4、串口配置BOOLSetCommState(HANDLE
hFile,LPDCBlpDCB);5、设置超时结构BOOLBulidCommDCBAndTimeouts(LPCSTR
lpDef,LPDCB
lpDCB,LPCOMMTIMEOUTS
lpCommTimeouts);6、获得串口属性BOOLGetCommProperties(HANDLE
hFile,LPCOMMPROP
lpCommProp);7、清除缓冲区BOOLPurgeComm(HANDLE
hFile,DWORD
dwFlags);8、BOOLFlushFileBuffers();9、读串口BOOLReadFile(HANDLE
hFile,LPVOID
lpBuffer,DWORD
nNumberOfBytesToRead,LPDWORD
lpNumberOfBytesRead,LPOVERLAPPED
lpOverlapped);10、异步读串口BOOLReadFileEx(HANDLE
hFile,LPVOID
lpBuffer,DWORD
nNumberOfBytesToRead,LPDWORD
lpNumberOfBytesRead,LPOVERLAPPED
lpOverlapped,LPOVERLAPPED_COMPLETION_ROUTINE
lpCompletionRoutine);11、写串口BOOLWriteFile(HANDLE
hFile,LPVOID
lpBuffer,DWORD
nNumberOfBytesToRead,LPDWORD
lpNumberOfBytesRead,LPOVERLAPPED);12、异步写串口BOOLWriteFileEx(HANDLE
hFile,LPVOID
lpBuffer,DWORD
nNumberOfBytesToRead,LPDWORD
lpNumberOfBytesRead,LPOVERLAPPED
lpOverlapped,LPOVERLAPPED_COMPLETION_ROUTINE
lpCompletionRoutine);13、设置传送字符优先级最高BOOLTransmitCommChar(HANDLE
hFile,char
cChar);14、异步操作获取结果函数BOOLGetOverLappedResult(HANDLE
hFile,LPOVERLAPPED
lpOverlapped,LPWORD
lpNumberOfBytesTransferred,BOOL
bWait)雨雾15、等待事件用于获取当前状态DWORDWaitForSingleObject(HANDLE
hHandle,DWORD
dwMilliseconds)16、获取超时时间BOOLGetCommTimeOuts(HANDLE
hFile,LPCOMMTIMEOUTS
lpCommtimeouts);17、设置超时参数BOOLSetCommTimeOuts(HANDLE
hFile,LPCOMMTIMEOUTS
lpCommtimeouts);18、清除错误状态BOOLClearCommError(HANDLE
hFile,LPDWORD
lpErrors;LPCOMSTAT
lp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数字化军事装备选型
- 高速公路智能交通系统在交通管理与维护成本控制体系中的应用报告
- 2025年线下演出市场观众满意度与忠诚度研究报告
- 社区心理健康服务在2025年的市场前景与推广策略报告
- 2025年智慧零售大数据存储与消费体验优化报告
- 汽车共享市场2025年展望:运营模式升级与用户行为洞察报告
- 土木实习报告版
- 中烟香港公司深度报告:“内生”铸就业务基石“外延”拓展成长空间
- 办公室收文办理管理制度
- 星级酒店层级管理制度
- 数学建模思想在中小学数学课堂教学中的应用研究
- 2025年五级应急救援员资格理论考试题库(含答案)
- 第三讲文明初现与中华民族起源史前时期-中华民族共同体概论专家大讲堂课件
- 亚洲的自然环境教学设计
- 中学关工委工作制度与职责
- 出租屋安全管理培训
- 建筑项目勘察设计方案(技术方案)
- 2024江苏省公务员考试【申论 A卷、C卷】+2023年【申论B卷】共 3套 真题及答案
- 2025年上半年广东省广州市黄埔区广州开发区招聘政府雇员66人易考易错模拟试题(共500题)试卷后附参考答案
- 肠道传染病知识培训课件
- 2025春道法二年级下册道法二年级下册2下3单元11课《我是一张纸》课件
评论
0/150
提交评论