亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.c

?? 基于ARM的觸摸屏幕的驅動wangqu 一定能用
?? C
字號:

#include	"../ucos-ii/includes.h"               /* uC/OS interface */
#include "../common/msg.h"

#include "../target/option.h"
#include "../target/2410lib.h"

#include "../drv/driver.h"

#include"Keyb_ps2.c"

//task stack size
#ifdef SEMIHOSTED
	#define	TASK_STACK_SIZE	(64+SEMIHOSTED_STACK_NEEDS)
#else
	#define		TASK_STACK_SIZE	10*1024
#endif


//LCD task QUEUE
OS_EVENT *pLcdTask_MsgQueue=0;
#define LCDTASK_MSG_QUEUE_SIZE (256*4*5)
void	 *paLCD_MsgQueueTbl[LCDTASK_MSG_QUEUE_SIZE];



OS_STK Uart_Stack[TASK_STACK_SIZE];
extern void Uart_Task(void *Id);
#define UART_PRIO 18
OS_EVENT 	*pUart_MsgQueue=0;
#define Uart_MSG_QUEUE_SIZE (256 )
void 	*paUart_MsgQueueTbl[Uart_MSG_QUEUE_SIZE];


//Main Task
OS_STK Main_Stack[TASK_STACK_SIZE]= {0, };
extern void Main_Task(void *Id);
#define Main_PRIO       8


//Lcd Task
OS_STK LcdTask_Stack[TASK_STACK_SIZE]= {0, };
extern void Lcd_Task(void *Id);
#define LcdTask_PRIO       19



//Task1
OS_STK Task1_Stack[TASK_STACK_SIZE]= {0, };
extern void Task1_Task(void *Id);
#define Task1_PRIO       20

//Task2
OS_STK Task2_Stack[TASK_STACK_SIZE]= {0, };
extern void Task2_Task(void *Id);
#define Task2_PRIO       21

//Task3
OS_STK Task3_Stack[TASK_STACK_SIZE]= {0, };
extern void Task3_Task(void *Id);
#define Task3_PRIO       22
//Task definition
//Can task

extern void SM_Init(void);

void Task1_Task(void *Id)
{
	int i;
	while(1)
	{
		i++;
		OSTimeDly(10);
	}
}
void Task2_Task(void *Id)
{
	int i;
	while(1)
	{
		i++;
		OSTimeDly(20);
	}
}
void Task3_Task(void *Id)
{
	int i;
	while(1)
	{
		i++;
		OSTimeDly(30);
	}
}

static INT32U ulRectWidth =18*8; 
static INT32U ulRectHeight =16;
void Lcd_DispTouchPos(INT32U x, INT32U y)
{
	static INT32U ulPrevX = 0;
	static INT32U ulPrevY = 0;
	static INT8U  first=1;
	INT32U ulX,ulY,ulWidth,ulHeight;
	INT8U ch;
	if(first!=1)
	Lcd_FillRect(ulPrevX,ulPrevY,ulPrevX+ulRectWidth,ulPrevY+ulRectHeight,BLUE);
	else
		first=0;
	ulX = x;
	ulY = y;
 	if( ulX+ulRectWidth >= LCD_XSIZE_TFT)
		ulX = ulX - ulRectWidth;
	else
		ulX = ulX;

	if( ulY + ulRectHeight >= LCD_YSIZE_TFT )
		ulY = ulY - ulRectHeight;
	else
		ulY = ulY;
	
	Lcd_Printf(ulX,ulY,WHITE,"(X = %3d, Y = %3d)",x,y);	
	ulPrevX = ulX;
	ulPrevY = ulY;
}
void Lcd_Task(void *Id)
{
	INT8U err;
	void *pMsg;
	PSTRU_TOUCH_MSG pStru_TouchMsg; 
	INT32U x,y;
	INT8U ch;
	Lcd_Clr(BLUE);
	//ShowCanBanner();
	//ShowTitle();
	while(1)
	{
		pMsg = (void *)OSQPend(pLcdTask_MsgQueue,0,&err);
		pStru_TouchMsg = (PSTRU_TOUCH_MSG)pMsg;
		if( MSG_TYPE_TOUCH == pStru_TouchMsg->ulType )
		{
			
			x = pStru_TouchMsg->ulPara1;
			y = pStru_TouchMsg->ulPara2;
			
				Lcd_DispTouchPos(x,y);
		}
		
		if( MSG_TYPE_REC_CHAR == pStru_TouchMsg->ulType )
		{
			ch=pStru_TouchMsg->ulPara1;
			ShowChar(ch);
		}
	}
}
STRU_TOUCH_MSG  StruMsg_Uart;
void Uart_Task(void *Id)
{
//	static INT32U ulTimes = 0;
	INT8U err;
	void *pMsg;
	int ix=0;
	int presscode;
	char c;
	STRU_UART_MSG* pUartMsg;
	int nindex=0;
	int twice=0;
    while(1)

	{
		pMsg = OSQPend(pUart_MsgQueue, 0, &err);
		pUartMsg=(STRU_UART_MSG*)pMsg;
		presscode=pUartMsg->ulPara1;

		c=handle_rawcode(presscode);
		if(c==K_NONE)
			continue;
		if(twice==0)
			{
				twice++;
				continue;
			}
		c=ps2kbd_sysrq_xlate[c];
		if(c=='\r')
			c='\n';
		AddToPs2Buffer(c);
	/*	Uart_Printf("%c",c);
		Uart_Printf("\n");
		*/
		twice=0;

	
		StruMsg_Uart.ulType=MSG_TYPE_REC_CHAR;
		StruMsg_Uart.ulPara1=c;
		OSQPost(pLcdTask_MsgQueue, (void*)(&StruMsg_Uart));
    	}

}

void Main_Task(void *Id)
{
	//OSStatInit();
	/* Start the S3C44B0X BSP Running */
	ARMTargetStart();

	OSTaskCreate(Task1_Task, (void *)0, (OS_STK *)&Task1_Stack[TASK_STACK_SIZE-1],  Task1_PRIO);
  	OSTaskCreate(Task2_Task, (void *)0, (OS_STK *)&Task2_Stack[TASK_STACK_SIZE-1],  Task2_PRIO);
  	OSTaskCreate(Task3_Task, (void *)0, (OS_STK *)&Task3_Stack[TASK_STACK_SIZE-1],  Task3_PRIO);

	while (1)
	{
		OSTimeDly(40);
	}
}	


//===================================================================
void Main(void)
{  
    Led_Display(15);
    
//    MMU_Init();
   
#if ADS10  
    __rt_lib_init();                //for ADS 1.x
#endif

    ChangeClockDivider(1,1);          // 1:2:4
    ChangeMPllValue(0xa1,0x3,0x1);    // FCLK=202.8MHz 
    
    ARMTargetInit();
	
    // Init uCOS-II
    OSInit();
    
   
    pUart_MsgQueue = OSQCreate(&paUart_MsgQueueTbl[0], Uart_MSG_QUEUE_SIZE);

    pLcdTask_MsgQueue = OSQCreate(&paLCD_MsgQueueTbl[0],LCDTASK_MSG_QUEUE_SIZE);
    	
   


    //Create the Main Task
  //  OSTaskCreate(Main_Task, (void *)0, (OS_STK *)&Main_Stack[TASK_STACK_SIZE-1],  Main_PRIO);
	  	//Create the Task
	
	
	OSTaskCreate(Uart_Task, (void *)0, (OS_STK *)&Uart_Stack[TASK_STACK_SIZE-1],  	UART_PRIO);	

	OSTaskCreate(Lcd_Task,(void *)0, (OS_STK *)&LcdTask_Stack[TASK_STACK_SIZE-1], LcdTask_PRIO);


	
	
    // Start uCOS-II 
    OSStart();


}

void PrintfBanner()
{
	Uart_Printf("(1)Start	CAN1	Send\n");
	Uart_Printf("(2)Stop	CAN1	Send\n");
	Uart_Printf("(3)Start	CAN2	Send\n");
	Uart_Printf("(4)Stop	CAN2	Send\n");
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久亚洲精品国产精品紫薇| 99国产精品久久久久久久久久| 中文字幕精品在线不卡| 日韩欧美高清dvd碟片| 欧美一区二区三区白人| 欧美日韩成人一区二区| 欧美精品一二三四| 欧美日韩成人一区| 日韩色在线观看| 26uuu亚洲综合色| 国产日韩精品久久久| 日本一区二区成人在线| 亚洲天堂2016| 久久色在线视频| 国产精品久久一卡二卡| 一级女性全黄久久生活片免费| 亚洲中国最大av网站| 日韩制服丝袜av| 美女视频黄频大全不卡视频在线播放| 久久国产精品第一页| 国产成人精品三级麻豆| 懂色av中文字幕一区二区三区| 91丨九色丨黑人外教| 91丨porny丨国产入口| 欧美精品自拍偷拍动漫精品| 久久亚洲综合色| 亚洲欧美韩国综合色| 亚洲免费av高清| 蜜臀av国产精品久久久久| 国产成人精品1024| 欧美日韩国产在线播放网站| 欧美精品一区二区三区在线| 亚洲免费av在线| 激情综合五月婷婷| 日本韩国欧美一区二区三区| 欧美一区二区三区精品| 中文字幕在线免费不卡| 蜜臀久久99精品久久久画质超高清| 国产成人精品影视| 欧美丰满少妇xxxxx高潮对白 | 欧美色涩在线第一页| 日韩一区二区三区高清免费看看| 欧美激情综合在线| 日韩激情在线观看| 91蜜桃网址入口| 久久综合九色综合97_久久久 | 这里只有精品视频在线观看| 国产精品网站一区| 另类调教123区 | 美女网站视频久久| 色综合久久久网| 国产三级一区二区三区| 日韩专区中文字幕一区二区| 色视频欧美一区二区三区| 久久久久久久久久久久电影| 视频一区欧美精品| 91亚洲永久精品| 国产欧美日本一区视频| 美女视频黄 久久| 91麻豆精品国产91| 亚洲第一二三四区| 一本久久a久久免费精品不卡| 国产午夜精品一区二区| 久久av老司机精品网站导航| 在线不卡欧美精品一区二区三区| 亚洲精品免费电影| 91在线视频播放地址| 中文在线一区二区| 丰满少妇久久久久久久| 久久婷婷色综合| 国产精选一区二区三区| 久久影院视频免费| 国产毛片精品国产一区二区三区| 日韩一级完整毛片| 美国毛片一区二区三区| 日韩欧美色综合网站| 免费一区二区视频| 日韩欧美国产系列| 激情久久五月天| 久久久久国产成人精品亚洲午夜| 国产一区在线看| 久久精品欧美一区二区三区不卡 | av一区二区三区在线| 亚洲国产岛国毛片在线| 成人av网站免费观看| 中文字幕日韩一区二区| 色婷婷av一区二区三区gif| 亚洲欧美日韩国产手机在线| 欧美视频一区二区| 天堂蜜桃91精品| 欧美成人一区二区| 国产v日产∨综合v精品视频| 亚洲国产精品国自产拍av| 99麻豆久久久国产精品免费| 亚洲精品福利视频网站| 制服丝袜中文字幕亚洲| 国产一区二区三区高清播放| 国产精品灌醉下药二区| 欧美三级在线视频| 久久国产精品第一页| 成人免费在线视频观看| 在线视频中文字幕一区二区| 免费成人美女在线观看| 国产女同互慰高潮91漫画| 91久久精品一区二区二区| 免费日本视频一区| 欧美国产日韩a欧美在线观看| 色婷婷综合五月| 捆绑紧缚一区二区三区视频| 国产精品拍天天在线| 8v天堂国产在线一区二区| 国产白丝网站精品污在线入口| 亚洲精品成人a在线观看| 欧美一区二区三区喷汁尤物| 91尤物视频在线观看| 韩国三级中文字幕hd久久精品| 中文字幕中文字幕一区| 日韩女优视频免费观看| 色综合色狠狠天天综合色| 久久se精品一区二区| 亚洲一区二区综合| 国产精品无遮挡| 欧美videos大乳护士334| 欧美午夜片在线观看| 国产.精品.日韩.另类.中文.在线.播放 | 欧美人动与zoxxxx乱| 高清久久久久久| 久久99精品国产91久久来源| 亚洲曰韩产成在线| 中文字幕一区日韩精品欧美| 久久久久国产精品麻豆| 91精品国产综合久久国产大片| 91免费视频网址| 成人h版在线观看| 国产在线观看免费一区| 日本中文字幕不卡| 亚洲一级二级三级| 亚洲色图一区二区| 国产精品国产三级国产普通话99 | 久久激五月天综合精品| 亚洲妇熟xx妇色黄| 伊人开心综合网| 中文字幕一区在线| 1024亚洲合集| 国产精品国产三级国产aⅴ中文 | 91精品久久久久久久久99蜜臂| 色吊一区二区三区| 99久久久无码国产精品| 成人av免费网站| 不卡一区二区三区四区| 成人精品视频网站| 成人免费毛片片v| 成人国产免费视频| av资源网一区| 99视频有精品| 91色九色蝌蚪| 色av一区二区| 欧美老女人第四色| 91精品啪在线观看国产60岁| 91精品国产麻豆| 2022国产精品视频| 欧美国产一区二区| 亚洲免费av网站| 午夜国产不卡在线观看视频| 日韩精品一级中文字幕精品视频免费观看 | 麻豆精品在线播放| 国产伦理精品不卡| www.性欧美| 欧美三电影在线| 91精品国产综合久久福利| 精品国产一区a| 中文字幕二三区不卡| 夜夜夜精品看看| 美女精品一区二区| jlzzjlzz亚洲女人18| 欧美午夜理伦三级在线观看| 欧美一区二区高清| 国产欧美一区二区三区在线老狼| 亚洲天堂2016| 久久精品免费观看| 91在线视频观看| 日韩一区二区三区电影在线观看| 国产视频一区二区在线观看| 亚洲嫩草精品久久| 蜜桃视频在线观看一区二区| 国产91在线看| 91精品国产黑色紧身裤美女| 国产香蕉久久精品综合网| 亚洲一区二区三区四区五区黄| 欧美bbbbb| 色天使色偷偷av一区二区| 精品欧美一区二区三区精品久久| 中文字幕一区二区视频| 日本特黄久久久高潮| 91在线丨porny丨国产| 欧美精品一区男女天堂| 午夜精品一区在线观看| 丁香六月久久综合狠狠色| 欧美精品免费视频| 亚洲欧美日韩电影|