天天看點

晶聯訊JLX12864G-086-PC-3S LCD顯示屏 C51驅動代碼

晶聯訊JLX12864G-086-PC-3S LCD顯示屏 C51驅動代碼

//7.1.2 例程:以下為串行方式顯示漢字及 ASCII 字元的例程:
//液晶屏型号:JLX12864G-086-PC-3S 
//接口:串行 
//中文字庫:帶中文字庫 IC:JLX-GB2312,豎置橫排 
//驅動 IC:UC1701X(與 ST7565R 相容) 
//主機闆:89C516-001 老主機闆 
//單片機:51 系列 
//版權所有:深圳市晶聯訊電子有限公司:網址  http://www.jlxlcd.cn; 
//程式設計:葉建人,2013 年 10 月 11 日    


#include <reg52.H> 
#include <intrins.h> 


sbit lcd_sclk = P3 ^ 2;  //接口定義:lcd_sclk 就是 LCD 的 SCLK 
sbit lcd_sid = P3 ^ 1;   //接口定義:lcd_sid 就是 LCD 的 SDA 
sbit lcd_rs = P3 ^ 0;    //接口定義:lcd_rs 就是 LCD 的 RS,也叫“CD” 
sbit lcd_reset = P1 ^ 0; //接口定義:lcd_reset 就是 LCD 的 RESET 
sbit lcd_cs1 = P1 ^ 1;   //接口定義:lcd_cs1 就是 LCD 的 CS1 

sbit Rom_IN = P1 ^ 2;    //字庫 IC 接口定義:Rom_IN 就是字庫 IC 的 SI 
sbit Rom_OUT = P1 ^ 3;   //字庫 IC 接口定義:Rom_OUT 就是字庫 IC 的 SO 
sbit Rom_SCK = P1 ^ 4;   //字庫 IC 接口定義:Rom_SCK 就是字庫 IC 的 SCK 
sbit Rom_CS = P1 ^ 5;    //字庫 IC 接口定義 Rom_CS 就是字庫 IC 的 CS# 

sbit key = P2 ^ 0;  //定義一個按鍵 
#define uchar unsigned char  
#define uint unsigned int 
#define ulong unsigned long 

uchar code bmp1[];

uchar code jiong1[] = {//--  文字:  囧  -- 
					   //--  宋體 12;  此字型下對應的點陣為:寬 x 高=16x16   -- 
	0x00,0xFE,0x82,0x42,0xA2,0x9E,0x8A,0x82,0x86,0x8A,0xB2,0x62,0x02,0xFE,0x00,0x00,
	0x00,0x7F,0x40,0x40,0x7F,0x40,0x40,0x40,0x40,0x40,0x7F,0x40,0x40,0x7F,0x00,0x00 };

uchar code lei1[] = {//--  文字:  畾  -- 
					 //--  宋體 12;  此字型下對應的點陣為:寬 x 高=16x16   -- 
	0x80,0x80,0x80,0xBF,0xA5,0xA5,0xA5,0x3F,0xA5,0xA5,0xA5,0xBF,0x80,0x80,0x80,0x00,
	0x7F,0x24,0x24,0x3F,0x24,0x24,0x7F,0x00,0x7F,0x24,0x24,0x3F,0x24,0x24,0x7F,0x00 };
//延時 
void delay(int n_ms)
{
	int j, k;
	for (j = 0; j < n_ms; j++)
		for (k = 0; k < 110; k++)
			;
}
//短延時 
void delay_us(int n_us)
{
	int j, k;
	for (j = 0; j < n_us; j++)
		for (k = 0; k < 1; k++)
			;
}
//等待一個按鍵,我的主機闆是用 P2.0 與 GND 之間接一個按鍵 
void waitkey()
{
repeat:
	if (key == 1) goto repeat;
	else
		delay(600);
}
//寫指令到 LCD 子產品 
void transfer_command_lcd(int data1)
{
	char i;
	lcd_cs1 = 0;
	lcd_rs = 0;
	for (i = 0; i < 8; i++)
	{
		lcd_sclk = 0;    //delay_us(10);  //加少量延時   
		if (data1 & 0x80)
			lcd_sid = 1;
		else
			lcd_sid = 0;
		lcd_sclk = 1;   //delay_us(10);  //加少量延時    
		data1 = data1 <<= 1;
	}
	lcd_cs1 = 1;
}
//寫資料到 LCD 子產品 
void transfer_data_lcd(int data1)
{
	char i;
	lcd_cs1 = 0;
	lcd_rs = 1;
	for (i = 0; i < 8; i++)
	{
		lcd_sclk = 0;
		if (data1 & 0x80)
			lcd_sid = 1;
		else
			lcd_sid = 0;
		lcd_sclk = 1;
		data1 = data1 <<= 1;
	}
	lcd_cs1 = 1;
}
//LCD 子產品初始化 
void initial_lcd()
{
	lcd_reset = 0;          //低電平複位  
	delay(100);
	lcd_reset = 1;       //複位完畢  
	delay(100);
	transfer_command_lcd(0xe2);  //軟複位  
	delay(5);
	transfer_command_lcd(0x2c);  //升壓步聚 1  
	delay(50);
	transfer_command_lcd(0x2e);  //升壓步聚 2  
	delay(50);
	transfer_command_lcd(0x2f);  //升壓步聚 3 
	delay(5);
	transfer_command_lcd(0x23);  //粗調對比度,可設定範圍 0x20~0x27  
	transfer_command_lcd(0x81);  //微調對比度  
	transfer_command_lcd(0x28);  //微調對比度的值,可設定範圍 0x00~0x3f  
	transfer_command_lcd(0xa2);  //1/9 偏壓比(bias)  
	transfer_command_lcd(0xc8);  //行掃描順序:從上到下  
	transfer_command_lcd(0xa0);  //列掃描順序:從左到右  
	transfer_command_lcd(0x40);  //起始行:第一行開始  
	transfer_command_lcd(0xaf);  //開顯示 
}
void lcd_address(uint page, uint column)
{
	column = column - 0x01;
	transfer_command_lcd(0xb0 + page - 1);   //設定頁位址,每 8 行為一頁,全屏共 64 行,被分成 8 頁 
	transfer_command_lcd(0x10 + (column >> 4 & 0x0f)); //設定列位址的高 4 位  
	transfer_command_lcd(column & 0x0f); //設定列位址的低 4 位  
}
//全屏清屏 
void clear_screen()
{
	unsigned char i, j;
	for (i = 0; i<9; i++)
	{
		transfer_command_lcd(0xb0 + i);
		transfer_command_lcd(0x10);
		transfer_command_lcd(0x00);
		for (j = 0; j<132; j++)
		{
			transfer_data_lcd(0x00);
		}
	}
}
//顯示 128x64 點陣圖像 
void display_128x64(uchar *dp)
{
	uint i, j;
	for (j = 0; j<8; j++)
	{
		lcd_address(j + 1, 1);
		for (i = 0; i<128; i++)
		{
			transfer_data_lcd(*dp);     //寫資料到 LCD,每寫完一個 8 位的資料後列位址自動加 1    
			dp++;
		}
	}
}
//顯示 16x16 點陣圖像、漢字、生僻字或 16x16 點陣的其他圖示 
void display_graphic_16x16(uchar page, uchar column, uchar *dp)
{
	uint i, j;
	for (j = 0; j<2; j++)
	{
		lcd_address(page + j, column);
		for (i = 0; i<16; i++)
		{
			transfer_data_lcd(*dp);     //寫資料到 LCD,每寫完一個 8 位的資料後列位址自動加 1    
			dp++;
		}
	}
}
//顯示 8x16 點陣圖像、ASCII, 或 8x16 點陣的自造字元、其他圖示 
void display_graphic_8x16(uchar page, uchar column, uchar *dp)
{
	uint i, j;
	for (j = 0; j<2; j++)
	{
		lcd_address(page + j, column);
		for (i = 0; i<8; i++)
		{
			transfer_data_lcd(*dp);     //寫資料到 LCD,每寫完一個 8 位的資料後列位址自動加 1   
			dp++;
		}
	}
}

//顯示 5X8 點陣圖像、ASCII, 或 5x8 點陣的自造字元、其他圖示 
void display_graphic_5x8(uchar page, uchar column, uchar *dp)
{
	uint i;
	lcd_address(page, column);
	for (i = 0; i<6; i++)
	{
		transfer_data_lcd(*dp);
		dp++;
	}
}

//送指令到晶聯訊字庫 IC 
void send_command_to_ROM(uchar datu)
{
	uchar i;
	for (i = 0; i<8; i++)
	{
		Rom_SCK = 0;
		delay_us(10);
		if (datu & 0x80)
			Rom_IN = 1;
		else
			Rom_IN = 0;
		datu = datu << 1;
		Rom_SCK = 1;
		delay_us(10);
	}
}
//從晶聯訊字庫 IC 中取漢字或字元資料(1 個位元組) 
static uchar get_data_from_ROM()
{
	uchar i;
	uchar ret_data = 0;
	for (i = 0; i<8; i++)
	{
		Rom_OUT = 1;
		Rom_SCK = 0;
		//delay_us(1);  
		ret_data = ret_data << 1;
		if (Rom_OUT)
			ret_data = ret_data + 1;
		else
			ret_data = ret_data + 0;
		Rom_SCK = 1;
		//delay_us(1);  
	}
	return(ret_data);
}
//從指定位址讀出資料寫到液晶屏指定(page,column)座标中 
void get_and_write_16x16(ulong fontaddr, uchar page, uchar column)
{
	uchar i, j, disp_data;
	Rom_CS = 0;
	send_command_to_ROM(0x03);
	send_command_to_ROM((fontaddr & 0xff0000) >> 16);  //位址的高 8 位,共 24 位  
	send_command_to_ROM((fontaddr & 0xff00) >> 8);   //位址的中 8 位,共 24 位  
	send_command_to_ROM(fontaddr & 0xff);     //位址的低 8 位,共 24 位  
	for (j = 0; j<2; j++)
	{
		lcd_address(page + j, column);
		for (i = 0; i<16; i++)
		{
			disp_data = get_data_from_ROM();
			transfer_data_lcd(disp_data); //寫資料到 LCD,每寫完 1 位元組的資料後列位址自動加 1   
		}
	}
	Rom_CS = 1;
}
//從指定位址讀出資料寫到液晶屏指定(page,column)座标中 
void get_and_write_8x16(ulong fontaddr, uchar page, uchar column)
{
	uchar i, j, disp_data;
	Rom_CS = 0;
	send_command_to_ROM(0x03);
	send_command_to_ROM((fontaddr & 0xff0000) >> 16);  //位址的高 8 位,共 24 位  
	send_command_to_ROM((fontaddr & 0xff00) >> 8);   //位址的中 8 位,共 24 位  
	send_command_to_ROM(fontaddr & 0xff);     //位址的低 8 位,共 24 位  
	for (j = 0; j<2; j++)
	{
		lcd_address(page + j, column);
		for (i = 0; i<8; i++)
		{
			disp_data = get_data_from_ROM();
			transfer_data_lcd(disp_data); //寫資料到 LCD,每寫完 1 位元組的資料後列位址自動加 1   
		}
	}
	Rom_CS = 1;
}
//從指定位址讀出資料寫到液晶屏指定(page,column)座标中 
void get_and_write_5x8(ulong fontaddr, uchar page, uchar column)
{
	uchar i, disp_data;
	Rom_CS = 0;
	send_command_to_ROM(0x03);
	send_command_to_ROM((fontaddr & 0xff0000) >> 16);  //位址的高 8 位,共 24 位  
	send_command_to_ROM((fontaddr & 0xff00) >> 8);   //位址的中 8 位,共 24 位  
	send_command_to_ROM(fontaddr & 0xff);     //位址的低 8 位,共 24 位  
	lcd_address(page, column);
	for (i = 0; i<5; i++)
	{
		disp_data = get_data_from_ROM();
		transfer_data_lcd(disp_data); //寫資料到 LCD,每寫完 1 位元組的資料後列位址自動加 1  
	}
	Rom_CS = 1;
}
//**************************************************************** 
ulong  fontaddr = 0;
void display_GB2312_string(uchar page, uchar column, uchar *text)
{
	uchar i = 0;
	while ((text[i]>0x00))
	{
		if (((text[i] >= 0xb0) && (text[i] <= 0xf7)) && (text[i + 1] >= 0xa1))
		{
			//國标簡體(GB2312)漢字在晶聯訊字庫 IC 中的位址由以下公式來計算:    
			//Address = ((MSB - 0xB0) * 94 + (LSB - 0xA1)+ 846)*32+ BaseAdd;BaseAdd=0    
			//由于擔心 8 位單片機有乘法溢出問題,是以分三部取位址    
			fontaddr = (text[i] - 0xb0) * 94;
			fontaddr += (text[i + 1] - 0xa1) + 846;
			fontaddr = (ulong)(fontaddr * 32);

			get_and_write_16x16(fontaddr, page, column);  //從指定位址讀出資料寫到液晶屏指定(page,column)座标中    
			i += 2;
			column += 16;
		}
		else if (((text[i] >= 0xa1) && (text[i] <= 0xa3)) && (text[i + 1] >= 0xa1))
		{          //國标簡體(GB2312)15x16 點的字元在晶聯訊字庫 IC 中的位址由以下公式來計算:    
				   //Address = ((MSB - 0xa1) * 94 + (LSB - 0xA1))*32+ BaseAdd;BaseAdd=0    
				   //由于擔心 8 位單片機有乘法溢出問題,是以分三部取位址    
			fontaddr = (text[i] - 0xa1) * 94;
			fontaddr += (text[i + 1] - 0xa1);
			fontaddr = (ulong)(fontaddr * 32);
			get_and_write_16x16(fontaddr, page, column);  //從指定位址讀出資料寫到液晶屏指定(page,column)座标中    
			i += 2;
			column += 16;
		}
		else if ((text[i] >= 0x20) && (text[i] <= 0x7e))
		{
			fontaddr = (text[i] - 0x20);
			fontaddr = (unsigned long)(fontaddr * 16);
			fontaddr = (unsigned long)(fontaddr + 0x3cf80);

			get_and_write_8x16(fontaddr, page, column);  //從指定位址讀出資料寫到液晶屏指定(page,column)座标中   
			i += 1;
			column += 8;
		}
		else
			i++;
	}
}
void display_string_5x8(uchar page, uchar column, uchar *text)
{
	unsigned char i = 0;
	while ((text[i]>0x00))
	{
		if ((text[i] >= 0x20) && (text[i] <= 0x7e))
		{
			fontaddr = (text[i] - 0x20);
			fontaddr = (unsigned long)(fontaddr * 8);
			fontaddr = (unsigned long)(fontaddr + 0x3bfc0);


			get_and_write_5x8(fontaddr, page, column);  //從指定位址讀出資料寫到液晶屏指定(page,column)座标中 

			i += 1;
			column += 6;
		}
		else
			i++;
	}
}

//===============main program=================== 
void main(void)
{
	while (1)
	{
		initial_lcd();
		clear_screen();
		//clear all dots   
		display_128x64(bmp1);
		delay(2000);
		display_GB2312_string(1, 1, "12864,帶中文字庫"); //在第 1 頁,第 1 列,顯示一串 16x16 點陣漢字或 8x16 的 ASCII 字   
		display_GB2312_string(3, 1, "16X16 簡體漢字庫,");  //顯示一串 16x16 點陣漢字或 8x16 的 ASCII 字.以下雷同   
		display_GB2312_string(5, 1, "或 8X16 點陣 ASCII,");
		display_GB2312_string(7, 1, "或 5x8 點陣 ASCII 碼");
		delay(4000);
		clear_screen();
		display_GB2312_string(1, 1, "晶聯訊成立于二零");
		display_GB2312_string(3, 1, "零四年十一月七日");
		display_GB2312_string(5, 1, "主要生産液晶子產品");
		display_GB2312_string(7, 1, "品質至上真誠服務");
		delay(4000);
		display_GB2312_string(1, 1, "GB2312 簡體字庫及");
		display_GB2312_string(3, 1, "有圖型功能,可自");
		display_GB2312_string(5, 1, "編大字或圖像或生");
		display_GB2312_string(7, 1, "僻字,例如:    ");
		display_graphic_16x16(7, 97, jiong1);     //在第 7 頁,第 81列顯示單個自編生僻漢字“囧”   
		display_graphic_16x16(7, 113, lei1);     //顯示單個自編生僻漢字"畾“   delay(4000);   
		clear_screen();
		display_GB2312_string(1, 1, "<[email protected]#$%^&*()_-+]/"); //在第 1 頁,第 1 列,顯示一串 16x16 點陣漢字或 8*16 的 ASCII 字  
		display_string_5x8(3, 1, "<[email protected]#$%^&*()_-+]/;.,?[");//在第 3 頁,第 1 列,顯示一串 5x8 點陣的 ASCII 字   
		display_string_5x8(4, 1, "JLX electronics Co., ");//顯示一串 5x8 點陣的 ASCII 字   
		display_string_5x8(5, 1, "Ltd. established at  ");//顯示一串 5x8 點陣的 ASCII 字    
		display_string_5x8(6, 1, "year 2004.Focus LCM. ");//顯示一串 5x8 點陣的 ASCII 字   
		display_string_5x8(7, 1, "TEL:0755-29784961    ");//顯示一串 5x8 點陣的 ASCII 字  
		display_string_5x8(8, 1, "FAX:0755-29784964    ");//顯示一串 5x8 點陣的 ASCII 字   
		delay(4000);
		display_GB2312_string(1, 1, "啊阿埃挨哎唉哀皚"); //在第 1 頁,第 1 列,顯示一串 16x16 點陣漢字或 8x16 的 ASCII 字   
		display_GB2312_string(3, 1, "癌藹矮艾礙愛隘鞍");  //顯示一串 16x16 點陣漢字或 8x16 的 ASCII 字.以下雷同   
		display_GB2312_string(5, 1, "氨安俺按暗岸胺案");
		display_GB2312_string(7, 1, "肮昂盎凹敖熬翺襖");
		delay(4000);
		display_GB2312_string(1, 1, "鬟鬣麽麾縻麂麇麈");
		display_GB2312_string(3, 1, "麋麒鏖麝麟黛黜黝");
		display_GB2312_string(5, 1, "黠黟黢黩黧黥黪黯");
		display_GB2312_string(7, 1, "鼢鼬鼯鼹鼷鼽鼾齄");
		delay(4000);
	}
}
uchar code bmp1[] = {
	//--  調入了一幅圖像:D:\我的檔案\My Pictures\12864-555.bmp  -- //--  寬度 x 高度=128x64  -- 
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
	0x00,0x00,0x00,0x80,0x80,0xC0,0xC0,0xC0,0xC0,0xE0,0x60,0xE0,0xE0,0xE0,0xE0,0x60,
	0x60,0x60,0x60,0x60,0x60,0x60,0xE0,0xE0,0xE0,0xE0,0xC0,0xC0,0xC0,0xC0,0x80,0x80,
	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,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,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,0x80,0xC0,0xE0,0x70,0x38,0x18,0x1C,0x0C,
	0x0E,0x07,0x03,0x03,0x01,0x81,0xE0,0x78,0x1C,0x0E,0x07,0x03,0x01,0x00,0x00,0x00,
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x07,0x0E,0x1C,0x79,0xE1,0x83,
	0x03,0x07,0x0E,0x0C,0x1C,0x18,0x38,0x70,0xE0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0xC0,0xC0,0xC0,
	0xC0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,
	0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,
	0xE0,0xE0,0xE0,0xC0,0xC0,0xC0,0xC0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
	0x00,0x00,0x00,0x80,0xF0,0x78,0x1E,0x07,0x03,0x81,0x80,0xC0,0xC0,0xC0,0xE0,0x60,
	0x60,0x60,0x70,0xF0,0xFE,0x3F,0x19,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,
	0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x38,0x31,0x3F,
	0xFE,0xF0,0x60,0x60,0xE0,0xC0,0xC0,0xC0,0x80,0x81,0x03,0x07,0x1E,0x78,0xF0,0x80,
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xFC,0xFF,0x7F,0x07,0x0F,0x1F,0x3D,
	0x79,0x71,0xF0,0xE0,0xC0,0x80,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,0x80,
	0x80,0xC0,0xE0,0xF0,0x71,0x79,0x3D,0x1F,0x0F,0xFF,0xFE,0xFC,0x00,0x00,0x00,0x00,
	0x00,0x80,0xFE,0xFF,0xF9,0x1C,0x0E,0x07,0x03,0x03,0x01,0x01,0x00,0x00,0x00,0x00,
	0x00,0x00,0xFF,0xFF,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,0xFF,0xFF,0x00,0x00,0x00,0x00,0x01,0x01,0x03,0x03,0x07,0x0E,0x1C,0xF9,0xFF,
	0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,
	0x00,0x00,0x00,0x01,0x03,0x07,0x0F,0x0E,0x9E,0xFC,0xF8,0xF0,0xE0,0xC0,0xC0,0x80,
	0x00,0x00,0x00,0x00,0x00,0x80,0xC0,0xC0,0xE0,0xF0,0xF8,0xF8,0xFC,0x9E,0x0F,0x07,
	0x03,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,
	0x00,0x00,0x3F,0xFF,0xDF,0x38,0x70,0xE0,0xC0,0xC0,0x80,0x80,0x00,0x00,0x00,0x00,
	0x00,0x00,0xFF,0xFF,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,0xFF,0xFF,0x00,0x00,0x00,0x00,0x80,0x80,0xC0,0xC0,0xE0,0x70,0x38,0xDF,0xFF,
	0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,
	0x80,0xC0,0xE0,0xF0,0x78,0x3C,0x1E,0x0F,0x07,0x03,0x01,0x00,0x01,0x01,0x03,0x07,
	0x0F,0x1E,0x1E,0x0E,0x0F,0x07,0x03,0x01,0x01,0x00,0x01,0x01,0x03,0x07,0x0F,0x1E,
	0x3C,0x78,0xF0,0xE0,0xC0,0x80,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,
	0x00,0x00,0x00,0x00,0x07,0x0F,0x3C,0x70,0xE0,0xC1,0x81,0x03,0x03,0x03,0x07,0x06,
	0x06,0x06,0x0E,0x0F,0x7F,0xFC,0x98,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,
	0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x0C,0x8C,0xFC,
	0x7F,0x0F,0x06,0x06,0x07,0x03,0x03,0x03,0x81,0xC1,0xE0,0x70,0x3C,0x0F,0x07,0x00,
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x1F,0x3F,0x7C,0xFC,0xFE,0xEF,
	0xE7,0xE3,0xE1,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,
	0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,
	0xE0,0xE0,0xE0,0xE1,0xE3,0xE7,0xEF,0xFE,0x7C,0x3F,0x1F,0x0F,0x00,0x00,0x00,0x00,
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x07,0x0E,0x0C,0x1C,0x18,
	0x38,0x70,0x60,0xE0,0xC0,0xC1,0x87,0x9E,0xB8,0xF0,0xE0,0xC0,0x80,0x00,0x00,0x00,
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xC0,0xE0,0xF0,0xB8,0xDE,0xC7,0xE1,
	0x60,0x70,0x38,0x18,0x1C,0x0C,0x0E,0x07,0x03,0x01,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,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,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,0x00,0x01,0x01,0x01,0x01,0x03,0x03,0x03,0x03,0x03,0x07,0x07,
	0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x03,0x03,0x03,0x01,0x01,0x01,0x01,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,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,0x00,0x00,0x00,0x00,0x00,0x00,
	0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

};

















           

繼續閱讀