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

📄 port.c

📁 ucos_ii在mini2440上的移植KEIL编译环境
💻 C
📖 第 1 页 / 共 2 页
字号:
	//LCD_DrawText(40,0,(char *)(passdata),40,RGB(255,255,255),RGB(0,0,0));
		
	if(flag != -1)
	{
		passdata_len=strlen((const char *)passdata);
		for(i=0;i<passdata_len;i++)
		{
			if(strncmp((const char *)(passdata+i),"<",1)==0 || strncmp((const char *)(passdata+i),">",1)==0)			{					if(strncmp((const char *)(passdata+i),"<",1)==0)					{						is_start=1;						}
					else
					{
						//LCD_DrawText(40,0,(char *)(temp_buffer),40,RGB(255,255,255),RGB(0,0,0));
						add_select_data((char *)(temp_buffer));//加入到待解析数组
						memset((char *)temp_buffer,0,sizeof(temp_buffer));
						is_start=0;	
					}
			}
			else
			{
				if(is_start == 1)
				{
					strncat((char *)temp_buffer,(char *)(passdata+i),1);	
				}
			}			
		}	
	}
	event_start(event_switch_data);

	return 1;	
}
*/
/**
int	switch_data()
{
	int n;		 
	int	i;
	int flag;
	int flag2;
	int get_file_flag;
	char cdata[100] = {0};
	TIME_T pstTime;
	char chtime[100] = {0};
	char rtc_data[60] = {0};
	char rtc_time[60] = {0};
	char mem_addr[60] = {0};
	char read_length[60] = {0};
	//char ch[100] = {0};
	long long_addr = 0;
	char read_mem_buf[10240] = {0};
	char write_mem_buf[10240] = {0};
	unsigned long * plong_addr;

	get_file_flag = 0;
	for(n = 0; n < 50;n++ )
	{
		if(my_select_data[n].is_create == 1 )
		{
			strcpy(cdata,my_select_data[n].data);
			if(strncmp(cdata,"SendFile",8) == 0 || strncmp(cdata,"sendfile",8) ==0 || strncmp(cdata,"SENDFILE",8) ==0)
			{	
				get_file_flag = 1;
				LCD_DrawText(111,0,cdata,strlen(cdata),RGB(14,235,157),RGB(0,0,0));
				
				memset(file_name,0,sizeof(file_name));
				flag = 0;
				for(i = 8; i < strlen(cdata); i++)
				{
					if(cdata[i] == ',')
					{
						flag = 1;
						continue;
					}
					if(flag == 1 && cdata[i] != ' ')
					{
						strncat(file_name,cdata+i,1);
					}	
				}
				if(strlen(file_name) != 0)
				{
					UART_SendBuff(0,"\r\nREADY\r\n",9);
					//启动2个定时器 改变标志位
					isfile = 1;
					TIMER_TS_Start(timer_id_check_getfile);
					TIMER_TS_Start(timer_id_getfile);
				}
				else
				{
					UART_SendBuff(0,"\r\nERROR\r\n",9);
				}
			}
			else if(strcmp(cdata,"Reset") == 0 || strcmp(cdata,"reset") == 0 || strcmp(cdata,"RESET") == 0)
			{									  
				LCD_DrawText(111,0,cdata,strlen(cdata),RGB(14,235,157),RGB(0,0,0));
				
				LCD_ClearScreen(RGB(131,223,231));//清屏
				LCD_DrawText(110,100,"系统3秒后重启",13,RGB(131,223,231),RGB(0,0,0));
				UART_SendBuff(0,"\r\nOK\r\n",6);
				IRQ_SetMask(INT_TYPE_INT_ADC,1); //关闭触摸屏中断
				IRQ_SetMask(INT_TYPE_INT_TC,1);
				delay(3000);	
				WTCON = 0X8021;
				WTDAT = 0X8000;			
			}
			else if(strcmp(cdata,"GetTime") == 0 || strcmp(cdata,"gettime") == 0 || strcmp(cdata,"GETTIME") == 0)
			{		
				LCD_DrawText(111,0,cdata,strlen(cdata),RGB(14,235,157),RGB(0,0,0));
			
				memset(&pstTime,0,sizeof(pstTime));
				RTC_Get(&pstTime);
				sprintf(chtime,"%d-%02d-%02d %02d:%02d:%02d",pstTime.nYear,pstTime.nMon,pstTime.nDay,pstTime.nHour,pstTime.nMin,pstTime.nSec);
				UART_SendBuff(0,(unsigned char *)chtime,strlen(chtime));
				UART_SendBuff(0,"\r\nOK\r\n",6);	
			}
			else if(strncmp(cdata,"SetTime",7) == 0 || strncmp(cdata,"settime",7) == 0 || strncmp(cdata,"SETTIME",7) == 0)
			{
				LCD_DrawText(111,0,cdata,strlen(cdata),RGB(14,235,157),RGB(0,0,0));				

				memset(rtc_data,0,sizeof(rtc_data));
				memset(rtc_time,0,sizeof(rtc_time));
				flag = 0;
				for(i = 7; i < strlen(cdata); i++)
				{
					if(flag == 1 && cdata[i] == ',')
					{
						i--;
						break;	
					}
					if(cdata[i] == ',')
					{
						flag = 1;
						i++;
					}
					if(flag == 1 && cdata[i] != ' ')
					{
						strncat(rtc_data,cdata+i,1);
					}	
				}
				flag = 0;
				for(;i < strlen(cdata); i++)
				{
					if(cdata[i] == ',')
					{
						flag = 1;
						continue;
					}
					if(flag == 1 && cdata[i] != ' ')
					{
						strncat(rtc_time,cdata+i,1);
					}
				}
				memset(&pstTime,0,sizeof(pstTime));
				flag = 0;
				if(VALIDATION_isDate(rtc_data,&pstTime) == 1 && strlen(rtc_data) != 0)
				{
					//LCD_DrawText(20,0,rtc_data,strlen(rtc_data),RGB(0,255,0),RGB(0,0,0));	
					flag ++ ;
				}
				if(VALIDATION_isTime(rtc_time,&pstTime) == 1 && strlen(rtc_time) != 0)
				{
					//LCD_DrawText(40,0,rtc_time,strlen(rtc_time),RGB(0,255,0),RGB(0,0,0));	
					flag ++;
				}
				if(flag == 2)
				{	
					RTC_Set(&pstTime);
					UART_SendBuff(0,"\r\nOK\r\n",6);
				}
				else
				{
					UART_SendBuff(0,"\r\nERROR\r\n",9);	
				}
			}
			else if(strncmp(cdata,"ReadMem",7) == 0 || strncmp(cdata,"readmem",7) == 0 || strncmp(cdata,"READMEM",7) == 0)
			{
				LCD_DrawText(111,0,cdata,strlen(cdata),RGB(14,235,157),RGB(0,0,0));
				
				memset(mem_addr,0,sizeof(mem_addr));
				memset(read_length,0,sizeof(read_length));
				flag = 0;
				for(i = 7; i < strlen(cdata); i++)
				{
					if(flag == 1 && cdata[i] == ',')
					{
						i--;
						break;	
					}
					if(cdata[i] == ',')
					{
						flag = 1;
						i++;
					}
					if(flag == 1 && cdata[i] != ' ')
					{
						strncat(mem_addr,cdata+i,1);
					}	
				}
				flag = 0;
				for(;i < strlen(cdata); i++)
				{
					if(cdata[i] == ',')
					{
						flag = 1;
						continue;
					}
					if(flag == 1 && cdata[i] != ' ')
					{
						strncat(read_length,cdata+i,1);
					}
				}
				//LCD_DrawText(0,0,mem_addr,strlen(mem_addr),RGB(0,255,0),RGB(0,0,0));
				//LCD_DrawText(20,0,read_length,strlen(read_length),RGB(0,255,0),RGB(0,0,0));	
				flag = 0;
				if(select_0x(mem_addr) == 1 && strlen(mem_addr) != 0)
				{
					//LCD_DrawText(40,0,mem_addr,strlen(mem_addr),RGB(0,255,0),RGB(0,0,0));
					flag++;
				}
				if(select_num(read_length) == 1 && strlen(read_length) != 0)
				{	
					//LCD_DrawText(60,0,read_length,strlen(read_length),RGB(0,255,0),RGB(0,0,0));
					flag++;
				}
				if(flag == 2)
				{	
					long_addr = UART_HextoDec(mem_addr);
					 
					if(long_addr < 0x32000004 || long_addr > 0x32ffffff || long_addr + my_atoi(read_length) > 0x32ffffff)
					{
						UART_SendBuff(0,"\r\nERROR\r\n",9);		
					}
					else
					{
						memset(read_mem_buf,0,sizeof(read_mem_buf));

						plong_addr = (unsigned long * )long_addr;
						memcpy(read_mem_buf,plong_addr,my_atoi(read_length));
						strto0x(long_addr,read_mem_buf,my_atoi(read_length));			
						UART_SendBuff(0,"\r\nOK\r\n",6);
					}
				}
				else
				{
					UART_SendBuff(0,"\r\nERROR\r\n",9);	
				}
			}
			else if(strncmp(cdata,"WriteMem",8) == 0 || strncmp(cdata,"writemem",8) == 0 || strncmp(cdata,"WRITEMEM",8) == 0)
			{
				LCD_DrawText(111,0,cdata,strlen(cdata),RGB(14,235,157),RGB(0,0,0));
				
				memset(mem_addr,0,sizeof(mem_addr));
				memset(write_mem_buf,0,sizeof(write_mem_buf));
				flag = 0;
				flag2 = 0;
				for(i = 8; i < strlen(cdata); i++)
				{
					if(flag == 1 && cdata[i] == ',')
					{
						i--;
						break;	
					}
					if(cdata[i] == ',')
					{
						flag = 1;
						i++;
					}
					if(flag == 1 && cdata[i] != ' ')
					{
						strncat(mem_addr,cdata+i,1);
					}	
				}
				flag = 0;
				for(;i < strlen(cdata); i++)
				{
					if(cdata[i] == ',')
					{
						flag = 1;
						continue;
					}
					if(cdata[i] == '"')
					{
						flag2 = 1;
						continue;
					}
					if(flag == 1 && flag2 == 1)
					{
						strncat(write_mem_buf,cdata+i,1);
					}
				}
				//LCD_DrawText(0,0,mem_addr,strlen(mem_addr),RGB(0,255,0),RGB(0,0,0));
				//LCD_DrawText(20,0,write_mem_buf,strlen(write_mem_buf),RGB(0,255,0),RGB(0,0,0));	
				flag = 0;
				if(select_0x(mem_addr) == 1 && strlen(mem_addr) != 0 && strlen(write_mem_buf) != 0)
				{
					//LCD_DrawText(40,0,mem_addr,strlen(mem_addr),RGB(0,255,0),RGB(0,0,0));
					flag++;
				}
				if(flag == 1)
				{	
					long_addr = UART_HextoDec(mem_addr);
					 
					if(long_addr < 0x32000004 || long_addr > 0x32ffffff || long_addr + strlen(write_mem_buf) > 0x32ffffff)
					{
						UART_SendBuff(0,"\r\nERROR\r\n",9);		
					}
					else
					{
						plong_addr = (unsigned long * )long_addr;
						memcpy(plong_addr,write_mem_buf,strlen(write_mem_buf));
						UART_SendBuff(0,"\r\nOK\r\n",6);
					}
					
				}
				else
				{
					UART_SendBuff(0,"\r\nERROR\r\n",9);	
				}
			}
			else
			{
				UART_SendBuff(0,"\r\nERROR\r\n",9);	
			}
			my_select_data[n].is_create = 0;	
		}
	}

	delay(300);
	if(get_file_flag == 0)
	{
		LCD_switch_Screen(0,111,19,320,RGB(14,235,157));//串口信息显示栏
		LCD_DrawText(215,1,"空闲    ",8,RGB(131,223,231),RGB(0,0,0));
	}
	is_reshow_pit = 1;//开启睡眠
	TIMER_TS_ResetTimeout(timer_id_sleep,10000);
	TIMER_TS_Start(timer_id_sleep);
	return 1;		

}


*/

⌨️ 快捷键说明

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