⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 编辑1.bak

📁 P115 IC卡手持POS是天石科技32位IC卡POS系列产品之一
💻 BAK
字号:
// -------------------------------------------
// 串口读取数据
// -------------------------------------------

void ReadFromCom()
{
	int j;
	char ch;
	unsigned long addr;
	char buf[256];
	
	int hfile;
	int werr;
	int realwritesize;
	int error;
	
	if (ShowMessage("串口读取数据", "请连接设备的串口", MB_CANCEL | MB_OK, true) == MR_CANCEL)
		return;
		
	clrscr();
	hCom = open(COM1, BAUD_9600);
	if(hCom == INVALID_DEV_HANDLE)
	{
		ShowMessage("打开串口", "失败!", MB_CANCEL | MB_OK, true);
	}

	while (true){
		for(j=0;j<18;j++)
		blkin[0] = 0;
		error = RxTx(READ,NULL,NULL,0);
		
		if(error == ERR_NONE)
		{
			
			memcpy(buf,&blkin[2],13);
			
			addr = (unsigned long)((buf[0]<<24)|(buf[1]<<16)|(buf[2]<<8|(buf[3])));

			if(RxOkAck(addr) == ERR_OTHER)
			{	//发送确认
				ShowMessage("发送确认", "失败",MB_OK | MB_CANCEL, true);
				break;
			}		
			
			hfile = file_open("DAT",WRITE_ONLY);
			if(hfile<0)
			{
				if(ShowMessage("打开文件", "失败!", MB_OK, true)==MB_OK)
				break;
			}
			
			file_seek(hfile,0,SEEK_FILE_END);
			werr = file_write(hfile,buf,13,&realwritesize);
			if(werr == 0)
			{	
				file_close(hfile);
			//	ShowMessage("写入数据", "写入成功", MB_OK, true);
				continue;
			}
			else if(werr == NO_ENOUGH_MEMORY)
			{
				file_close(hfile);
				if(ShowMessage("写入数据", "空间不足",  MB_OK, true)==MB_OK)
				break;
			}
			else
			{
				file_close(hfile);
				if(ShowMessage("写入数据", "文件不可写",  MB_OK, true) ==MB_OK)
				break;
			}
			i++;
		}
		else if(error == DATA_OVER)
		{	
			clrscr();
			if(ShowMessage("串口读取数据", "结束!", MB_OK, true)==MB_OK)
			break;
			
		}
		else if(error == ERR_OTHER){
			clrscr();
			if(ShowMessage("串口读取数据", "失败", MB_OK, true)==MB_OK)
			break;
		}

	}
	close(hCom);

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -