Esempio n. 1
0
/*------------------------------------------------------------
 * Function Name  : BootLink
 * Description    : 上电后联机
 * Input          : None
 * Output         : None
 * Return         : None
 *------------------------------------------------------------*/
void BootLink( void )
{
	uint8_t process = 0;
	uint32_t cnt = 0;
	const uint8_t FONT_SIZE = 16;
	const uint16_t draw_process_x = 360;
	const uint16_t draw_process_y = 350;											
	
	//初始化警告
	InitErr(&GeneralWarning);
	
	link_init();

	lcd_show_image(303,80,LOGO_PIC);	//加载鑫高LOGO
	
	lcd_show_image(draw_process_x-1,draw_process_y-1,PROCESS_PIC);
	
	SetGeneralTimeOut(0);
	
	while ( 1 )
	{
		link_cycle(&process);

		if (GetGeneralTimeOut() == TIMEOUT)		
		{
			SetGeneralTimeOut(10);
			cnt++;
			
			DrawProcess(FONT_SIZE,process,draw_process_x,draw_process_y);
		}
		
		LoadStartMachineWords(cnt);

		if (LINK_SUCCESS == GetLinkStatus())	   //联机成功
		{
			SetLinkStatus(LINK_IDLE);	
			
 			LssuedProtectBit();		//设置系统保护位 			
			PCM_GeneralWarningHandlerProcess(BLACK);				
			break;	
		}

		if (cnt > MIN_CNT_LINK_WAIT)					  //联机时,收到数据等待时间
		{
			if ( process )
			{
				if (cnt > MAX_CNT_LINK_WAIT)
				{
					SetLinkStatus(LINK_UNLINK);	
					break;
				}
			}
			else
			{
				SetLinkStatus(LINK_UNLINK);			
				break;
			}													
		}
	}	
}
Esempio n. 2
0
void SetLinkStatusEntry(IN PRTMP_ADAPTER pAd)
{	
	SetLinkStatus(pAd);	
}	// @ 0x1025