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

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

?? 12864lcd.h

?? 俄羅斯方塊的MSP430F449系列的LCD以及點陣按鍵的代碼.
?? H
?? 第 1 頁 / 共 2 頁
字號:
#ifndef __12864lcd
#define __12864lcd
#endif
#include "math.h"


//*********************************************************************
//LCD matrix dispaly the BYTE and logo(lsd)
//
//
//                  MSP430F449
//             -----------------
//         /|\|              XIN|-
//          | |                 |
//          --|RST          XOUT|-   ________
//            |                 |   |        |
//            |             P2.0|-->|   l    |
//            |               . | . |        |
//            |             P2.3| . |   C    |
//            |             P2.6| . |        |
//            |             P2.7| . |   D    |
//            |             P3.0| . |        |
//            |               . | . |        |
//            |             P3.8|-->|________|
//            |                 |
//
//  程序功能:該程序是128X64點陣的頭文件 
//  硬件連接:必須連接F449邊上的p3.0-P3.7P4.0,P4.1,P2.6,P2.7口上的
//            短接器。另外,可以通過3296電位器R20來調節LCD灰度。
//
//typedef unsigned long DWORD;
typedef unsigned int  WORD;
typedef unsigned char BYTE;
//****************************************************************************
#define		P2_0_RS			0x01
#define		P2_1_RW			0x02
#define		P2_2_EN			0x04
#define		P2_3_CS1		0x08
#define		P2_6_CS2		0x40
#define		P2_7_RST		0x80

#define		P3_0_DB0		0x01
#define		P3_1_DB1		0x02
#define		P3_2_DB2		0x04
#define		P3_3_DB3		0x08
#define		P3_4_DB4		0x10
#define		P3_5_DB5		0x20
#define		P3_6_DB6		0x40
#define		P3_7_DB7		0x80

#define         Set_RS                  P2OUT |= P2_0_RS
#define         Clr_RS                  P2OUT &=~P2_0_RS
#define         Set_RW                  P2OUT |= P2_1_RW
#define         Clr_RW                  P2OUT &=~P2_1_RW
#define         Set_EN                  P2OUT |= P2_2_EN
#define         Clr_EN                  P2OUT &=~P2_2_EN
#define         Set_CS1                 P2OUT |= P2_3_CS1
#define         Clr_CS1                 P2OUT &=~P2_3_CS1
#define         Set_CS2                 P2OUT |= P2_6_CS2
#define         Clr_CS2                 P2OUT &=~P2_6_CS2
#define         Set_RST                 P2OUT |= P2_7_RST
#define         Clr_RST                 P2OUT &=~P2_7_RST

#define         LCD_CMD_DIR             P2DIR
#define         LCD_CMD_OUT             P2OUT
#define         LCD_DATA_DIR            P3DIR
#define         LCD_DATA_OUT            P3OUT
#define         LCD_DATA_IN             P3IN        

#define         PixelModel_Draw         0x00    //畫點
#define         PixelModel_Clear        0x01    //清點
#define         PixelModel_Not          0x02    //反色點

#define         LineModel_Draw          0x00    //畫線
#define         LineModel_Clear         0x01    //清線
#define         LineModel_Not           0x02    //反色線

#define         BoxModel_Draw           0x00    //畫邊框 
#define         BoxModel_NoBox          0x03    //無邊框 
#define         BoxModel_Clear          0x01    //畫白色邊框 
#define         BoxModel_Not            0x02    //邊框反顯

#define         FillType_Fill           0x00    //填充黑色 
#define         FillType_Clear          0x01    //填充白色 
#define         FillType_Not            0x02    //填充反色 
#define         FillType_NoFill         0x03    //不填充 

BYTE         LCDStatus;    


void write_command( BYTE nByte )
{
        Clr_RS;         
        Set_RW;        //RS=0,R/W=1,以便讀液晶狀態
        LCD_DATA_DIR=0x00;   
        do
        {
              Set_EN;      //E=1
              LCDStatus=LCD_DATA_IN;
              Clr_EN;     //E=0  
        }
        while((LCDStatus&0x80)!=0);
        LCD_DATA_DIR = 0xFF;
	LCD_CMD_OUT |= P2_3_CS1+P2_6_CS2;
	LCD_CMD_OUT &=~(P2_0_RS+P2_1_RW);
	LCD_DATA_OUT = nByte;
	Set_EN;
	Clr_EN;
}


void DisplayOnOff(BYTE i)// 顯示開關控制命令,i=1開顯示,i=0關顯示
{
        write_command( 0x3e+i );
}

//設置顯示起始行,i=0~63//
void SetStartLine(BYTE i)
{
        write_command( 0xc0+i );
}

//設置頁(行)地址,i=0~7//
void Set_X(BYTE i)
{
        write_command( 0xb8+i );
}

//設置Y(列)地址,i=0~127//
void Set_Y(BYTE i)
{
        write_command( 0x40|i );
}

//寫顯示數據,i為送DDRAM的數據
void write_char( BYTE nByte )
{
        Clr_RS;         
        Set_RW;        //RS=0,R/W=1,以便讀液晶狀態
        LCD_DATA_DIR=0x00;       //P4口為輸入口
        do
        {
              Set_EN;      //E=1
              LCDStatus=LCD_DATA_IN;
              Clr_EN;     //E=0  
        }
        while((LCDStatus&0x80)!=0);
        LCD_DATA_DIR = 0xFF;
	Set_RS;
	Clr_RW;
	LCD_DATA_OUT  = nByte;
	Set_EN;
	Clr_EN;
}

BYTE read_char( void )
{     
      BYTE Rdata=0x00;
      Clr_RS;         
      Set_RW;        //RS=0,R/W=1,以便讀液晶狀態
      LCD_DATA_DIR=0x00;       //P4口為輸入口
      do
      {
            Set_EN;      //E=1
            LCDStatus=LCD_DATA_IN;
            Clr_EN;     //E=0  
      }
      while((LCDStatus&0x80)!=0);

      Set_RS;                 //RS=1 
      Set_RW;               //R/W=1
      Set_EN;                  //E=1
      Clr_EN;
      Set_EN;
      _NOP();
      Rdata=LCD_DATA_IN;
      
      Clr_RS;         
      Set_RW;        //RS=0,R/W=1,以便讀液晶狀態
      LCD_DATA_DIR=0x00;       //P4口為輸入口
      do
      {
            Set_EN;      //E=1
            LCDStatus=LCD_DATA_IN;
            Clr_EN;     //E=0  
      }
      while((LCDStatus&0x80)!=0);

      Set_RS;                 //RS=1 
      Set_RW;               //R/W=1
      Set_EN;                  //E=1
      Clr_EN;
      Set_EN;
      _NOP();
      Rdata=LCD_DATA_IN;
                //E=0 
      return Rdata;   
}
void clear_lcd( void )
{
	BYTE i,j;
	for(i=0;i<8;i++)
	{
		Set_X(i);
		Set_Y(0);
		for(j=0;j<128;j++)
		{
			if(j<=63)
                        {
                          Set_CS1;
                          Clr_CS2;
                          write_char(0x00);
                        }
                          
			else 
                        {
                          Clr_CS1;
                          Set_CS2;
                          write_char(0x00);
                        }
		}
	}
	
}

void lcd_init( void )
{
	LCD_DATA_DIR = 0xFF;               //數據口設為輸出
	LCD_DATA_OUT = 0x00;
	
	LCD_CMD_DIR  = 0xFF;
	P2OUT  = P2_3_CS1 | P2_6_CS2 | P2_7_RST;
        
        Clr_RST;
	_NOP();
	_NOP();
	Set_EN;
	_NOP();
	_NOP();
	Clr_EN;
	_NOP();
	_NOP();
	Set_RST;
	_NOP();
	_NOP();	
        SetStartLine(0);
        DisplayOnOff(1);
        
}


void display_hz( BYTE *chr, BYTE nRow, BYTE nCol )   //16×16漢字輸出(下半烈排)
{
	BYTE i,tmpCol;
	
	Set_X(nRow); //頁地址(x)設定
	tmpCol=nCol;
	for(i=0;i<16;i++)
	{
		if(tmpCol<=63)
		{
                        Set_Y(tmpCol);
                        Set_CS1;
                        Clr_CS2;
			write_char(chr[i]);
		}
		else
		{
                        Set_Y(tmpCol-64);
                        Clr_CS1;
                        Set_CS2;
			write_char(chr[i]);
		}
		tmpCol++;
	}
	
	Set_X(nRow+1);
	tmpCol=nCol;
	for(i=0;i<16;i++)
	{
		if(tmpCol<=63)
		{
                        Set_Y(tmpCol);
                        Set_CS1;
                        Clr_CS2;
			write_char(chr[i+16]);
		}
		else
		{
			Set_Y(tmpCol-64);
                        Clr_CS1;
                        Set_CS2;
			write_char(chr[i+16]);
		}
		tmpCol++;
	}
}
void display_16_16_icon( BYTE *chr, BYTE nRow, BYTE nCol )
{
	BYTE i,tmpCol;
	
	Set_X(nRow);
	tmpCol=nCol;
	for(i=0;i<16;i++)
	{
		if(tmpCol<=63)
		{
                        Set_Y(tmpCol);
                        Set_CS1;
                        Clr_CS2;
			write_char(chr[i]);
		}
		else
		{
                        Set_Y(tmpCol-64);Clr_CS1;
                        Set_CS2;
                        
			write_char(chr[i]);
		}
		tmpCol++;
	}
	
	Set_X(nRow+1);
	tmpCol=nCol;
	for(i=0;i<16;i++)
	{
		if(tmpCol<=63)
		{
                        Set_Y(tmpCol);
                        Set_CS1;
                        Clr_CS2;
			write_char(chr[i+16]);
		}
		else
		{

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本大道av一区二区在线播放| 色哟哟国产精品| av网站免费线看精品| 久久久久9999亚洲精品| 久久99精品久久久久久久久久久久 | 一区二区三区美女视频| 成人午夜私人影院| 亚洲欧洲精品成人久久奇米网| 国产精品综合二区| 亚洲欧洲日韩一区二区三区| 成人高清视频免费观看| 亚洲综合一区在线| 亚洲精品在线一区二区| av成人免费在线| 婷婷激情综合网| 中文字幕国产一区二区| 欧美另类变人与禽xxxxx| 六月丁香婷婷久久| 自拍av一区二区三区| 欧美日韩不卡一区| 99精品久久免费看蜜臀剧情介绍| 国产成人av影院| 尤物在线观看一区| 中文成人av在线| 成人午夜电影网站| 国产精品伦一区| 精品国产一区a| 欧美www视频| 亚洲最快最全在线视频| 色94色欧美sute亚洲线路一久| 国产精品一二三| 精品福利一二区| 午夜亚洲福利老司机| 欧美午夜精品久久久| 亚洲欧美日韩在线播放| 99精品欧美一区二区三区综合在线| 久久久久久97三级| 国产三级精品视频| 欧美精品色一区二区三区| 在线一区二区三区做爰视频网站| 处破女av一区二区| 国产91精品久久久久久久网曝门| 久久国产精品99久久人人澡| 亚洲va欧美va国产va天堂影院| 综合色天天鬼久久鬼色| 亚洲欧洲av色图| 亚洲欧洲性图库| 综合久久久久久| 亚洲六月丁香色婷婷综合久久| 久久九九全国免费| 日韩亚洲欧美一区| 国产日韩欧美激情| 伊人一区二区三区| 日本不卡一二三| 另类人妖一区二区av| 亚洲成人精品影院| 麻豆一区二区在线| 北岛玲一区二区三区四区| www.久久久久久久久| 91在线小视频| 日韩免费看网站| 久久在线观看免费| 亚洲中国最大av网站| 91精品国产麻豆| 日本高清成人免费播放| 亚洲自拍另类综合| 国产精品久久久久桃色tv| 韩国三级中文字幕hd久久精品| 欧美精品在线一区二区三区| 精品一区二区免费| 中文字幕在线观看一区二区| 欧美日本在线播放| 国产福利91精品一区| 亚洲一区欧美一区| 久久精品一区四区| 欧美色综合网站| 国产精品白丝jk黑袜喷水| 亚洲精品ww久久久久久p站| 成+人+亚洲+综合天堂| 欧美高清你懂得| 亚洲线精品一区二区三区| 99国产精品视频免费观看| 欧美va在线播放| 激情综合网av| 久久久亚洲综合| 蜜桃精品在线观看| 日韩欧美一区电影| 国产一区二区女| 日韩欧美一级在线播放| 亚洲成人动漫一区| av电影在线观看完整版一区二区| 久久久久久久久一| 国产久卡久卡久卡久卡视频精品| 91精品欧美一区二区三区综合在| 亚洲免费在线看| 在线精品视频小说1| 亚洲成人自拍偷拍| 欧美一区二区在线不卡| 日韩电影在线看| 欧美精品一区二区三| 久久精品国产99国产| 欧美经典三级视频一区二区三区| 成人动漫在线一区| 国产精品乱码一区二区三区软件| 国产在线精品一区二区夜色| 亚洲激情校园春色| 国产女人18水真多18精品一级做| 成人福利视频在线看| 久久影院午夜论| 日本欧美加勒比视频| 久久久美女毛片| 在线欧美日韩国产| 日韩亚洲欧美在线| 亚洲成av人综合在线观看| 日本中文字幕一区| 亚洲人成影院在线观看| 欧美国产欧美亚州国产日韩mv天天看完整| 欧美一级片在线观看| 337p亚洲精品色噜噜狠狠| 欧美日本在线观看| 欧美美女直播网站| 欧美二区在线观看| 91麻豆精品国产91久久久久| 欧美日韩国产美女| 国产精品久久久久久久浪潮网站| 欧美日韩国产系列| 欧美自拍丝袜亚洲| 成人三级伦理片| 久久精品国产亚洲5555| 性做久久久久久久久| 日韩美女视频一区二区| 日本一区二区视频在线| 久久九九99视频| 久久亚洲综合av| 日韩久久久久久| 精品国产一区二区三区不卡| 欧美久久一二三四区| 日本久久精品电影| 欧美精品自拍偷拍动漫精品| 91久久香蕉国产日韩欧美9色| 成人a区在线观看| 成人免费高清视频| 97久久人人超碰| 在线国产电影不卡| 欧美一区二区高清| 26uuu亚洲综合色| 国产午夜精品一区二区| 久久久久久日产精品| 国产精品福利影院| 亚洲v中文字幕| 国产在线一区二区综合免费视频| 色综合久久综合中文综合网| 欧美性一二三区| 国产精品美女久久久久久久久久久| 国产精品人成在线观看免费| 国产精品家庭影院| 亚洲精品成人精品456| 97精品国产97久久久久久久久久久久| 日韩av中文在线观看| 日韩免费性生活视频播放| 欧美色男人天堂| 久久久久久99久久久精品网站| 亚洲伦在线观看| 日本最新不卡在线| av亚洲产国偷v产偷v自拍| 欧美日韩国产123区| 欧美高清在线一区二区| 午夜视频一区二区三区| 国产91综合一区在线观看| 欧美精品久久99| 亚洲天堂免费在线观看视频| 亚洲日本在线观看| av亚洲精华国产精华| 国产亚洲视频系列| 精品一区二区在线视频| 欧美日韩一区视频| 亚洲国产毛片aaaaa无费看| 国产成人午夜99999| 久久久久久久久岛国免费| 亚洲超碰97人人做人人爱| 色av综合在线| 亚洲色图在线播放| 成人午夜又粗又硬又大| 国产欧美一区二区三区鸳鸯浴| 久久精品国产一区二区| 精品欧美一区二区在线观看| 爽好久久久欧美精品| 欧美特级限制片免费在线观看| 国产精品福利电影一区二区三区四区| 国产美女一区二区| 久久精品亚洲麻豆av一区二区 | 午夜影院在线观看欧美| 日本福利一区二区| 国产精品久久久久久久久免费丝袜 | 成人综合婷婷国产精品久久| 性久久久久久久久久久久| 91麻豆产精品久久久久久| 国产精品久久久久久久裸模| 91精品办公室少妇高潮对白| 欧美美女直播网站|