- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Windows CE.NET应用程序开发进阶
第四章:Windows CE .NET 应用程序开发进阶
在上一章我们介绍了如何使用Win32 SDK 来为Windows CE 装置建立一个基本的窗口应
用程序,并从基本的窗口应用程序来介绍了如何开发使用者接口。本章将更进一步介绍如何
在Windows CE .NET 应用程序增加其它功能,例如,在应用程序中处理序列通讯、在应用
程序中加入Windows Socket 通讯功能、在应用程序中使用、建立和存取案系统或登录信息、
以及如何开发多执行绪的应用程序等。
4.1序列通讯应用程序
序列读写(Serial I/O)通常是所有Windows CE 装置都支持的最基本的通讯功能,透过序列
通讯接口(Serial Communication Interface),Windows CE 装置可轻易的连接到个人计算机、打
印机、机械、机台、控制器、modems 或GPS (Global Positioning System)等其它装置以控制
这些装置或与这些装置沟通。
序列通讯应用程序开发接口
应用程序和串行端口的沟通,主要是透过序列装置驱动程序(serial device driver) 。如上
图所示,序列装置驱动程序是属于资料流装置驱动程序(Stream Interface Driver)的一种,而应
用程序主要是透过操作系统的档案系统的应用程序开发接口(File System API)来存取序列装
置驱动程序以传送/接收资料和控制序列装置。Windows CE 支持大部份的Windows XP 所提
供的序列通讯函式(functions)的结构(structures),如下表所示 :
Function Description
CreateFile 开启一个序列通讯端口
GetCommState 读取一个序列通讯端口的状态并将读取结果填入装置控制区块
(device-control block)结构 - DCB structure 。
SetCommState 根据DCB 结构的内容来设定调校一个序列通讯端口。这个功能会
重设硬件的设定但不会清空读写队列(I/O queues) 。
GetCommTimeouts 读取一个序列通讯端口的读写逾时参数(time-out parameters) 。
SetCommTimeouts 设定一个序列通讯端口的读写逾时参数(time-out parameters) 。
WriteFile 写入数据到一个序列通讯端口。
ReadFile 从一个序列通讯端口读取数据。
SetCommMask 设定一个通讯装置的事件屏蔽(event mask) 以等待事件的事生。
GetCommMask 读取一个通讯装置的事件屏蔽(event mask) 。
WaitCommEvent 等待一个通讯装置的事件的发生。WaitCommEvent 所等待的事件
是在事件屏蔽(event mask)中设定。
EscapeCommFunction 设定一个通讯装置去完成一个延伸功能。通常用来将一个序列通讯
端口变成红外线模式(IR mode) 。
ClearCommBreak 对一个通讯装置重新存入字符转换(character transmission),并置入
转换行(transmission line)在非中断状态(non-break state) 。
ClearCommError 读取一个通讯装置的错误讯息和目前状态。
本章节范例程序 :
本章节的范例程序是一个简单的点对点聊天程序。如下图所示,使用者先指定所要使用的
COM 埠,和设定COM 端口的传输速率后,接着点选[OPEN]来开启COM 埠。
待COM 埠开启成功后,使用者便可以开始收送资料如下图。使用者可以在画面中间的编辑
盒(Edit Box)输入欲送出的资料,然后点选[Send]便可将资料透过COM 端口送出。画面最底
下的编辑盒(Edit Box)则只是用来显示操作日志(log),包
文档评论(0)