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

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

?? lcd.c

?? port of ARM to NOkia 3310 display
?? C
?? 第 1 頁 / 共 2 頁
字號:
-----------------------------------------------------------------------------*/
void LcdStr (unsigned char *dataPtr )
{
    while ( *dataPtr )
    {
        LcdChr( *dataPtr++ );
    }
}

/*
	LED
*/
void led_to_nokia(int NUM)
{
	
	unsigned char count = 0x00, row = 0x01;
	int aa, bb, cc;
	unsigned char A, B, C, D;
	unsigned char eerow;

	//CALCULATE THE DIGITS
	aa = NUM%1000;
	A=(NUM-aa)/1000;
	
	bb = aa%100;
	B=(aa-bb)/100;
	
	cc = bb%10;
	C=(bb-cc)/10;
	
	D=cc;
        
        
	//SHOW THE DIGITS
	//led #1
	nokia_gotoxy(4,row);
	for (eerow=0;eerow!=68;eerow++) 
	{
		bytefornokia=LED[A][eerow];		// and get it				
		nokia_write_data();			// send data to nokia
		
		count++;	
		if(count ==17)
		{
			row += 1;
			nokia_gotoxy(4,row);
			count=0;
		}
		
		
	}
	
	//led #2
	count = 0x00; row = 1;
	nokia_gotoxy(23,row);
	for (eerow=0;eerow!=68;eerow++) 
	{
		bytefornokia=LED[B][eerow];		// and get it				
		nokia_write_data();			// send data to nokia
		count++;	
		if(count ==17)
		{
			row += 1;
			nokia_gotoxy(23,row);
			count=0;
		}
		
		
	}
	
	
	//led #3
	count = 0x00; row = 1;
	nokia_gotoxy(42,row);
	for (eerow=0;eerow!=68;eerow++) 
	{
		bytefornokia=LED[C][eerow];		// and get it				
		nokia_write_data();			// send data to nokia
		count++;	
		if(count ==17)
		{
			row += 1;
			nokia_gotoxy(42,row);
			count=0;
		}
		
		
	}
	
	
	//led #4
	count=0x00; row = 1;
	nokia_gotoxy(61,row);
	for (eerow=0;eerow!=68;eerow++) 
	{
		bytefornokia=LED[D][eerow];		// and get it				
		nokia_write_data();			// send data to nokia
		count++;	
		if(count ==17)
		{
			row += 1;
			nokia_gotoxy(61,row);
			count=0;
		}
		
		
	}
	
	
	
	return;
}


//Draw a circle on the LCD
//        GLCD_Circle (char u8CenterX, char u8CenterY, char u8Radius)
//		u8CenterX = Center absciss (in pixels)
//		u8CenterY = Center ordinate (in pixels) 
//		u8Radius  = Radius (in pixels)
//

void LCDCircle(unsigned char CenterX, unsigned char CenterY, unsigned char Radius, unsigned char mode)
{
        signed int s16tswitch, s16y, s16x;
        unsigned char u8d;

        s16tswitch = s16y = s16x = 0;
	u8d = CenterY - CenterX;
	s16y = Radius;
	s16tswitch = 3 - 2 * Radius;

	while (s16x <= s16y) 
	{
		//LcdSetDot(u8CenterX + s16x, u8CenterY + s16y);
                LcdPixel ( CenterX + s16x, CenterY + s16y, mode );

		//LcdSetDot(u8CenterX + s16x, u8CenterY - s16y);
		LcdPixel ( CenterX + s16x, CenterY - s16y, mode );

		//LcdSetDot(u8CenterX - s16x, u8CenterY + s16y);
                LcdPixel ( CenterX - s16x, CenterY + s16y, mode );

		//LcdSetDot(u8CenterX - s16x, u8CenterY - s16y);
                LcdPixel ( CenterX - s16x, CenterY - s16y, mode );
		
		//LcdSetDot(u8CenterY + s16y - u8d, u8CenterY + s16x);
                LcdPixel ( CenterY + s16y - u8d, CenterY + s16x, mode );

		//LcdSetDot(u8CenterY + s16y - u8d, u8CenterY - s16x);
                LcdPixel ( CenterY + s16y - u8d, CenterY - s16x, mode );

		//LcdSetDot(u8CenterY - s16y - u8d, u8CenterY + s16x); 
                LcdPixel ( CenterY - s16y - u8d, CenterY + s16x, mode );

		//LcdSetDot(u8CenterY - s16y - u8d, u8CenterY - s16x);
                LcdPixel ( CenterY - s16y - u8d, CenterY - s16x, mode );

		if (s16tswitch < 0) 
			s16tswitch += (4 * s16x + 6);
		else 
		{
			s16tswitch += (4 * (s16x - s16y) + 10);
			s16y--;
		}
	
		s16x++;
	}
        return;
}


void LcdInfo(unsigned char X, unsigned char Y, unsigned char * msg)
{
    LcdGotoXY(X,Y);
    LcdStr(&msg[0]);
    LcdUpdate();
 
    return;
}




void EcosLogo(void)
{
    int count, nok_graph = 504;
    
    // init B/W Lcd
    nokia_init(LcdContr); cls();
    
    //init Color Lcd
    color_nokia_init();
           
    ///////////////////////////////////////////////////// LOGO eCos //////////////////////////////////////////////////////////////////////
     for(count=0;count != nok_graph;count++)
	{
		bytefornokia=ecos4[count];
		nokia_write_data();
	}
hal_delay_us(500000);

for(count=0;count != nok_graph;count++)
	{
		bytefornokia=ecos3[count];
		nokia_write_data();
	}
hal_delay_us(300000);


for(count=0;count != nok_graph;count++)
	{
		bytefornokia=ecos2[count];
		nokia_write_data();
	}
 hal_delay_us(300000);


for(count=0;count != nok_graph;count++)
	{
		bytefornokia=ecos1[count];
		nokia_write_data();
	}
 hal_delay_us(300000);

for(count=0;count != nok_graph;count++)
	{
		bytefornokia=eCos[count];
		nokia_write_data();
	}
 hal_delay_us(4000000);  
 
 /////////////////////////////////////////////////////// uBlox /////////////////////////////////////////////////////////////////////////////////
 for(count=0;count != nok_graph;count++)
       {
		bytefornokia=uBlox[count];
		nokia_write_data();
	}
 hal_delay_us(3000000);  
 /////////////////////////////////////////////////////// SD /////////////////////////////////////////////////////////////////////////////////
 for(count=0;count != nok_graph;count++)
       {
		bytefornokia=sd[count];
		nokia_write_data();
	}
 hal_delay_us(3000000);  
 /////////////////////////////////////////////////////// ARM /////////////////////////////////////////////////////////////////////////////////
 for(count=0;count != nok_graph;count++)
       {
		bytefornokia=arm[count];
		nokia_write_data();
	}
 hal_delay_us(3000000);  
 
 return;    
}




/*
       Create BASH prompt
*/
void lcd(const char *message)
{
       unsigned char x,len;
       
       len=strlen(message);
       
       if(len > 16) len=15;
       if(len > 0 && message[0]>32) //nur ASCII fur erste buchstabe!
       {
           //Create 6 rows x 15 chars each 	
    	    if(Row<6)
    	    {
    	        strncpy(&lcd_buff_5[0], FontLookup[32], 15);
    	        
    	        strncpy( lcd_buff_5, message, len );
    	        lcd_buff_5[15]='\0';
    	        nokia_gotoxy(0,Row);
    	        nokia_printmessage( &lcd_buff_5[0],0); 
    	        Row++;
    	    }
    	    else
    	    {
    	        //
                //0
    	        strncpy( lcd_buff_0, " ", 15);
    	        strncpy( lcd_buff_0, lcd_buff_1, 15);  
    	        lcd_buff_0[15]='\0';
    	        nokia_gotoxy(0,0);
                nokia_printmessage( &lcd_buff_0[0],0); 
               
    	        //1
    	        strncpy( lcd_buff_1, " ", 15);
    	        strncpy( lcd_buff_1, lcd_buff_2, 15);
    	        lcd_buff_1[15]='\0';
    	        nokia_gotoxy(0,1);
                nokia_printmessage(&lcd_buff_1[0],0); 
              
    	        //2
    	        strncpy( lcd_buff_2, " ", 15);
    	        strncpy( lcd_buff_2,  lcd_buff_3, 15 );
    	        lcd_buff_2[15]='\0';
    	        nokia_gotoxy(0,2);
                nokia_printmessage(&lcd_buff_2[0],0); 
               
    	        //3
    	        strncpy( lcd_buff_3, " ", 15);
    	        strncpy( lcd_buff_3, lcd_buff_4, 15);
    	        lcd_buff_3[15]='\0';
    	        nokia_gotoxy(0,3);
                nokia_printmessage(&lcd_buff_3[0],0); 
               
    	        //4
    	        strncpy( lcd_buff_4, " ", 15);
    	        strncpy( lcd_buff_4,  lcd_buff_5, 15 );
    	        lcd_buff_4[15]='\0';
    	        nokia_gotoxy(0,4);
                nokia_printmessage(&lcd_buff_4[0],0); 
                            
    	        //5
    	        strncpy( lcd_buff_5, " ", 15);
    	        strncpy( lcd_buff_5,message, len );
    	        lcd_buff_5[15]='\0';
    	        nokia_gotoxy(0,5);
                nokia_printmessage(&lcd_buff_5[0],0); 
         }     
       }
       return;
}


void clear(unsigned char x, unsigned char y, unsigned char zero)
{
    unsigned char count;
    
    nokia_gotoxy(x,y);
    for(count=0;count != zero;count++){
	        	bytefornokia=0x00;
		        nokia_write_data();
    }
    return;
}

/////////////////////////////////////////////////////////////////////////// COLOR LCD   98x67 ///////////////////////////////////////////////

void color_nokia_init(void)
{

       unsigned int i;
	unsigned char  s,a;

      (*(volatile unsigned long *)ASHLING_IODIR) |= 0x01<< 24  ; 
      (*(volatile unsigned long *)ASHLING_IODIR) |= 0x01<< 4  ; 
      (*(volatile unsigned long *)ASHLING_IODIR) |= 0x01<< 5  ; 
      (*(volatile unsigned long *)ASHLING_IODIR) |= 0x01<< 6  ; 
       

    	//init port
        
	
	// LCD Hardware Reset
	hal_delay_us(5000);
	RESET_0;
	hal_delay_us(5000);
	RESET_1;
	
	CS_1;
	SCLK_1;
	SDATA_1;
	
	send(0x01, CMD);		// LCD Software Reset
	cs();
	hal_delay_us(5000);
	
	send(0xC6, CMD);		// Initial Escape
	cs();
	
	send(0xB9, CMD);		// Refresh set
	send(0x00, DATA);
	cs();
	
	send(0xB6, CMD);		// Display Control
	send(128, DATA);
	send(128, DATA);
	send(129, DATA);
	send(84, DATA);
	send(69, DATA);
	send(82, DATA);
	send(67, DATA);
	cs();
	
	send(0xB3, CMD);		// Gray Scale Position
	send(1, DATA);
	send(2, DATA);
	send(4, DATA);
	send(8, DATA);
	send(16, DATA);
	send(30, DATA);
	send(40, DATA);
	send(50, DATA);
	send(60, DATA);
	send(70, DATA);
	send(80, DATA);
	send(90, DATA);
	send(100, DATA);
	send(110, DATA);
	send(127, DATA);
	cs();
	
	send(0xB5, CMD);		// Gamma Curve Set
	send(1, DATA);
	cs();
	
	send(0xBE, CMD);		// Power Control
	send(4, DATA);
	cs();
	
	send(0x11, CMD);		// Sleep out
	cs();
	
	send(0xB7, CMD);		// Temperature gradient set
	for(i=0; i<14; i++) {
		send(0, DATA);
	}
	cs();
	
	send(0x03, CMD);		// Booster Voltage ON
	cs();
	
		hal_delay_us(40000);

	
	send(0x20, CMD);		// Inversion control
	cs();
	
	send(0x25, CMD);		// Write contrast
	send(85, DATA);           //was 63
	cs();

	send(0x29, CMD);		// Display On
	cs();

	send(0x2C, CMD);		// Memory Write
		
	
for(a=0;a<4;a++)
{

	s=0;
	for(i=0; i<294; i++) {
		if(s == 0) send(15, DATA);			//	15
		else if(s == 1) send(240, DATA);	//  240
		else if(s == 2) send(255, DATA);	//	255
		
		if(++s == 3)
			s = 0;
	}
	

	s=0;
	for(i=0; i<294; i++) {
		if(s == 0) send(240, DATA);
		else if(s == 1) send(255, DATA);
		else if(s == 2) send(15, DATA);
		
		if(++s == 3)
			s = 0;
	}
	

	s=0;
	for(i=0; i<294; i++) {
		if(s == 0) send(255, DATA);
		else if(s == 1) send(15, DATA);
		else if(s == 2) send(240, DATA);
		if(++s == 3)
			s = 0;
	}
	

	s=0;
	for(i=0; i<294; i++) {
		if(s == 0) send(0, DATA);
		else if(s == 1) send(240, DATA);
		else if(s == 2) send(15, DATA);
		
		if(++s == 3)
			s = 0;
	}
	
				
	s=0;
	for(i=0; i<294; i++) {
		if(s == 0) send(15, DATA);  
		else if(s == 1) send(0, DATA);
		else if(s == 2) send(240, DATA);
		
		if(++s == 3)
			s = 0;
	}
	

	s=0;
	for(i=0; i<294; i++) {
		if(s == 0) send(240, DATA);
		else if(s == 1) send(15, DATA);
		else if(s == 2) send(0, DATA);
		
		if(++s == 3)
			s = 0;
	}
	

	for(i=0; i<294; i++) {
		send(0, DATA);
	}
	

	for(i=0; i<294; i++) {
		send(255, DATA);
	}
	cs();
	}
	
	send(0x29, CMD);		// Display On
	cs();
      
       return;
}



void send(unsigned char data, unsigned char cd) {
	
	unsigned char c;
	
	CS_0;


	SCLK_0;
	if(cd == CMD)
		SDATA_0;
	else
		SDATA_1;
	SCLK_1;

	for (c=8;c>0;c--) {
		SCLK_0;
		if ((data&0x80)==0){
		SDATA_0;
	}
		else {
		SDATA_1;
		}
		SCLK_1;
		data=data<<1;
	}
       return;
}

void cs(void) {
	CS_1;	// CS = 1
}




void Lcd_setframe(unsigned char Lcd_left, unsigned char Lcd_top, unsigned char Lcd_width, unsigned char Lcd_height )
{
    send(0x2A , 0);
    send(Lcd_left, 1);
    send(Lcd_width, 1);
    cs();
    send(0x2B , 0);
    send(Lcd_top,1);
    send(Lcd_height, 1);
    cs();
    send(0x2C ,0);
    
    return;
}


void Lcd_setcolor(unsigned char Forecolor, unsigned char Backcolor)
{
    Lcd_fcolor = Forecolor;
    Lcd_bcolor = Backcolor;
    
    return;
}

void Lcd_setdoublesize(unsigned char size)
{
    Lcd_doublesize = size;
    return;
}

//
void Lcd_cls(void)
{
    unsigned int R;
    
    Lcd_setframe(0,0,97,67);
    
    for(R=1; R!=6566; R++)
    {
        send(0xEE, 1);
    }
    
    return;
}



void Lcd_print(unsigned char * Lcd_text)
{
    unsigned int R;
    unsigned char A, B, C, D, E, F, G;
    unsigned char * zeichnen;
    
    send(0x36, 0);
    send(0x20, 1);
    send(0x2C, 0);
    
    for(R=1; R!= strlen(Lcd_text);R++)
    {
        strncpy(zeichnen, Lcd_text, R);
    }

    return;
}


//eof

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合色综合色综合色综合色综合 | 日韩欧美在线影院| 日本一二三不卡| 日韩av在线免费观看不卡| 成人av资源站| 精品美女在线播放| 亚洲综合视频在线| 成人动漫一区二区三区| 精品区一区二区| 亚洲成人黄色影院| 97久久人人超碰| 久久午夜国产精品| 美国毛片一区二区三区| 欧美午夜精品理论片a级按摩| 中文字幕va一区二区三区| 日韩精品一级中文字幕精品视频免费观看| 国产精品1区二区.| 欧美精品一区二区三区四区| 石原莉奈一区二区三区在线观看| 91丨九色丨黑人外教| 国产日产精品1区| 国产精品一线二线三线精华| 日韩视频中午一区| 麻豆精品蜜桃视频网站| 欧美日本一区二区三区四区| 一区二区三区欧美在线观看| 99re这里只有精品首页| 国产精品久久久久久久久免费樱桃| 日韩二区三区在线观看| 欧美另类videos死尸| 亚洲美女在线一区| 一道本成人在线| 亚洲少妇最新在线视频| 色婷婷综合五月| 亚洲综合激情另类小说区| 色噜噜夜夜夜综合网| 久久综合五月天婷婷伊人| 激情综合色综合久久综合| 欧美成人精精品一区二区频| 日本人妖一区二区| 欧美xxxxxxxxx| 国产又黄又大久久| 国产女人水真多18毛片18精品视频| 国产乱码精品一区二区三区忘忧草 | 99视频精品全部免费在线| 中文字幕av免费专区久久| 国产suv精品一区二区6| 国产精品蜜臀在线观看| 色综合色狠狠综合色| 亚洲国产精品一区二区www| 欧美性生活久久| 男女激情视频一区| 久久综合九色综合97婷婷| www.欧美精品一二区| 一区二区三区欧美久久| 欧美群妇大交群的观看方式| 日本欧美加勒比视频| 精品国产91九色蝌蚪| 成人精品一区二区三区四区| 亚洲日穴在线视频| 欧美精品xxxxbbbb| 国产成人一区在线| 一区二区三区资源| 精品国产乱码久久久久久图片| 成人一区二区在线观看| 亚洲第一会所有码转帖| 欧美成人bangbros| 99精品久久免费看蜜臀剧情介绍| 亚洲午夜视频在线观看| 久久先锋资源网| 91久久精品网| 久久99国产精品久久| 亚洲免费在线视频| 精品久久久久久久久久久久包黑料| 国产不卡在线视频| 五月婷婷久久丁香| 中文字幕中文字幕在线一区 | 欧美国产禁国产网站cc| 91高清视频在线| 国产在线不卡一区| 亚洲午夜一区二区| 亚洲视频在线一区二区| 欧美成人一区二区三区在线观看 | 韩国女主播成人在线| 一区二区三区日韩| 国产精品不卡在线观看| 精品国产髙清在线看国产毛片| 在线影视一区二区三区| 国产精品1区二区.| 美日韩黄色大片| 亚洲大片在线观看| 亚洲日韩欧美一区二区在线| 精品成人一区二区三区| 欧美日韩国产一二三| 91在线视频官网| 国产91综合网| 国产米奇在线777精品观看| 亚洲成人1区2区| 亚洲乱码国产乱码精品精98午夜| 欧美白人最猛性xxxxx69交| 在线免费不卡视频| 久久久亚洲精品石原莉奈| 欧美日精品一区视频| 91精品福利在线| 色婷婷激情一区二区三区| 成人ar影院免费观看视频| 国产成人夜色高潮福利影视| 久久不见久久见免费视频7 | av影院午夜一区| 国产精品99久久不卡二区| 久久黄色级2电影| 美国十次综合导航| 美女视频免费一区| 日韩不卡一区二区三区| 日韩国产精品大片| 爽好多水快深点欧美视频| 亚洲高清免费观看高清完整版在线观看 | 日韩欧美国产小视频| 欧美夫妻性生活| 精品国产制服丝袜高跟| 欧美成人激情免费网| 久久综合中文字幕| 国产欧美一区二区三区沐欲 | 亚洲午夜精品久久久久久久久| 亚洲另类春色国产| 一区二区三区中文字幕精品精品| 日韩一区欧美一区| 亚洲精品高清视频在线观看| 亚洲女女做受ⅹxx高潮| 亚洲自拍偷拍欧美| 日韩在线一区二区| 国产在线视频一区二区| 精品国产亚洲在线| 国产亚洲精品福利| 亚洲精品成人悠悠色影视| 五月天丁香久久| 国产原创一区二区| 一本到不卡免费一区二区| 欧美日韩精品电影| 久久婷婷色综合| 亚洲人成亚洲人成在线观看图片| 亚洲在线视频网站| 欧美aaa在线| 波多野结衣在线一区| 欧美少妇xxx| 久久你懂得1024| 一区二区三区日韩欧美| 久久国产综合精品| 91免费国产视频网站| 欧美一级黄色录像| 亚洲视频电影在线| 国产原创一区二区| 欧美视频一区二区三区| 久久伊99综合婷婷久久伊| 亚洲人成伊人成综合网小说| 秋霞电影网一区二区| 成人v精品蜜桃久久一区| 欧美伦理电影网| 中文字幕一区二区三区在线不卡| 亚洲成人综合网站| 丁香桃色午夜亚洲一区二区三区| 91久久奴性调教| 亚洲国产精品av| 日本vs亚洲vs韩国一区三区| a在线播放不卡| 精品精品国产高清a毛片牛牛| 亚洲你懂的在线视频| 国产一区二区0| 欧美精品久久一区二区三区| 国产精品入口麻豆原神| 美女网站色91| 欧美性高清videossexo| 欧美激情中文不卡| 老鸭窝一区二区久久精品| 色菇凉天天综合网| 亚洲国产高清在线| 久久激情五月婷婷| 在线综合视频播放| 一区二区久久久| 成人av电影在线观看| 精品国产一区二区在线观看| 亚洲v精品v日韩v欧美v专区 | 亚洲欧洲性图库| 国内久久婷婷综合| 欧美一区二区视频免费观看| 一区二区三区产品免费精品久久75| 国产成人免费视| 久久综合九色综合欧美98| 看片网站欧美日韩| 日韩欧美中文字幕公布| 丝袜亚洲精品中文字幕一区| 欧美日韩一区不卡| 亚洲黄色av一区| 一本色道a无线码一区v| 亚洲欧美色图小说| 色综合一区二区| 亚洲视频狠狠干| 欧日韩精品视频| 五月婷婷综合激情| 欧美一区二区三区免费观看视频|