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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 3510.c

?? 這是一個使用NOKIA 3510I的液晶屏+AVR單片機來制作的電壓表
?? C
字號:


#include "3510.h"
#include "aschz.h"



void LCD_Drawhz(uint8_t x, uint8_t y,uint8_t *n,uint8_t len,uint8_t color,uint8_t pen)
{

	uint8_t ListLength;
	uint8_t ii,i,dd,kk,aa;


ListLength=len;
	for (kk=0;kk<ListLength;kk++)
	{

	LCD_SendCD(0x2a,CMD );//column address set
    LCD_SendCD(x,DATA );
	LCD_SendCD(x+7,DATA );
 	LCD_DataOver(); 

    LCD_SendCD(0x2B,CMD );//page address set
    LCD_SendCD(y,DATA );
	LCD_SendCD(y+15,DATA );
 	LCD_DataOver(); 	
	
	LCD_SendCD(0x2C,CMD );		//memory write

	for (i=0;i<16;i++)
       {
	   aa=n[kk];
			
	      dd=asc[i+(n[kk]-32)*16];


           for(ii=0;ii<8;ii++)
             {
                if(dd & 0x80)
                LCD_SendCD(pen, DATA);   
             else
				LCD_SendCD(color, DATA);
              dd = dd << 1;
			}
		}	
	//				ListLength++;
					x=x+8;

          
	}

LCD_DataOver();
}

	
//畫線
void LCD_DrawLine(uint8_t x1, uint8_t y1, uint8_t x2, uint8_t y2,uint8_t Color)
{
	uint8_t x, y, t;
	if((x1 == x2) && (y1 == y2))
		LCD_DrawPoint(x1, y1,Color);
	else if(abs(y2 - y1) > abs(x2 - x1))
	{
		if(y1 > y2)
		{
			t = y1;
			y1 = y2;
			y2 = t;
			t = x1;
			x1 = x2;
			x2 = t;
		}
		for(y = y1; y <= y2; y ++)
		{
			x = (y - y1) * (x2 - x1) / (y2 - y1) + x1;
			LCD_DrawPoint(x, y,Color);
		}
	}
	else
	{
		if(x1 > x2)
		{
			t = y1;
			y1 = y2;
			y2 = t;
			t = x1;
			x1 = x2;
			x2 = t;
		}
		for(x = x1; x <= x2; x ++)
		{
			y =(x - x1) * (y2 - y1) / (x2 - x1) + y1;
			LCD_DrawPoint(x, y,Color);
		}
	}


}	
	
	
//畫點
void LCD_DrawPoint(uint8_t x, uint8_t y,uint8_t Color)
{
    LCD_SendCD(0x2a,CMD );//column address set
    LCD_SendCD(x,DATA );
	LCD_SendCD(x,DATA );
 	LCD_DataOver(); 

    LCD_SendCD(0x2B,CMD );//page address set
    LCD_SendCD(y,DATA );
	LCD_SendCD(y,DATA );
 	LCD_DataOver(); 	
	
	LCD_SendCD(0x2C,CMD );		//memory write
	LCD_SendCD(Color,DATA );
	LCD_DataOver(); 	
}	

// 短延時
void Delay5Ms(void)
{
	uint16_t i = 5552;
	while(i--);
}

//長延時
void Delay400Ms(void)
{
	uint8_t i = 5;
	uint16_t j;
	while(i--)
	{
		j=17269;
		while(j--);
	};
}



void LCD_Reset(void)
{
	cbi(LCD_RST_PORT, LCD_RST);		//set RST = L
	Delay5Ms();
	sbi(LCD_RST_PORT, LCD_RST);		//set RST = H
	Delay5Ms();
}

void LCD_SendCD(uint8_t Sdata,uint8_t CD)
{
	
	if (CD==CMD)
	{
	sbi(LCD_SIO_DDR, LCD_SIO);		//set SDI.DDR = 1
	cbi(LCD_CS_PORT, LCD_CS);		//set CS = L
	cbi(LCD_SCL_PORT, LCD_SCL);		//set SCK = L
	cbi(LCD_SIO_PORT, LCD_SIO);		//send 0, for command
	sbi(LCD_SCL_PORT, LCD_SCL);		//set SCK = H, latch data
	}
	else
	{
	sbi(LCD_SIO_DDR, LCD_SIO);		//set SDI.DDR = 1
	cbi(LCD_CS_PORT, LCD_CS);		//set CS = L
	cbi(LCD_SCL_PORT, LCD_SCL);		//set SCK = L
	sbi(LCD_SIO_PORT, LCD_SIO);		//send 1, for command
	sbi(LCD_SCL_PORT, LCD_SCL);		//set SCK = H, latch data
	}
//Bit 0(MSB)
	cbi(LCD_SCL_PORT, LCD_SCL);
	if(Sdata & 0x80)
		sbi(LCD_SIO_PORT, LCD_SIO);
	else
		cbi(LCD_SIO_PORT, LCD_SIO);
	sbi(LCD_SCL_PORT, LCD_SCL);
//Bit 1
	cbi(LCD_SCL_PORT, LCD_SCL);
	if(Sdata & 0x40)
		sbi(LCD_SIO_PORT, LCD_SIO);
	else
		cbi(LCD_SIO_PORT, LCD_SIO);
	sbi(LCD_SCL_PORT, LCD_SCL);
//Bit 2
	cbi(LCD_SCL_PORT, LCD_SCL);
	if(Sdata & 0x20)
		sbi(LCD_SIO_PORT, LCD_SIO);
	else
		cbi(LCD_SIO_PORT, LCD_SIO);
	sbi(LCD_SCL_PORT, LCD_SCL);
//Bit 3
	cbi(LCD_SCL_PORT, LCD_SCL);
	if(Sdata & 0x10)
		sbi(LCD_SIO_PORT, LCD_SIO);
	else
		cbi(LCD_SIO_PORT, LCD_SIO);
	sbi(LCD_SCL_PORT, LCD_SCL);
//Bit 4
	cbi(LCD_SCL_PORT, LCD_SCL);
	if(Sdata & 0x08)
		sbi(LCD_SIO_PORT, LCD_SIO);
	else
		cbi(LCD_SIO_PORT, LCD_SIO);
	sbi(LCD_SCL_PORT, LCD_SCL);
//Bit 5
	cbi(LCD_SCL_PORT, LCD_SCL);
	if(Sdata & 0x04)
		sbi(LCD_SIO_PORT, LCD_SIO);
	else
		cbi(LCD_SIO_PORT, LCD_SIO);
	sbi(LCD_SCL_PORT, LCD_SCL);
//Bit 6
	cbi(LCD_SCL_PORT, LCD_SCL);
	if(Sdata & 0x02)
		sbi(LCD_SIO_PORT, LCD_SIO);
	else
		cbi(LCD_SIO_PORT, LCD_SIO);
	sbi(LCD_SCL_PORT, LCD_SCL);
//Bit 7(LSB)
	cbi(LCD_SCL_PORT, LCD_SCL);
	if(Sdata & 0x01)
		sbi(LCD_SIO_PORT, LCD_SIO);
	else
		cbi(LCD_SIO_PORT, LCD_SIO);
	sbi(LCD_SCL_PORT, LCD_SCL);
//done
}


//************************
//顏色模式設(shè)置:color=1為4096色模式
//            :color=0為256色模式
//************************
void LCD_ColorSet(uint8_t Color)
{

if (Color==TRUE) {
	LCD_SendCD(0x3a, CMD);		//interface pixel format
	LCD_SendCD(0x03, DATA);    //0x03 為4096色,0x02為256色
	LCD_DataOver(); 
	}
	else
	{
	LCD_SendCD(0x3a, CMD);		//interface pixel format
	LCD_SendCD(0x02, DATA);    //0x03 為4096色,0x02為256色
	LCD_DataOver(); 


	LCD_SendCD(0x2d, CMD);		//調(diào)色板設(shè)置
//red
LCD_SendCD(0x00, DATA);
LCD_SendCD(0x02, DATA);
LCD_SendCD(0x03, DATA);
LCD_SendCD(0x04, DATA);
LCD_SendCD(0x05, DATA);
LCD_SendCD(0x06, DATA);
LCD_SendCD(0x08, DATA);
LCD_SendCD(0x0f, DATA);

//green
LCD_SendCD(0x00, DATA);
LCD_SendCD(0x02, DATA);
LCD_SendCD(0x03, DATA);
LCD_SendCD(0x04, DATA);
LCD_SendCD(0x05, DATA);
LCD_SendCD(0x06, DATA);
LCD_SendCD(0x08, DATA);
LCD_SendCD(0x0f, DATA);
//blue
LCD_SendCD(0x00, DATA);
LCD_SendCD(0x03, DATA);
LCD_SendCD(0x06, DATA);
LCD_SendCD(0x0f, DATA);
   LCD_DataOver(); 
   }
}
//************************
//清屏:color=1為4096色模式清屏
//    :color=0為256色模式清屏
//************************
void LCD_Clear(uint8_t Color)
{
	uint8_t x, y;

    LCD_SendCD(0x2a,CMD );//column address set
    LCD_SendCD(0,DATA );
	LCD_SendCD(97,DATA );
 	LCD_DataOver(); 


    LCD_SendCD(0x2B,CMD );//page address set
    LCD_SendCD(0,DATA );
	LCD_SendCD(67,DATA );
 	LCD_DataOver(); 
	

    LCD_SendCD(0x2C,CMD );//memory write
	if (Color==TRUE)	
	{
	for(y = 0; y < 68; y ++)
		for(x = 0; x < 147; x ++)
			LCD_SendCD(0,DATA );
	}
	else
	{
	for(y = 0; y < 68; y ++)
		for(x = 0; x < 98; x ++)
			LCD_SendCD(0,DATA );
	}
	LCD_DataOver(); 	

}



void LCD_Initialize(void)
{
    uint8_t i;

	sbi(LCD_RST_PORT, LCD_RST);		//set RST = H
	sbi(LCD_RST_DDR, LCD_RST);	//set RST.DDR = 1
	sbi(LCD_CS_PORT, LCD_CS);		//set CS = H
	sbi(LCD_CS_DDR, LCD_CS);	//set CS.DDR = 1
	cbi(LCD_SIO_PORT, LCD_SIO);		//set SDI = L
	cbi(LCD_SIO_DDR, LCD_SIO);	//set SDI.DDR = 0
	sbi(LCD_SCL_PORT, LCD_SCL);		//set SCK = H
	sbi(LCD_SCL_DDR, LCD_SCL);	//set SCK.DDR = 1

	LCD_Reset();
	
   LCD_SendCD(0x01, CMD);      // LCD Software Reset 
   LCD_DataOver(); 
   Delay5Ms(); 
    
   LCD_SendCD(0xC6, CMD);      // Initial Escape 
   LCD_DataOver(); 
    
   LCD_SendCD(0xB9, CMD);      // Refresh set 
   LCD_SendCD(0x00, DATA); 
   LCD_DataOver(); 
    
   LCD_SendCD(0xB6, CMD);      // Display Control 
   LCD_SendCD(128, DATA); 
   LCD_SendCD(128, DATA); 
   LCD_SendCD(129, DATA); 
   LCD_SendCD(84, DATA); 
   LCD_SendCD(69, DATA); 
   LCD_SendCD(82, DATA); 
   LCD_SendCD(67, DATA); 
   LCD_DataOver(); 
    
   LCD_SendCD(0xB3, CMD);      // Gray Scale Position 
   LCD_SendCD(1, DATA); 
   LCD_SendCD(2, DATA); 
   LCD_SendCD(4, DATA); 
   LCD_SendCD(8, DATA); 
   LCD_SendCD(16, DATA); 
   LCD_SendCD(30, DATA); 
   LCD_SendCD(40, DATA); 
   LCD_SendCD(50, DATA); 
   LCD_SendCD(60, DATA); 
   LCD_SendCD(70, DATA); 
   LCD_SendCD(80, DATA); 
   LCD_SendCD(90, DATA); 
   LCD_SendCD(100, DATA); 
   LCD_SendCD(110, DATA); 
   LCD_SendCD(127, DATA); 
   LCD_DataOver(); 
    
   LCD_SendCD(0xB5, CMD);      // Gamma Curve Set 
   LCD_SendCD(1, DATA); 
   LCD_DataOver(); 

   LCD_SendCD(0xBD, CMD);      // Power Control 
   LCD_SendCD(0x00, DATA); 
   LCD_DataOver(); 
    
   LCD_SendCD(0xBE, CMD);      // Power Control 
   LCD_SendCD(4, DATA); 
   LCD_DataOver(); 
    
   LCD_SendCD(0x11, CMD);      // Sleep out 
   LCD_DataOver(); 

   LCD_SendCD(0xBA, CMD);      // Power Control 
   LCD_SendCD(0x7F, DATA); 
   LCD_SendCD(0x03, DATA);
   LCD_DataOver(); 

   LCD_SendCD(0x36, CMD);      // 掃描方式
   LCD_SendCD(0xc0, DATA); 
   LCD_DataOver(); 
    
   LCD_SendCD(0xB7, CMD);      // Temperature gradient set 
   for(i=0; i<14; i++) { 
      LCD_SendCD(0, DATA); 
   } 
   LCD_DataOver(); 

   LCD_SendCD(0x29, CMD);      // Power Control 
   LCD_DataOver(); 
    
   LCD_SendCD(0x03, CMD);      // Booster Voltage ON 
   LCD_DataOver(); 
    
   for(i=0; i<8; i++) {   // Booster Voltage stabilisieren lassen 
      Delay5Ms(); 
   } 
    
   LCD_SendCD(0x20, CMD);      // Inversion control 
   LCD_DataOver(); 
    
   LCD_SendCD(0x25, CMD);      // Write contrast 
   LCD_SendCD(0x45, DATA); 
   LCD_DataOver(); 
}


?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
麻豆91免费看| 欧美国产一区在线| 国产黄人亚洲片| 亚洲一区二区三区小说| 国产清纯美女被跳蛋高潮一区二区久久w | 久久精品在线免费观看| 99精品久久只有精品| 日韩av高清在线观看| 一区二区三区中文字幕精品精品| 久久九九影视网| 91精品国产aⅴ一区二区| 91免费版在线| 丁香六月综合激情| 国内精品不卡在线| 免费高清成人在线| 五月天激情小说综合| 亚洲激情自拍偷拍| 亚洲人成在线播放网站岛国| 日本一区二区高清| 2024国产精品| 欧美成人综合网站| 欧美一区日本一区韩国一区| 在线观看不卡视频| 91麻豆自制传媒国产之光| 国产成人av电影在线| 国产精品影视网| 国产在线不卡一区| 日本亚洲电影天堂| 日韩av不卡在线观看| 日韩精品一级二级| 青青草一区二区三区| 男人的天堂久久精品| 免费高清不卡av| 六月丁香婷婷久久| 久久国产欧美日韩精品| 美女一区二区视频| 麻豆精品久久精品色综合| 美洲天堂一区二卡三卡四卡视频| 久久精品国产第一区二区三区| 日本vs亚洲vs韩国一区三区二区| 91看片淫黄大片一级| 波多野结衣中文一区| 国产91丝袜在线18| 成人黄色小视频| 99精品久久99久久久久| 色综合久久久久综合| 色94色欧美sute亚洲线路一久| 欧美性videosxxxxx| 欧美日韩精品专区| 日韩一区二区三区电影在线观看 | 欧美日韩情趣电影| 欧美人狂配大交3d怪物一区| 日韩一区二区在线看| 26uuu久久天堂性欧美| 久久九九国产精品| 国产精品久久久久久久第一福利| 亚洲少妇最新在线视频| 亚洲国产精品久久久久婷婷884| 日本欧美一区二区三区乱码| 国产精品影视在线观看| 99天天综合性| 4438x成人网最大色成网站| 精品国产一区二区三区不卡| 中文字幕欧美一| 亚洲香肠在线观看| 国内精品自线一区二区三区视频| 成人av资源下载| 欧美人伦禁忌dvd放荡欲情| 久久婷婷国产综合精品青草| 亚洲欧美日韩国产另类专区| 日韩精品一二三区| 国产精品18久久久| 欧美这里有精品| 精品播放一区二区| 亚洲女人****多毛耸耸8| 视频一区在线播放| 国产成人av资源| 欧美精品自拍偷拍动漫精品| 国产欧美一区二区在线| 亚洲超丰满肉感bbw| 国产精品77777竹菊影视小说| 在线欧美日韩国产| 久久网站最新地址| 亚洲国产综合色| 成人午夜视频福利| 欧美电影在哪看比较好| 国产精品日日摸夜夜摸av| 日韩高清欧美激情| 91丝袜美女网| 久久五月婷婷丁香社区| 亚洲国产美国国产综合一区二区| 国产精品99久久久久久似苏梦涵 | 日韩一二三区视频| 亚洲丝袜美腿综合| 久久不见久久见免费视频7| 91丨porny丨在线| 精品少妇一区二区三区在线视频| 亚洲一区二区在线播放相泽| 丁香啪啪综合成人亚洲小说| 欧美不卡一区二区| 欧美在线观看视频一区二区三区| 国产亚洲精品aa午夜观看| 天堂一区二区在线| 99精品欧美一区二区三区小说| 欧美精品一区视频| 天堂影院一区二区| 91久久精品一区二区| 国产精品毛片久久久久久| 老司机精品视频一区二区三区| 欧美日韩国产成人在线91| 亚洲视频一区二区在线| 高清beeg欧美| 久久久久久久久岛国免费| 午夜国产精品影院在线观看| 日本丶国产丶欧美色综合| 国产精品美女www爽爽爽| 国产精品一二一区| 久久综合五月天婷婷伊人| 日日夜夜免费精品视频| 欧美日韩久久久久久| 亚洲卡通动漫在线| 色综合婷婷久久| 亚洲精品免费看| 91丨porny丨国产| 亚洲欧美激情插| 99精品视频在线播放观看| 国产丝袜在线精品| 国产一区二区看久久| 久久久久久久久一| 国产麻豆日韩欧美久久| 久久久久久免费网| 国产ts人妖一区二区| 国产欧美va欧美不卡在线 | 678五月天丁香亚洲综合网| 一区二区激情小说| 日本丶国产丶欧美色综合| 亚洲综合一区二区三区| 91久久精品网| 日韩精品福利网| 日韩亚洲欧美一区二区三区| 欧美96一区二区免费视频| 欧美成人官网二区| 国产精品一品二品| 久久精品无码一区二区三区| 丁香五精品蜜臀久久久久99网站| 亚洲国产精品v| 99re视频这里只有精品| 一区二区三区欧美日| 欧美日韩一区小说| 麻豆成人久久精品二区三区小说| 久久网站热最新地址| 成a人片亚洲日本久久| 亚洲美女在线一区| 欧美三级视频在线| 美国一区二区三区在线播放| 日韩免费高清视频| 国产成人超碰人人澡人人澡| 亚洲日本青草视频在线怡红院| 色综合久久久久网| 日韩不卡一二三区| 国产欧美日本一区二区三区| 色8久久精品久久久久久蜜| 日韩精品电影在线| 久久嫩草精品久久久精品| 91在线免费看| 日本vs亚洲vs韩国一区三区| 国产欧美日韩激情| 在线精品视频一区二区三四| 蜜桃精品视频在线| 中文字幕在线观看不卡视频| 4438x亚洲最大成人网| 国产成人免费视频网站| 亚洲一区av在线| 久久亚洲一区二区三区四区| 色婷婷一区二区| 国产在线精品免费| 洋洋av久久久久久久一区| 精品久久人人做人人爰| 99久久99久久久精品齐齐| 日本亚洲免费观看| 自拍偷拍国产精品| 欧美电影免费观看高清完整版在线观看| 成人av资源下载| 久久精品国产久精国产爱| 亚洲女同女同女同女同女同69| 欧美精品一区二区高清在线观看| 欧美专区在线观看一区| 国产伦精品一区二区三区在线观看| 一区二区成人在线观看| 久久亚洲欧美国产精品乐播 | 成人免费在线观看入口| 日韩欧美国产精品| 在线亚洲一区观看| 国产91色综合久久免费分享| 久久精品国产精品青草| 亚洲高清不卡在线观看| 最新日韩av在线| 久久久99精品免费观看不卡| 欧美一卡在线观看| 一本久道久久综合中文字幕 |