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

📄 1.c

📁 读卡编程程序
💻 C
字号:
#define	test_card_file	"C:\\TEMP\\TESTCARD.DAT"

/* Function: reader_main - entrance for READER task */
void reader_main(UNSIGNED argc, VOID *argv)
{
	int len;
	_UC tempstr[259];
	char Tcode = 0;
	int	breakflag = 0;
	int breakflag0 =0;
	int breakflag1 =0;
	int i;
	int	fd;
	char * testcontent;
	MyTIME	curtime;
	if(NU_Become_File_User() < 0)
	{
		return;
	}	
	 while((breakflag0 + breakflag1 < 2))
	{
		tempstr[0] = 0x11;
		tempstr[1] = 0xee;
		tempstr[2] = 0x00;
		 len =  readerWrite(Tcode, tempstr, 3 );
		 if(len<0)
		 {
//	       	len =  readerWrite(Tcode, tempstr, 3 );
//		 	if(len<0)
		 		breakflag0++;
				continue;
		 }
		 else
		 	breakflag0 =0;
		if(breakflag0>=2)
			break;
		
		 NU_Sleep(200);
		 memset(tempstr, 0, 259);
			 
		len = readerRead(0,tempstr);
		 if(len<=0)
		 {
//		  len =  readerWrite(Tcode, tempstr, 3 );
//		 	if(len=<0)
		 		breakflag1++;
		 }
		 else if((tempstr[0]==0x00  && tempstr[1]==0xff  && tempstr[2]==0x01) || (tempstr[0]==0x01  && tempstr[1]==0xfe  && tempstr[2]==0x01))
		 	breakflag1 =0;
		else
		 	breakflag1 ++;
		if(breakflag1>=2)
			break;
			
	}
	
 	breakflag =0;	
	if((fd = NU_Open(test_card_file, PO_RDWR|PO_NOSHAREANY |PO_BINARY|PO_CREAT, PS_IWRITE))<0)
	{
		return;
	}

	NU_Seek(fd, 0, PSEEK_END);
	testcontent = NU_malloc(50);
	memset(testcontent, 0, 50);
	if(breakflag0 >= 1)
	{
		memcpy(testcontent, "flag = breakflag0", 17);  
	}
	else
	{
		memcpy(testcontent, "flag = breakflag1", 17);
	}	
	NU_Write(fd, testcontent, 17);
	GetCurrentTime(&curtime);
	sprintf(testcontent, "----Time: %d-%d-%d %d:%d:%d----",curtime.Year,curtime.Month,curtime.Day,curtime.Hour,curtime.Minute,curtime.Second);
	NU_Write(fd, testcontent, strlen(testcontent));
	NU_Close(fd);
	i =0;
	while(!breakflag)
	{			
		for(i =0;i<3;i++)
		{
			tempstr[0] = 0x11;
			tempstr[1] = 0xee;
			tempstr[2] = 0x00;

			 len =  readerWrite(Tcode, (_UC *)tempstr, 3 );
			 if(len<0)
			 {
//		       	len =  readerWrite(Tcode, tempstr, 3 );
//			 	if(len<0)
			 		breakflag =0;
			 }
			 NU_Sleep(200);
			memset(tempstr, 0, 259);
			len = readerRead(0,(_UC *)tempstr);
			 if(len<=0)
			 {
//			      	len =  readerWrite(Tcode, tempstr, 3 );
//			 	if(len<0)
			 		breakflag =0;
			 }
			 else if((tempstr[0]==0x00  && tempstr[1]==0xff  && tempstr[2]==0x01) || (tempstr[0]==0x01  && tempstr[1]==0xfe  && tempstr[2]==0x01))
			 	breakflag =0;
			else
			 	breakflag =0;
				
		}
	}	
}

⌨️ 快捷键说明

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