文档详情

自-windows ce嵌入式高级编程及其实例详解10 .doc

发布:2021-07-13约4.71万字共69页下载文档
文本预览下载声明
第10章 串口编程    串口是计算机与外部串行设备之间的数据传输通道,由于串行通信方便易行,因此应用 非常广泛。例如在工业自动化中,很多智能采集设备都是采用串口方式和PC机进行通讯。在 Windows CE嵌入式电脑中,串口依然是和外部设备进行通讯的重要方式,例如GPS设备。目 前很多PDA都集成了蓝牙通讯功能,可以通过设置蓝牙通讯方式为串口方式,来和另外一端 蓝牙设备进行通讯。作为一名Windows CE程序编写人员,掌握串口编程知识,将会为日后工 作提供极大的便利。  本章主要包括如下内容:   · 串口概述  ·  串口编程APl函数介绍 · 串口综合示例  ·’GPS编程示例 10.1 串口概述  “串行通信”是指外设和计算机间使用两根数据信号线(另外需要地线,可能还需要控制 线),数据在一根数据信号线上一位一位地进行传输,每一位数据都占据一个固定的时间长度。 这种通信方式使用的数据线较少,在远距离通信中可以节约通信成本,而且其传输速度也不比 并行传输的速度慢。相反的,“并行通信”是指一条信息的各位数据被同时传送。并行通讯的 特点是:各数据位同时传送、传送速度快、效率高,但由于有多少数据位就需多少根数据线, 因此传送成本较高,比较适用于近距离(相距数米)的通讯。  目前较为常用的串口有9针串口(DB9)和25针串口(DB25),当通信距离较近时(12m), 可以使用电缆线直接连接标准RS232端口(RS422和RS485较远),若通信距离较远,则需附 加调制解调器(Modem)。   表10.1将简要说明DB9常用信号脚定义。 表10.1 DB9常用信号脚说明表 9针串口(DB9) 25针串口(DB25)   针号 功能说明    缩写     针号   功能说明 缩写 l 数据载波检测 DCD 8 数据载波检测 DCD  2 接收数据 RXD 3 接收数据 RXD 3 发送数据 TXD 2 发送数据 T)(D  4 数据终端准备 DTR 20 数据终端准备 DTR  5 信号地 GND 7 信号地 GND 续表   9针串口(DB9)  25针串口(DB25)  针号  功能说明     缩写 针号   功能说明   缩写 6   数据设备准备好 DSR   6  数据准备好 DSR 7  请求发送  RTS 4   请求发送  RTS 8   清除发送   CTS   5  清除发送 CTS   9   振铃指示 DELL 22  振铃指示 DELL 最简单且常用的接线方式是三线制接法,即地、接收数据和发送数据三脚相连,即只要有接 收数据针脚和发送针脚就能实现串口数据传输;对于同一个串口,只要接收脚和发送脚直接用线 相连,那么在此串口发送什么数据,该串口就可以接收什么数据。对于两个不同串口(不论是同 一台计算机的两个串El或分别是不同计算机的串13),均可以采用如表l0.2所示的接线方式。 表10.2不同串口接线方式表    9针一9针   25针-25针    9针-25针  2  3  3 2  2  2   3 2 2 3   3 3 5  5  7  7   5 7 对于 口硬件介   1.打    在访肛 开串口,有 函数打开目 码中,将赫   HANDL 第10章串口编程 353 在此需要说明的是,在CreateFile函数的参数中,共享参数必须设置为0,表示独占方式; 安全参数必须设置为NULL值;模板文件参数也必须被设置成NULL。 由于在Windows CE中,不支持重叠I/O模式,因此不能在参数dwFlagsAndAttributes中 传递 OVERLAPPED。  ’  如果打开串口成功,将返回打开串口的句柄,否则将返回INVALID HANDLE VALUE。 打开串口之后,串口就已经被独占了,因此当不再使用已打开的串口时,应及时关闭串 口,此时可以使用CloseHandle函数关闭串口。例如可以使用以下代码来关闭上面打开的串口: BOOL bResult=CloseHandle(hComm); 2.配置串口 在使用串口和另外一个设备进行通讯时,一定要先设置串口的参数(波特率、奇偶校验、 数据位等),这些参数设置正确与否将直接影响是否能够和串口设备进行通讯。串口参数信息 一般由串口设备厂家提供。Windows CE中提供了GetCommState和SetCommState函数,分别 用于
显示全部
相似文档