示例#1
0
/**************************************************************************
功能:51单片机的串口输出ASCII码函数(接收端按字符形式接收则显示为HEX格式	)
 **************************************************************************/
void UART_Send_Hex(unsigned int hex)
{
	unsigned char temp[11];
	Hex_ASCII(hex,temp);
	UART_Send_Str(temp);
	UART_Send_Enter();          // 发送回车
}
示例#2
0
/**************************************************************************
功能:51单片机的串口发送数值
参数:dat:要发送的数值(长整数)
  注:函数中会将数值转为相应的字符串,发送出去。比如 4567 转为 "4567" 
 **************************************************************************/
void UART_Send_Num(unsigned long dat)
{
	unsigned char temp[11];		// 长整数最大值4294967295,转ASCII码后占用10字节
	    //	由于后面程序要使用strlen()库函数计算长度,需增加1个字节存放结束符0
	Long_Str(dat,temp);	  
	UART_Send_Str(temp);
	UART_Send_Enter();          // 发送回车 
}
示例#3
0
文件: GPS_Test.c 项目: AlexGora/cox
//*****************************************************************************
//
//! \brief GPS test execute main body.
//!
//! \return None.
//
//*****************************************************************************
static void GPSExecute(void)
{
    unsigned char error_num = 0;
    GPS_INFO GPS;
	
    rev_stop=0;
    while(1)
    {
        if(rev_stop)
        {
            UART_Send_Str(rev_buf);

            if(GPS_GPRMC(rev_buf, &GPS))
            {
                xGPIOSPinWrite(sD13, 1);
                UART_Put_Inf("Latitude: ", GPS.latitude);
                UART_Put_Inf("Longitude: ", GPS.longitude);
                UART_Put_Inf("Year: ", GPS.D.year);
                UART_Put_Inf("Month: ", GPS.D.month);
                UART_Put_Inf("Day: ", GPS.D.day);
                UART_Put_Inf("Hour: ", GPS.D.hour);
                UART_Put_Inf("minute: ", GPS.D.minute);
                UART_Put_Inf("South or North: ", GPS.NS);
                UART_Put_Inf("East or West: ", GPS.EW);
                rev_stop = 0;
                gps_flag = 0;
                error_num = 0;
            }
            else
            {
                UART_Send_Str("Analysis is invalid and reinitialize\n");
                error_num++;
                if (error_num >= 20)
                {
					          xGPIOSPinWrite(sD13, 0);
					          error_num = 20;
					          //GPS_Init();
                }
                rev_stop = 0;
                gps_flag = 0;
            }
        }
    }			
}
示例#4
0
//系统主函数
void main (void)
{
//	uint i;
	LED1=1;
	LED0=0;
	OEC=1;
	Exti_init();
	Time_init();	  //两个定时器初始化
	//TR0=0;
	UART_init();
	UART_Send_Str("知趣电子欢迎你!");
	while(1)
	{ 	
	
		if(irreceok)
    	{  
		    irreceok=0;	
			//P0=0X00;
			IR_pros();
			if(irprosok)
			{
				irprosok=0;
				P0=ircode[2];
			}
		}
		//if(open_close_flang)
	//	{
		///	open_close_flang=0;
			//TR0=1;
		//display_pic();
	//	}
		//else {
		//TR0=0;
		//}
		 display_hand();
		 //display_pic();
		 //display_figure();
		/*if(uart_flang)
		{
			//uart_flang=0;
			P0=0x00;
		//	if(pic_ch_flag)
		//	{
		//		pic_ch_flag=0;
			 TR1=1;   

		//	}
			
		}
		*/
	}
}
示例#5
0
/**************************************************************************
功能:51单片机的串口发送调试信息(字符串+数值)	  
参数:inf:指向提示信息字符串的指针
      dat:一个数值,前面的提示信息就是在说明这个数值的意义
 **************************************************************************/
void UART_Send_StrNum(char *inf,unsigned long dat)
{
	UART_Send_Str(inf);
	UART_Send_Num(dat);	
}