编辑: 飞翔的荷兰人 | 2018-11-22 |
char鸵Port【15】: if(idComDev==CreateFile(szPort,GENEIC― READ l GENEIC_WRITE,0,NULL,OPEN――EXITING, FILE―ATmIBUTE IORMAL I FILE―FLAG- OVERAPPED,NULL) return(false);
2)串口的设置 DCB dcb;
//串行通信设备控制块结构 dcb.DCBlength=sizeof(DCB);
BOOL fRetVal;
GetCommState(idComDev,&
dcb);
//读取控制块 万方数据
22 北京联合大学学报(自然科学版) 2007年12月DCB设置 3)设置缓冲区大小和超时 SetupComm(idComDev,4096,4096);
PurgeComm(idComDev.PURGE―TXAB―ORT I PURGE_RXABORT I PURGE―TXCLEAR PURGE_ RXCLEAR);
COMMTMOU鸭CommT;
//设置超时 4)用事件驱动方式从串口中读取数据 if(!SetCommMask(idComDev,EV― RXCHAR)) return(false);
while(bConnected) {if(WaitCommEvent(idComDev, &
dwEvent,NULL);
//等待事件的发生 {ClearCommError(idComDev, &
dwError,&
cs);
if(!ReadFile(idComDev, inbuff,cbInQue,&
nBytesRead,NULL) locProcessCommError(GetLastError());
// 用户编写的处理错误函数 5)关闭串口 SetCommMask(idComDev,0);
if(bConnected) CloseHandle (hCommDev);
为了方便数据查询、管理,系统选用Access 2000作为存储数据的工具.VC提供了多种数据库 访问方法,如ODBC,ADO,DAO,OLE DB等.ODBC 是开放数据库互连的简称,是Microsoft公司开发的 用于远程访问数据库的统一接口规范,目前已成为 一种工业标准.使用ODBC开发数据库应用程序 时,调用的是标准的ODBC函数和SQL语句,数据 库底层操作由各个数据库的驱动程序完成,因此应 用程序有很好的适应性和可移植性,并且操作相对 ADO、DAO类简单,占用内存少,存储速度快.MFC 为ODBC提供了一些关键的类来支持数据库操作. CDatabase类用来与数据源相连,以获取指定的数据 集合,CRecordSet类由CObject类派生,用于管理维 护应用程序中的数据,其数据的存储、复制、查询均 以数据库的SQL命令进行操作.CRecordView是从 CformView类派生的,用于在控件中直接显示数据 库记录.本系统主要采用CDatabase类和 CRecordSet访问数据库,主要步骤如下: 1)建立数据库 手工操作在Access 2000中创建数据库biao. mdb,表中各字段设置如下:id字段数据类型为自动 编号,设为主键;
time字段数据类型为文本,用于保 存获取数据时的时间;
data字段数据类型为长整 形,用于保存接收到的数据. 2)创建数据源 在控制面板中,打开ODBC数据源,选择用户 DSN选项后单击 添加 按钮,从列表中选取 Microsoft Access Driver驱动程序,完成ODBC驱动程 序的安装,再单击 完成 选项,输入数据源名biao, 配置好数据源. 3)添加对ODBC数据库的支持 在项目stdafx.h文件中添加#include,完成ODBC类的加入. 4)添加数据库操作成员 在主对话框中加入CDatabase类成员函数m― database,CRecordSet成员函数m―recor........