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

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

?? lcd.c

?? 這是mega128控制320*240液晶控制器sed1335的程序
?? C
字號:
#include <inttypes.h>
#include <stdio.h>
#include <stdlib.h>
#include <util/delay.h>   
#include <avr/sleep.h>
#include <avr/wdt.h>
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/pgmspace.h>
#include <util/twi.h>

prog_char LCM_0808[]=
{
/*--  調入了一幅圖像:D:\ubbmp\du.bmp  --*/
/*--  寬度x高度=8x8  --*/
0x3C,0x7E,0xE7,0xC3,0xC3,0xE7,0x7E,0x3C,
};
prog_char LCM_0840[]=
{
/*--  調入了一幅圖像:D:\ubbmp\dian.bmp  --*/
/*--  寬度x高度=8x40  --*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x3E,
0x3E,0x3E,0x1C,0x00,0x00,0x00,0x00,0x00,
};
unsigned char SYSTAB[8]={0x30,0x87,0x07,0x27,0x42,0xF0,0x28,0x00};
unsigned char SCRTAB[10]={0x00,0x00,0xf0,0x80,0x25,0xf0,0x00,0x00,0x00,0x00};
void sed1335_write_command(unsigned char commandcode)
{//寫命令//
	bitset(PORTG,__lcd_a0);
	bitset(PORTD,__lcd_rd);
	bitclr(PORTG,__lcd_wr);	
	PORTC=commandcode;
	bitset(PORTG,__lcd_wr);
} 
void sed1335_write_data(unsigned char data)
{//寫數據//
	bitclr(PORTG,__lcd_a0);
	bitset(PORTD,__lcd_rd);
	bitclr(PORTG,__lcd_wr);		
	PORTC=data;
	bitset(PORTG,__lcd_wr);
}
unsigned char asc_lcd(unsigned char ch)
{//將實際的字符轉換為LCD能顯示的字符
	if(ch<10)	ch+=48;
	return ch;
}
void Lcd_Init(void)
{//初始化函數//
    unsigned char i;
	PORTC = 0x00;						//lcd數據口,輸出
	DDRC  = 0xFF;						//11111111		
	bitset(DDRD,__lcd_rd);
	bitset(DDRG,__lcd_wr);	
	bitset(DDRG,__lcd_a0);				//以上為液晶屏用輸出口

	sed1335_write_command(0x40);   		/* 1SYSTEM SET代碼40 */
	
    for(i=0;i<8;i++)
    {		
		sed1335_write_data(SYSTAB[i]);  /* 寫入參數 */
    }
	delay_us(10);
	
	sed1335_write_command(0x44);   		/* 2SCROLL代碼 44*/
	for(i=0;i<10;i++)
    {
		sed1335_write_data(SCRTAB[i]);	/* 寫入參數 */
    }
	delay_us(10);
	
	sed1335_write_command(0x5a);		/* 3HDOT SCR 代碼 5a*/
    sed1335_write_data(0X00);  			/* 設置參數P1 */
	delay_us(10);
	
    sed1335_write_command(0x5b);		/* 4OVLAY 代碼 5b*/
    sed1335_write_data(0x01);			/* 設置參數:顯示一,三區為圖形屬性,合成方式為異或方式 */
	delay_us(10);
	
	sed1335_write_command(0x4c);   		/* 5CSRDIR 代碼 4c*/
	delay_us(10);
	
    Lcd_Clear();       					/* 調清屏函數 */
	delay_us(10);
	
    sed1335_write_command(0x59);  		/* 6顯示狀態設置 */
    sed1335_write_data(0X14);   		/* 設置參數:顯示一二區關光標 */	
	delay_us(10);	
}
void Lcd_Clear(void)
{//清屏函數//
    unsigned int i;
    sed1335_write_command(0x46);  		/* CSRW 代碼 */
    sed1335_write_data(0X00);   		/* 設置參數光標指針低8位 */
    sed1335_write_data(0X00);		   	/* 設置參數光標指針高8位 */
    sed1335_write_command(0x42);   		/* MWRITE 代碼 42*/
    for(i=0;i<9600;i++)				//
    {
        sed1335_write_data(0x20);		/* 寫入數據 */
    }
	for(i=0;i<9600;i++)				//
    {
        sed1335_write_data(0x00);		/* 寫入數據 */
    }
}
void Cur_Set(unsigned int Ox,unsigned int Oy, unsigned char attribs)
{//光標設置//ox,oy:液晶屏上的位置,attribs為是否為非一區
	unsigned int temp;
	temp = Oy*DB+Ox;
	if(attribs) temp += BasePart1;			// 如果需要就指向第二區,加上第二區首地址
	sed1335_write_command( CsrW );				// 光標Locate,定位
	sed1335_write_data( (unsigned char)(temp & 0xff) );// 寫入參數CSRL設置參數光標指針低8位
	sed1335_write_data( (unsigned char)(temp /256 ) );	// 寫入參數CSRH設置參數光標指針高8位
}
void Lcd_Rect(unsigned int Ox,unsigned int Oy,unsigned int Rect_Long,unsigned int Rect_High,unsigned char sign)
{//ox,oy:液晶屏上的位置,Rect_Long:線的長度,Rect_High:線的高度,sign反顯標志。
	unsigned int 	Optr,last_tmp,tempCount1,tempCount2;
	unsigned char	tempchar;
	//確定最后一個字節要寫的數據
    last_tmp=0x00;
	tempCount2=Rect_Long%8;
	for(tempCount1=7;tempCount1>7-tempCount2;tempCount1--)
	{
		bitset(last_tmp,tempCount1);
	}
	//////////////////////////////////////////////////////////////////////
    Optr = Oy * DB + Ox	+ BasePart1	;						//起始內存位置
	
	tempchar=0;
    for(tempCount1=0;tempCount1<Rect_High;tempCount1++)
    {
		sed1335_write_command(CsrW);						//光標定位指令
		sed1335_write_data((unsigned char)(Optr &0xff));	//設置光標地址CSR
		sed1335_write_data((unsigned char)(Optr /256 ));
		
		sed1335_write_command(mWrite);						//ram寫指令
		
		for(tempCount2=0;tempCount2<Rect_Long/8;tempCount2++)
		{
			tempchar=0xff;
			if(sign==1)	tempchar=0xff-tempchar;
			sed1335_write_data(tempchar);
		}  
		if(last_tmp!=0)
		{
			tempchar=last_tmp;
			if(sign==1)  tempchar=0xff-tempchar;
			sed1335_write_data(tempchar);
		}
		Optr+=DB;
    }
}	
void Lcd_Char(unsigned int Ox,unsigned int Oy,unsigned char Count,unsigned char *buf)
{//ox,oy:液晶屏上的位置,Count:要顯示的字符數量,*buf:要顯示字符所在的數組。
	unsigned int 	tempCount1,Optr;
	unsigned char	tempchar;

	Optr = Oy * DB + Ox;									//起始內存位置
	
	sed1335_write_command(CsrW);							//光標定位指令
	sed1335_write_data((unsigned char)(Optr &0xff));		//設置光標地址CSR
	sed1335_write_data((unsigned char)(Optr /256 ));
	
	sed1335_write_command(mWrite);							//ram寫指令
	tempchar=0;
	for (tempCount1=0;tempCount1<Count;tempCount1++)
	{
		tempchar=asc_lcd(buf[tempCount1]);
		sed1335_write_data(tempchar);
	}
}
void Lcd_Graph(unsigned int Ox,unsigned int Oy,unsigned int Cnumber,unsigned char width,unsigned char high,unsigned char sign)
{//ox,oy:液晶屏上的位置,Cnumber:數組中的位置,width,high,圖形的寬高,sign反顯標志。
	unsigned int 	tempPtr,Optr;
	unsigned int 	tempCount1,tempCount2,nByte;
	unsigned char	tempchar;

	nByte = width/8;										//列數
	
	Optr = Oy * DB + Ox	+ BasePart1	;						//起始內存位置
	
	tempPtr = Cnumber*high*nByte;							//數組起始位置
	tempchar=0;
	for (tempCount1=0;tempCount1<high;tempCount1++)
	{
		sed1335_write_command(CsrW);						//光標定位指令
		sed1335_write_data((unsigned char)(Optr &0xff));	//設置光標地址CSR
		sed1335_write_data((unsigned char)(Optr /256 ));
		
		sed1335_write_command(mWrite);						//ram寫指令
		for(tempCount2=0;tempCount2<nByte;tempCount2++)
		{			
			switch(width)
			{
				case 8:
					if(high==8)	  	tempchar=pgm_read_byte_near(LCM_0808+tempPtr);
					if(high==40)	tempchar=pgm_read_byte_near(LCM_0840+tempPtr);
					break;
				case 16:
					tempchar=pgm_read_byte_near(LCM_1640+tempPtr);
					break;
				case 32:
					tempchar=pgm_read_byte_near(LCM_3240+tempPtr);
					break;
				case 40:
					if(high==18)	tempchar=pgm_read_byte_near(LCM_4018+tempPtr);
					if(high==36)	tempchar=pgm_read_byte_near(LCM_4036+tempPtr);
					if(high==8)		tempchar=pgm_read_byte_near(LCM_4008+tempPtr);
					break;
				case 48:
					tempchar=pgm_read_byte_near(LCM_4880+tempPtr);
					break;
				case 56:
					if(high==80)	tempchar=pgm_read_byte_near(LCM_5680+tempPtr);
					if(high==40)	tempchar=pgm_read_byte_near(LCM_5640+tempPtr);
					break;
				case 72:
					tempchar=pgm_read_byte_near(LCM_72120+tempPtr);
					break;
				case 96:
					tempchar=pgm_read_byte_near(LCM_9680+tempPtr);
					break;
				case 112:
					tempchar=pgm_read_byte_near(LCM_11280+tempPtr);
					break;
			}
			if(sign==0)	tempchar=0xff-tempchar;
			sed1335_write_data(tempchar);		//寫入數據
			tempPtr ++;
		}
		Optr+=DB;
	}
}
//////////////////////////////////////////////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91亚洲大成网污www| 久久亚洲二区三区| 精品国产亚洲一区二区三区在线观看| 国产拍欧美日韩视频二区| 亚洲主播在线播放| 国产一区二区三区| 91精品久久久久久久91蜜桃| 综合自拍亚洲综合图不卡区| 精品亚洲国产成人av制服丝袜| 91美女精品福利| 中文av字幕一区| 国产麻豆成人传媒免费观看| 欧美日本一区二区三区| 亚洲另类春色国产| 国产精品一区二区久久精品爱涩| 欧美精品亚洲一区二区在线播放| 日韩毛片精品高清免费| 国产精品乡下勾搭老头1| 制服丝袜亚洲精品中文字幕| 亚洲尤物视频在线| 91丨九色丨蝌蚪丨老版| 久久精品亚洲国产奇米99| 日韩av网站免费在线| 欧美午夜精品一区| 亚洲国产人成综合网站| 91麻豆国产福利精品| 国产精品久久久久久久裸模| 粉嫩aⅴ一区二区三区四区五区| 3d动漫精品啪啪一区二区竹菊 | 精品少妇一区二区三区在线播放| 亚洲精品成人天堂一二三| 成人晚上爱看视频| 国产精品欧美一级免费| 国产精品亚洲成人| 亚洲成av人在线观看| 色综合久久久久久久久| 亚洲欧美欧美一区二区三区| 色综合久久久久久久| 一个色在线综合| 欧美日韩成人在线| 青青草伊人久久| 久久夜色精品一区| 成人免费观看视频| 一片黄亚洲嫩模| 制服视频三区第一页精品| 日韩国产欧美在线观看| 日韩午夜激情电影| 国产乱码字幕精品高清av| 国产欧美精品区一区二区三区 | caoporm超碰国产精品| 亚洲天堂a在线| 欧美日韩一区二区三区高清 | 成人网男人的天堂| 依依成人精品视频| 欧美日韩一区二区三区高清| 麻豆免费看一区二区三区| 久久久久久**毛片大全| 本田岬高潮一区二区三区| 麻豆精品久久精品色综合| 久久综合九色综合久久久精品综合| 国产成人综合网| 亚洲一区二区av在线| 91精品国产高清一区二区三区| 毛片av一区二区| 中文字幕一区在线观看视频| 欧美三级在线看| 国产精品影视天天线| 一区二区三区色| 欧美tickling网站挠脚心| 97久久超碰国产精品| 日韩精品乱码免费| 日本一区二区三区四区在线视频| 欧美无人高清视频在线观看| 国产一区二区三区四区五区入口| 亚洲免费av观看| 精品国产区一区| 在线观看91视频| 国产麻豆精品95视频| 午夜影视日本亚洲欧洲精品| 久久久777精品电影网影网| 91国模大尺度私拍在线视频| 精品一区二区在线视频| 一区二区三区欧美| 久久久久久久电影| 7777精品伊人久久久大香线蕉完整版 | 精品久久一区二区| 一区二区在线看| 在线精品亚洲一区二区不卡| www一区二区| 成人免费视频国产在线观看| 久久精品国产网站| 中文字幕在线观看不卡| 欧美电影精品一区二区| 欧美裸体一区二区三区| 日韩欧美国产成人一区二区| 一本色道久久综合狠狠躁的推荐| 亚洲国产日韩精品| 久久久www成人免费毛片麻豆| 国产麻豆欧美日韩一区| 久久色.com| av电影天堂一区二区在线观看| 精品国产露脸精彩对白| www.欧美日韩| 91在线porny国产在线看| 日韩欧美一二区| 国产一区二区三区不卡在线观看 | 视频在线观看一区| 中文字幕制服丝袜成人av| 久久亚洲影视婷婷| 26uuu国产一区二区三区| 91精品国产色综合久久| 91精品国产综合久久香蕉麻豆 | 国产激情偷乱视频一区二区三区| 麻豆精品视频在线观看视频| 亚洲bt欧美bt精品| 国产精品99久久久久久似苏梦涵| 秋霞影院一区二区| 日本成人在线看| 久久国产欧美日韩精品| 久久国产精品99精品国产 | 91日韩在线专区| av高清不卡在线| 色哟哟日韩精品| 欧美日韩国产电影| 欧美一卡2卡三卡4卡5免费| 制服视频三区第一页精品| 日韩一区二区电影网| 精品免费日韩av| 久久久777精品电影网影网| 国产三级精品三级在线专区| 国产精品久久久久影院| 亚洲欧美偷拍另类a∨色屁股| 一区二区三区国产| 日本视频中文字幕一区二区三区| 麻豆一区二区99久久久久| 国产精品一区二区在线观看不卡| 国产91丝袜在线观看| 一本一道波多野结衣一区二区| 欧美日韩午夜精品| 精品国产一区二区在线观看| 久久久精品黄色| 亚洲蜜臀av乱码久久精品| 日日摸夜夜添夜夜添亚洲女人| 美腿丝袜亚洲三区| 91精品国产91热久久久做人人| 日韩三级免费观看| 久久久精品日韩欧美| 亚洲图片欧美激情| 亚洲成人你懂的| 国产乱码精品一品二品| 日本乱码高清不卡字幕| 欧美大片日本大片免费观看| 国产精品福利一区二区| 日韩不卡免费视频| 成人免费看黄yyy456| 欧美日韩免费高清一区色橹橹| 精品国产人成亚洲区| 亚洲精品成a人| 国产米奇在线777精品观看| 在线观看一区二区精品视频| 久久久激情视频| 天天综合日日夜夜精品| 成人视屏免费看| 日韩一区二区中文字幕| 最新日韩av在线| 国产精品原创巨作av| 欧美色区777第一页| 国产精品午夜电影| 免费成人你懂的| 欧美日韩国产一级二级| 国产欧美精品日韩区二区麻豆天美| 偷拍日韩校园综合在线| 91在线国产福利| 国产香蕉久久精品综合网| 午夜精品国产更新| 色老汉一区二区三区| 中文字幕国产一区二区| 精品一二三四区| 欧美一区二区三级| 亚洲一区二区美女| 91麻豆国产精品久久| 国产午夜精品理论片a级大结局| 免费在线欧美视频| 欧美日本一区二区在线观看| 一个色综合网站| 色播五月激情综合网| 中文字幕一区二区三| 国产成人自拍网| 久久久久久久久久久久电影 | 久久亚洲捆绑美女| 美腿丝袜亚洲色图| 欧美一区二区三区喷汁尤物| 午夜视频久久久久久| 在线中文字幕不卡| 一区二区视频在线| 日本精品视频一区二区三区| 亚洲男人天堂av网| 在线亚洲+欧美+日本专区| 一区二区欧美在线观看| 欧美在线色视频|