Example #1
0
void TIM2_IRQHandler(void)
{

	static unsigned char on = 1;
	if(TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET)
	{
		TIM_ClearITPendingBit(TIM2 , TIM_FLAG_Update);
		on = !on;
		Led_OnOff(on);	
	}
}
Example #2
0
uint8 read_card_loop()
{	
	uint8 ret;
	bit flag1;
	uint16 tick;
	cls();
	Display(0,0,g_z18pos.welcome_msg,0);
	tick = 0;
	g_lcd_flag = 0;
	flag1 = 0;
	if(z18pos_check_coll_interval())
		return KNG_POS_EXPIRED_COLL;
	Led_OnOff(1,0);
	while(1)
	{
		clr_dog();
		ret = GetKeyVal(1);
		if(ret != 0xFF)
			Lcd_onoff(1);
		if(ret == KEY_ESC)
			break;
		ret = mif_request(0);
		if(flag1)
		{
			cls();
			Display(0,0,g_z18pos.welcome_msg,0);
			flag1 = 0;
		}

		if(ret == Z18_FAILED)
		{
            z18pos_check_consume();
            kng_sleep(1);
			tick+=3;
			if(tick >= 60)
			{
				tick = 0;
				cls();
				Display(0,0,g_z18pos.welcome_msg,0);
				//Led_OnOff(1,1);
				Lcd_onoff(0);
				g_lcd_flag = 0;
                InitRtcTime();
	            ReadRtcTime(g_z18pos.curr_time);
			}
			if(z18pos_check_coll_interval())
			{
				KNG_AUDIO(AU_NEED_COL,Z18_AUDIO_DELAY);
				print_error(KNG_POS_EXPIRED_COLL,NULL);
				return KNG_POS_EXPIRED_COLL;
			}
		}
		else
		{
            InitRtcTime();
	        ReadRtcTime(g_z18pos.curr_time);
			memset(&g_mycard,0,sizeof g_mycard);
			g_mycard.last_login_sect = 0xFF;
			tick = 0;
			// 寻卡成功
			ret = consume_card();
			if(ret>0)
			{
				debug_string("consume [%d]\n",(uint16)ret);
			}
			switch(ret)
			{
			case KNG_POS_PARAM_ERROR:
				print_error(ret,"请联系管理员");
				break;
			case KNG_POS_HARDWARE_ERROR:
				print_error(ret,"请检查POS机");
				break;
			case KNG_POS_NO_RIGHT:
				print_error(ret,NULL);
				break;
			case  KNG_POS_NOT_SUPP_CARDTYPE:
				print_error(ret,NULL);
				break;
			case KNG_POS_SUCCESS:
				break;
			case KNG_POS_UNEXPECT_CARD:
				break;
            case KNG_POS_REC_FULL:
                KNG_AUDIO(AU_NEED_COL,Z18_AUDIO_DELAY);
                print_error(ret,"请采集");
                break;
			default:
				break;
			}
			flag1 = 1;
		}
	}
	return 0;
}