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

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

?? main.c

?? 用于三星S3C44BOX ARM7芯片的Demon板測試
?? C
字號:
/*********************************************************************************************
* File:	main.c
* Author:	embest
* Desc:	c main entry
* History:	
*********************************************************************************************/

/*--- include files ---*/
#include "44blib.h"
#include "44b.h"
#include "rtc.h"
char *date[8];// = {"","SUN","MON","TUE","WED","THU","FRI","SAT"};
extern STRU_BITMAP Stru_Bitmap_gbMouse;
char yn;
	
/*--- function declare ---*/
void Main(void);
void user_input_action(int value);
int User_Getch(void);
void FuncTest_view(int stdio);
void LCD_menu(void);
void LCD_view(INT16 col, INT16 row, INT8U color, INT8U * info);
void RTC_LCD(INT16 col, INT16 row, INT8U color);
void CLR_view();
void Key_map();

extern void (*run)(void);//=(void (*)(void))DOWNLOAD_ADDRESS;

INT8U * info[][2]={
        //" "," Embest S3C44B0X Evaluation Board(S3CEV40)",
		"-","      *====  Embest Info&Tech Co.,LTD. ====*",
		"-"," Please select test item:",
		"-"," 1: 8LED test  2: LCD test    3: Keyboard test",
		"-"," 4: Sound test 5: Timer test  6: Ethernet DHCP test",
		"-"," 7: Flash test 8: IIC test    9: Ethernet TFTP test",
		"-"," 0: TouchScreen test",
		"-"," >",
		"-","Note: Please connect UART0(115.2K,8,N,1) to PC COMx",
                0,0};
INT8U * Func_info[][2]={
        "0"," -- Touch Screen test... ",
        "1"," -- 8-segment LED test... ",
        "2"," -- LCD Screen usage test... ",
        "3"," -- User Keyboard (4x4) test... ",
        "4"," -- IIS function test... ",
        "5"," -- Timer function test... ",
        "6"," -- DHCP application test... ",
        "7"," -- Flash program test... ",
        "8"," -- IIC function test... ",
        "9"," -- TFTP translation test... ",
        "t"," -- RTC display... ",
        //"T"," -- Set date and time... ",
                0,0};

/*--- function code ---*/
/*********************************************************************************************
* name:		main
* func:		c code entry
* para:		none
* ret:		none
* modify:
* comment:		
*********************************************************************************************/
void Main(void)
{
    int RTC_OK,i=0;
    int  input_ch;
    
	vcol = 20;
	vrow = 220;
	pad = 10; // between of two character
	
    input_char='>';
    sys_init();        /* Initial 44B0X's Interrupt,Port and UART */
    _Link();           /* Print Misc info */
	
	/******************/
	/* user interface */
	/******************/
	Lcd_Init();		
	Lcd_Clr(); // clear screen 
	Lcd_Active_Clr();
	
	init_keyboard();
	for(;;)
	 {
		input_char = -1;
		/* printf interface */
		FuncTest_view(UART);
		LCD_menu();
		/* get user input */
		input_char = User_Getch();
		input_ch = input_char;
		if(!(input_char<'0'|input_char>'f'))
		 {
			if(input_char>='0'|input_char<='9') Uart_Printf("\r  > %s",&input_char);
			Lcd_DspAscII6x8(25,vrow-28,BLACK,&input_char); // 
			Lcd_DspAscII6x8(30,vrow-28,BLACK,Func_info[input_char-0x30][1]); // 
			Lcd_Dma_Trans();
		 }	
		
		input_char = input_ch;
		
		user_input_action(input_char);
		Delay(100);
	 }
}

/*********************************************************************************************
* name:		User_Getch
* func:		waitting for the test function item input
* para:		none
* ret:		none
* modify:
* comment:		
*********************************************************************************************/
char whichUart = 0;
int User_Getch(void)
{
    int i;
    char fg = 0;
    
    LED8ADDR = 0;
    
    if(whichUart==0)
    {	    
		while(!(rUTRSTAT0 & 0x1)) //Receive data read
		 {
		   if (fg)
		       { led1_off(); led2_on();}
		   else
		       { led1_on(); led2_off();}
		         
		   i++;		        
		   if (i > 30000)
		       { i = 0; fg = ~fg;}

		   if(input_char != -1) return input_char += 0x30; // read from 4x4 keyboard
		   
		   if(sec > 58) { RTC_LCD(200,228,BLACK); Lcd_Dma_Trans(); }

		   rINTMSK = ~(BIT_GLOBAL|BIT_EINT1);
		         
		 }
		return RdURXH0();
    }
    else
    {
		while(!(rUTRSTAT1 & 0x1)); //Receive data ready
		return	rURXH1;
    }
}

/*********************************************************************************************
* name:		FuncTest_view
* func:		display the test function interface to LCD or UARTx
* para:		none
* ret:		none
* modify:
* comment:		
*********************************************************************************************/
void FuncTest_view(int stdio)
{
	int i=0;

	if (stdio == LCD )
	 {
		while(1)
		 {  //display menu
			Lcd_DspAscII6x8(10,i*12+50,BLACK,info[i][1]);
			i++;
			if((int)(info[i][0]) == 0)	break;
		 }
	//void Lcd_Draw_Box(INT16 usLeft, INT16 usTop, INT16 usRight, INT16 usBottom, INT8U ucColor)
		vcol = 16;
		vrow = i*12+58;
		Lcd_Draw_Box(2,i*12+50,318,238);		
		 
	 }
	if (stdio == UART )
	 {
		/* printf interface */
		Uart_Printf("\n Embest S3C44B0X Evaluation Board(S3CEV40)\n");
		Uart_Printf("  *==================================*\n");
		Uart_Printf("  *=    Embest Info&Tech Co.,LTD.   =*\n");
		Uart_Printf("  *==================================*\n");
		Uart_Printf("  *==========  R&D CENTER  ==========*\n");
		Uart_Printf("  *=======  86-755-25631365  ========*\n");
		Uart_Printf("  *===== support@embedinfo.com ======*\n");
		Uart_Printf("  *===       Version 2.2          ===*\n");
		//RTC_OK = Test_Rtc_Alarm();
		//if(RTC_OK) Display_Rtc();
		Uart_Printf(" Please select test item:\n");
		Uart_Printf("  1: 8LED test\t 2: LCD test\t 3: Keyboard test\n");
		Uart_Printf("  4: Sound test\t 5: Timer test \t 6: Ethernet DHCP test\n");
		Uart_Printf("  7: Flash test\t 8: IIC test \t 9: Ethernet TFTP test\n");
		Uart_Printf("  0: TouchScreen test\n");
		Uart_Printf("  >");
	 }
}

/*********************************************************************************************
* name:		LCD_menu
* func:		display the test function interface to LCD
* para:		none
* ret:		none
* modify:
* comment:		
*********************************************************************************************/
void LCD_menu(void)
{
	Lcd_Clr(); // clear screen 
	Lcd_Active_Clr();
	Lcd_Draw_Box(4,4,318,48,BLACK-45);		
	Lcd_Draw_Box(6,6,316,46,BLACK-55);		
	Lcd_Draw_Box(8,8,314,44,BLACK-65);
	Lcd_DspAscII6x8(35,20,BLACK,"Embest S3C44B0X Evaluation Board (S3CEV40)");
		
	BitmapView(180,20,Stru_Bitmap_gbMouse);
	FuncTest_view(LCD);
	Key_map();
	RTC_LCD(200,228,BLACK);
	Lcd_Dma_Trans();
}

/*********************************************************************************************
* name:		LCD_view
* func:		print message to LCD
* para:		col   -- y value
			row   -- x value
			color -- color
			info  -- deplay message pointer 
* ret:		none
* modify:
* comment:		
*********************************************************************************************/
void LCD_view(INT16 col, INT16 row, INT8U color, INT8U * info)
{
//void LcdClrRect(INT16 usLeft, INT16 usTop, INT16 usRight, INT16 usBottom, INT8U ucColor)
	LcdClrRect(col,row,316,row+8,WHITE);
	Lcd_Dma_Trans();
	
	Lcd_DspAscII6x8(col,row,BLACK,info); // 
	Lcd_Dma_Trans();
}

/*********************************************************************************************
* name:		RTC_LCD
* func:		display the RTC clock to LCD
* para:		col   -- y value
			row   -- x value
			color -- color
* ret:		none
* modify:
* comment:		
*********************************************************************************************/
void RTC_LCD(INT16 col, INT16 row, INT8U color)
{
	Read_Rtc();
	sprintf(buf, "%02x-%02x-%02x %s %02x:%02x"\
	       ,year,month,day,date[weekday],hour,min);//,sec);
	Lcd_DspAscII6x8(col,row,color,(INT8U *)buf);
}

/*********************************************************************************************
* name:		CLR_view
* func:		clear the message area
* para:		none
* ret:		none
* modify:
* comment:		
*********************************************************************************************/
void CLR_view()
{
	LcdClrRect(vcol,vrow,316,vrow+pad*7,WHITE);
	Lcd_Dma_Trans();
		
}

/*********************************************************************************************
* name:		Key_map
* func:		keyboard image
* para:		none
* ret:		none
* modify:
* comment:		
*********************************************************************************************/
void Key_map()
{
	int i,j;
	int wx,wy;
	char * datt[][4] = {"0","1","2","3",
	                    "4","5","6","7",
	                    "8","9","A","B",
	                    "C","D","E","F.",
	                    0,0};
	wx = 32;
	wy = 16;
//void Lcd_Draw_Box(INT16 usLeft, INT16 usTop, INT16 usRight, INT16 usBottom, INT8U ucColor)
	/* draw rectangle pattern */ 
	for (j = 0; j<4; j++)
	 {
		for (i = 0; i<4; i++)
		 {
		   Lcd_Draw_Box(vcol+(pad+wx)*i,vrow+(pad-5+wy)*j,\
		                vcol+pad*i+wx*(i+1),vrow+(pad-5)*j+wy*(j+1),BLACK);
		   Lcd_DspAscII6x8(vcol+(pad+wx)*i+wx/2-4,vrow+(pad-5+wy)*j+wy/2-4,BLACK,datt[j][i]);
	 	 }
	 }
}


/*********************************************************************************************
* name:		user_input_actionin
* func:		action depend on user input value
* para:		value -- user input value
* ret:		none
* modify:
* comment:		
*********************************************************************************************/
void user_input_action(int value)
{
	char * in_g[4];
	switch(value)
	{
	case '0':
		TS_Test();
		break;	
	case '1':
		Digit_Led_Test();
		break;	
	case '2':
		Uart_Printf("\nLook at LCD ...\n");
		//Lcd_Test();
		run = (void (*)(void))0x0;
		(*run)();		
		break;	
	case '3':
		Test_Keyboard();
		break;	
	case '4':
		Test_Iis();
		break;	
	case '5':
		Test_Timer();
		break;	
	case '6':
		Dhcp_Test();
		break;	
	case '7':
		Test_Flash();
		break;	
	case '8':
		Test_Iic();
		break;
	case '9':
		Tftp_Test();
		break;
	case 'A':
	case 'a':
		break;
	case 'B':
	case 'b':
		break;
	case 'T':
		if(Test_Rtc_Alarm())
		USE_RTC();
		break;
	case 't':
		Display_Rtc();
		break;
	case 0x20:
		Uart_Printf("\nJump to run:");
		Uart_GetString(&in_g);
		run = (void (*)(void))strtoul((unsigned char *)in_g);
		(*run)();
		break;
	default:
		break;
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩美女视频19| 欧美大片拔萝卜| 国产成人午夜精品影院观看视频| 日韩精品欧美成人高清一区二区| 亚洲精品综合在线| 亚洲综合偷拍欧美一区色| 亚洲精品成人a在线观看| 亚洲精品乱码久久久久久 | 欧美日韩中文字幕一区| 色呦呦国产精品| 在线视频欧美精品| 在线播放亚洲一区| 日韩欧美不卡一区| 国产精品欧美一区二区三区| 国产精品久久毛片a| 亚洲欧美偷拍卡通变态| 亚洲精品成人悠悠色影视| 亚洲香肠在线观看| 日本不卡一二三区黄网| 久久se精品一区精品二区| 国产成+人+日韩+欧美+亚洲| 波多野结衣欧美| 欧美制服丝袜第一页| 欧美大片一区二区| 国产欧美日韩综合| 亚洲色图第一区| 五月天中文字幕一区二区| 久久精品国产99| 国产98色在线|日韩| 99精品视频一区| 制服丝袜一区二区三区| 国产精品久久久久一区 | 亚洲一区二区在线免费观看视频| 午夜精品久久久久影视| 韩国欧美国产1区| av电影在线观看完整版一区二区| 欧美老人xxxx18| 久久久99精品免费观看不卡| 一区二区三区四区中文字幕| 国内不卡的二区三区中文字幕 | 在线观看国产91| 欧美一三区三区四区免费在线看 | 欧美一区二区三区免费大片 | 欧美调教femdomvk| 亚洲精品在线网站| 亚洲成人一区二区在线观看| 国产九色精品成人porny| 在线观看亚洲专区| 日本一区二区三区四区在线视频| 午夜精品视频一区| 91免费小视频| 2023国产一二三区日本精品2022| 亚洲影视资源网| 不卡视频一二三| 精品国产欧美一区二区| 天天影视色香欲综合网老头| 色综合久久久久久久| 久久九九影视网| 精品在线一区二区三区| 69堂国产成人免费视频| 一区二区视频免费在线观看| 成人午夜短视频| 久久久久久亚洲综合影院红桃| 亚洲大片一区二区三区| 99久久伊人精品| 国产欧美一区二区三区在线老狼| 美女视频黄频大全不卡视频在线播放| 91国产免费观看| 一级日本不卡的影视| 色噜噜狠狠成人网p站| 中文字幕一区在线| 成人小视频免费在线观看| 国产欧美一区二区精品忘忧草| 麻豆国产欧美一区二区三区| 91麻豆精品91久久久久同性| 一区二区高清视频在线观看| 色狠狠av一区二区三区| 亚洲乱码日产精品bd| 99在线精品免费| 亚洲欧美自拍偷拍色图| 99久久国产综合精品麻豆| 国产精品第五页| 一本色道久久综合狠狠躁的推荐| 亚洲男人的天堂一区二区| 色哦色哦哦色天天综合| 一区二区三区四区高清精品免费观看| 3d成人h动漫网站入口| 亚洲国产欧美日韩另类综合| 欧美精品久久天天躁| 蜜桃视频一区二区三区在线观看| 欧美一区二区三区思思人 | 精品久久久久久亚洲综合网| 美日韩一级片在线观看| 久久综合久久综合亚洲| 风流少妇一区二区| 亚洲精品美腿丝袜| 欧美一区二区在线视频| 激情深爱一区二区| 亚洲国产精品99久久久久久久久 | 国产精品久久久久久久久晋中| 成人a级免费电影| 亚洲一区视频在线| 精品剧情在线观看| 91在线精品秘密一区二区| 亚洲国产成人av好男人在线观看| 91精品国产综合久久国产大片| 狠狠色丁香久久婷婷综| 亚洲免费在线视频| 在线不卡免费av| 成人午夜av电影| 香蕉成人啪国产精品视频综合网| 精品国产三级a在线观看| 色94色欧美sute亚洲线路一ni| 日韩精品电影在线| 中文字幕一区二区三区色视频| 欧美精品v日韩精品v韩国精品v| 国产伦精品一区二区三区在线观看| 亚洲精品国产无套在线观| 日韩女优av电影在线观看| 色综合久久久久综合体桃花网| 久久精品国产澳门| 亚洲午夜国产一区99re久久| 国产欧美日韩一区二区三区在线观看 | 中文字幕在线不卡一区| 在线成人高清不卡| 99re这里只有精品6| 国产综合久久久久久鬼色| 亚洲午夜视频在线观看| 欧美极品aⅴ影院| 日韩三级免费观看| 欧美亚洲日本国产| av不卡一区二区三区| 韩国女主播成人在线| 日本欧美大码aⅴ在线播放| 最新不卡av在线| 久久久亚洲欧洲日产国码αv| 欧美精品色一区二区三区| 91视频免费看| av高清久久久| aaa国产一区| 国产经典欧美精品| 久久99久久精品| 日韩成人精品在线| 首页亚洲欧美制服丝腿| 亚洲一区二区三区国产| 亚洲美女在线国产| 樱桃国产成人精品视频| 亚洲欧洲综合另类| 一区二区三区鲁丝不卡| 亚洲激情男女视频| 一区二区三区中文在线| 一区二区三区日本| 一区二区三区日韩在线观看| 一区二区三区免费在线观看| 樱桃国产成人精品视频| 洋洋av久久久久久久一区| 一区二区三区毛片| 午夜精品久久久久久| 婷婷成人综合网| 蜜桃久久精品一区二区| 韩国三级在线一区| 欧美亚洲免费在线一区| 欧美伊人久久久久久久久影院| 91福利国产精品| 欧美精品成人一区二区三区四区| 91麻豆精品91久久久久同性| 欧美大片在线观看| 国产香蕉久久精品综合网| 中文欧美字幕免费| 亚洲人成小说网站色在线 | 亚洲va天堂va国产va久| 亚洲已满18点击进入久久| 亚洲高清一区二区三区| 日日夜夜一区二区| 韩国精品免费视频| 成人99免费视频| 在线免费视频一区二区| 欧美精品一二三区| 久久久久久久久久久电影| 中文字幕亚洲在| 婷婷国产在线综合| 成人午夜在线视频| 欧美另类久久久品| 欧美激情一二三区| 亚洲在线视频网站| 狠狠色丁香久久婷婷综合_中| 不卡电影一区二区三区| 欧美性猛片aaaaaaa做受| 精品免费一区二区三区| 亚洲欧洲精品一区二区三区| 亚洲成人免费视| 韩国欧美国产1区| 欧美视频一区二区| 欧美激情一区二区三区全黄| 亚洲一区在线播放| 99视频有精品| 精品久久久久久久久久久久久久久久久| 国产精品免费网站在线观看| 男女男精品视频网| 91久久精品国产91性色tv|