12832点阵低功耗液晶屏HGO128321是128*32点阵的图形点阵液晶屏,尺寸为43*44mm,显示尺寸39*16.2mm,点大小0.29*0.43mm,是一款尺寸很小的液晶屏,低功耗设计,功耗仅为uA级别,产品接口定义如下:
1 NC - No connection
2 CS0 L Chip select,active “L”
3 RST L Reset signal ,active “L”
4 CD H/L
H: Display data
L: Control data
5 SCK H/L Serial clock input
6 SDA H/L Serial data input
7 VDD 3.3V Power supply for logic
8 VSS 0V GND
9 VB0+
10 VB0-
11 VB1+
12 VB1-
-
LCD bias voltages . These
are the voltage sources to
provide SEG driving
currents.These voltages are
generated internally.
Connect capacitors of CBX
value between VBX+ and
VBX-.
13 VLCDIN
14 VLCDOUT
Main LCD power
supply.High voltage LCD
supply connect a capacitor to
VSS.
参考样例程序
#include <reg52.h>
#include <stdio.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit RES=P3^0;
sbit CS1=P2^7;
sbit A0=P2^6;
sbit SDA=P2^5;
sbit SCK=P2^4;
uchar code hz[]={
/* 点阵:16x16
提取点阵方向:纵向
字节掉转:是
字节方式:C语言 */
0x10,0x22,0x64,0x0C,0x80,0x04,0xC4,0x34, // 液
0x05,0xC6,0xBC,0x24,0x24,0xE6,0x04,0x00,
0x04,0x04,0xFE,0x01,0x02,0x01,0xFF,0x42,
0x21,0x16,0x08,0x15,0x23,0x60,0x20,0x00,
0x00,0x00,0x00,0x00,0xFF,0x49,0x49,0x49, // 晶
0x49,0x49,0xFF,0x00,0x00,0x80,0x00,0x00,
0x00,0xFF,0x49,0x49,0x49,0x49,0xFF,0x00,
0xFF,0x49,0x49,0x49,0x49,0xFF,0x01,0x00,
0x10,0x10,0xD0,0xFF,0x94,0x14,0xE4,0xBF, // 模
0xA4,0xA4,0xA4,0xBF,0xF4,0x26,0x04,0x00,
0x04,0x03,0x00,0xFF,0x08,0x89,0x8B,0x4A,
0x2A,0x1E,0x2A,0x2A,0x4B,0xC8,0x48,0x00,
0x20,0x20,0x20,0xFF,0x20,0x20,0x10,0x10, // 块
0xFF,0x10,0x10,0x10,0xF8,0x10,0x00,0x00,
0x08,0x18,0x08,0x0F,0x84,0x46,0x22,0x1A,
0x07,0x0A,0x12,0x22,0x43,0xC2,0x42,0x00,
0x00,0x08,0x08,0x08,0x08,0x08,0x09,0xFE, // 主
0x08,0x08,0x08,0x88,0x0C,0x08,0x00,0x00,
0x40,0x40,0x41,0x41,0x41,0x41,0x41,0x7F,
0x41,0x41,0x41,0x41,0x41,0x60,0x40,0x00,
0x00,0x02,0x7A,0x4A,0x4A,0x7E,0xCA,0x4A, // 要
0x4A,0x7E,0x4A,0x4A,0x7B,0x02,0x00,0x00,
0x02,0x02,0x82,0x82,0x8A,0x56,0x53,0x22,
0x22,0x52,0x4E,0x82,0x02,0x03,0x02,0x00,
0x00,0x00,0xFC,0x04,0x24,0xC4,0x04,0x15, // 应
0x66,0x84,0x04,0x04,0x84,0x76,0x04,0x00,
0x40,0x30,0x0F,0x40,0x40,0x40,0x4F,0x40,
0x40,0x63,0x50,0x4C,0x43,0x60,0x40,0x00,
0x00,0x00,0xFE,0x22,0x22,0x22,0x22,0xFE, // 用
0x22,0x22,0x22,0x22,0xFF,0x02,0x00,0x00,
0x80,0x60,0x1F,0x02,0x02,0x02,0x02,0x7F,
0x02,0x02,0x42,0x82,0x7F,0x00,0x00,0x00,
0x00,0x00,0x00,0xFF,0x88,0x88,0x88,0x88, // 与
0x88,0x88,0x88,0x88,0xCC,0x88,0x00,0x00,
0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,
0x08,0x4C,0x88,0x40,0x3F,0x00,0x00,0x00,
0x00,0xF8,0x48,0x48,0x48,0x48,0xFF,0x48, // 电
0x48,0x48,0x48,0xFC,0x08,0x00,0x00,0x00,
0x00,0x07,0x02,0x02,0x02,0x02,0x3F,0x42,
0x42,0x42,0x42,0x47,0x40,0x70,0x00,0x00,
0x00,0x10,0x10,0x10,0x10,0x10,0xFF,0x10, // 力
0x10,0x10,0x10,0x10,0xF8,0x10,0x00,0x00,
0x00,0x80,0x80,0x80,0x60,0x18,0x07,0x00,
0x20,0x40,0x80,0x40,0x3F,0x00,0x00,0x00,
0x00,0x10,0x88,0xC4,0x23,0x40,0x42,0x42, // 行
0x42,0x42,0x42,0xC2,0x43,0x62,0x40,0x00,
0x02,0x01,0x00,0xFF,0x00,0x00,0x00,0x00,
0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,
0x00,0x10,0x60,0x80,0x00,0xFF,0x00,0x00, // 业
0x00,0xFF,0x00,0x00,0xC0,0x30,0x00,0x00,
0x40,0x40,0x40,0x47,0x40,0x7F,0x40,0x40,
0x40,0x7F,0x44,0x43,0x40,0x60,0x40,0x00,
0x02,0x02,0x02,0xF2,0x12,0x12,0x12,0x12, // 可
0xFA,0x12,0x02,0xFE,0x02,0x03,0x02,0x00,
0x00,0x00,0x00,0x0F,0x04,0x04,0x04,0x04,
0x0F,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,
0x00,0xF0,0x10,0x10,0x10,0x10,0x10,0xFF, // 由
0x10,0x10,0x10,0x10,0x10,0xF8,0x10,0x00,
0x00,0xFF,0x42,0x42,0x42,0x42,0x42,0x7F,
0x42,0x42,0x42,0x42,0x42,0xFF,0x00,0x00,
0x10,0x10,0x10,0xFF,0x90,0x50,0x0C,0x44, // 控
0x24,0x15,0x06,0x14,0x24,0x54,0x0C,0x00,
0x02,0x42,0x81,0x7F,0x00,0x40,0x42,0x42,
0x42,0x42,0x7E,0x42,0x43,0x62,0x40,0x00,
0x40,0x60,0x5E,0x48,0x48,0xFF,0x48,0x4C, // 制
0x68,0x40,0xF8,0x00,0x00,0xFF,0x00,0x00,
0x00,0x00,0x3F,0x01,0x01,0xFF,0x11,0x21,
0x1F,0x00,0x07,0x40,0x80,0x7F,0x00,0x00,
0x80,0x80,0x9F,0x91,0x91,0x91,0x9F,0xE0, // 器
0x9F,0x91,0xB1,0xD1,0x9F,0xC0,0x80,0x00,
0x08,0x08,0xFC,0x8C,0x8A,0x8A,0xF9,0x00,
0xF9,0x8A,0x8A,0x8C,0xFC,0x08,0x08,0x00,
0x10,0x10,0x10,0xFF,0x90,0x50,0x00,0x3F, // 指
0x48,0x48,0x48,0x44,0x46,0xC4,0x70,0x00,
0x02,0x42,0x81,0x7F,0x00,0x00,0x00,0xFF,
0x49,0x49,0x49,0x49,0x49,0xFF,0x01,0x00,
0x80,0x80,0x40,0x20,0x10,0x08,0x14,0x63, // 令
0x04,0x08,0x10,0x20,0x40,0xC0,0x40,0x00,
0x00,0x00,0x00,0x01,0x01,0x09,0x11,0x21,
0xD1,0x09,0x05,0x03,0x00,0x00,0x00,0x00,
0x20,0x21,0xE6,0x00,0x00,0xFE,0x82,0x92, // 调
0x92,0xFE,0x92,0xD2,0x82,0xFF,0x02,0x00,
0x00,0x00,0x3F,0x90,0x48,0x3F,0x00,0x3E,
0x12,0x12,0x12,0x5E,0x80,0x7F,0x00,0x00,
0x04,0x24,0x24,0x24,0x24,0x3F,0xE4,0x24, // 节
0x24,0x3F,0x24,0x24,0xF4,0x26,0x04,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,
0x00,0x04,0x08,0x10,0x0F,0x00,0x00,0x00,
0x08,0x48,0x88,0x08,0xC8,0x38,0x10,0x90, // 对
0x10,0x10,0x10,0xFF,0x10,0x18,0x10,0x00,
0x20,0x10,0x0C,0x03,0x04,0x18,0x00,0x00,
0x03,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,
0x00,0x00,0xFE,0x40,0x40,0x60,0x40,0x00, // 比
0xFF,0x80,0x40,0x20,0x30,0x00,0x00,0x00,
0x00,0x40,0x7F,0x20,0x20,0x10,0x10,0x00,
0x3F,0x40,0x40,0x40,0x40,0x40,0x78,0x00,
0x00,0x00,0xFC,0x24,0x24,0x24,0xFC,0xA5, // 度
0xA6,0xA4,0xFC,0x24,0x34,0x26,0x04,0x00,
0x40,0x20,0x9F,0x80,0x42,0x42,0x26,0x2A,
0x12,0x2A,0x26,0x42,0x40,0xC0,0x40,0x00,
0x20,0x24,0x24,0xA4,0xFC,0x22,0x33,0x22, // 和
0xF0,0x10,0x10,0x10,0x10,0xF8,0x10,0x00,
0x10,0x08,0x06,0x01,0xFF,0x01,0x06,0x00,
0x3F,0x10,0x10,0x10,0x10,0x3F,0x00,0x00,
0x10,0x10,0xD0,0xFF,0x90,0x10,0x00,0xFE, // 相
0x22,0x22,0x22,0x22,0x22,0xFF,0x02,0x00,
0x04,0x03,0x00,0xFF,0x00,0x01,0x00,0xFF,
0x42,0x42,0x42,0x42,0x42,0xFF,0x00,0x00,
0x00,0x10,0x10,0x11,0x12,0x1C,0x10,0xF0, // 关
0x10,0x18,0x14,0x13,0x1A,0x90,0x00,0x00,
0x81,0x81,0x41,0x41,0x21,0x11,0x0D,0x03,
0x0D,0x11,0x21,0x21,0x41,0xC1,0x41,0x00,
0x20,0x20,0x20,0x28,0xA8,0x6C,0x3B,0x28, // 参
0xA8,0x6A,0xAC,0x28,0x20,0x30,0x20,0x00,
0x04,0x84,0x82,0x81,0x4A,0x4A,0x49,0x25,
0x24,0x12,0x10,0x09,0x02,0x06,0x02,0x00,
0x10,0x92,0x54,0x30,0xFF,0x50,0x94,0x32, // 数
0xD8,0x17,0x10,0x10,0xF0,0x18,0x10,0x00,
0x02,0x82,0x4E,0x33,0x22,0x52,0x8E,0x40,
0x23,0x14,0x08,0x16,0x61,0xC0,0x40,0x00,
};
uchar code TAB2[4][32]={
0x10,0x22,0x64,0x0C,0xC0,0x44,0x54,0x54, // 清
0x54,0x7F,0x54,0x54,0xD6,0x44,0x40,0x00,
0x04,0x04,0xFE,0x01,0x00,0x00,0xFF,0x15,
0x15,0x15,0x55,0x95,0x7F,0x01,0x00,0x00,
0x40,0x42,0xCC,0x00,0x20,0x20,0x20,0xA0, // 达
0x7F,0x20,0x20,0x20,0x30,0x20,0x00,0x00,
0x40,0x20,0x1F,0x20,0x50,0x48,0x46,0x41,
0x40,0x41,0x42,0x4C,0x58,0x60,0x20,0x00,
0x40,0x40,0x42,0x44,0x58,0xC0,0x40,0x7F, // 光
0x40,0xC0,0x50,0x48,0x46,0x64,0x40,0x00,
0x00,0x80,0x40,0x20,0x18,0x07,0x00,0x00,
0x00,0x3F,0x40,0x40,0x40,0x40,0x70,0x00,
0x00,0xF8,0x48,0x48,0x48,0x48,0xFF,0x48, // 电
0x48,0x48,0x48,0xFC,0x08,0x00,0x00,0x00,
0x00,0x07,0x02,0x02,0x02,0x02,0x3F,0x42,
0x42,0x42,0x42,0x47,0x40,0x70,0x00,0x00,
};
uchar code TAB1[]={
0x00,0x7F,0x08,0x08,0x08,0x7F,0x00,0x00, /*"h"=28h*/
0x00,0x3E,0x41,0x41,0x49,0x7A,0x00,0x00, /*"G"=27h*/
0x00,0x00,0x42,0x7F,0x40,0x00,0x00,0x00, /*"1"=11h*/
0x00,0x42,0x61,0x51,0x49,0x46,0x00,0x00, /*"2"=12h*/
0x00,0x36,0x49,0x49,0x49,0x36,0x00,0x00, /*"8"=18h*/
0x00,0x3C,0x4A,0x49,0x49,0x30,0x00,0x00, /*"6"=16h*/
0x00,0x18,0x14,0x12,0x7F,0x10,0x00,0x00, /*"4"=14h*/
0x00,0x00,0x42,0x7F,0x40,0x00,0x00,0x00, /*"1"=11h*/
0x00,0x21,0x41,0x45,0x4B,0x31,0x00,0x00, /*"3"=13h*/
};
uchar code TAB[]={ 0xff,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"0"=10h*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"1"=11h*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"2"=12h*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"3"=13h*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"4"=14h*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"5"=15h*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"6"=16h*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"7"=17h*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"8"=18h*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"9"=19h*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*":"=1Ah*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*";"=1Bh*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"<"=1Ch*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*"="=1Dh*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01, /*">"=1Eh*/
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0xff, /*"?"=1Fh*/
0xff,0x32,0x49,0x79,0x41,0x3E,0x00,0x00, /*"@"=20h*/
0x00,0x7E,0x11,0x11,0x11,0x7E,0x00,0x00, /*"A"=21h*/
0x00,0x41,0x7F,0x49,0x49,0x36,0x00,0x00, /*"B"=22h*/
0x00,0x3E,0x41,0x41,0x41,0x22,0x00,0x00, /*"C"=23h*/
0x00,0x41,0x7F,0x41,0x41,0x3E,0x00,0x00, /*"D"=24h*/
0x00,0x7F,0x49,0x49,0x49,0x49,0x00,0x00, /*"E"=25h*/
0x00,0x7F,0x09,0x09,0x09,0x01,0x00,0x00, /*"F"=26h*/
0x00,0x3E,0x41,0x41,0x49,0x7A,0x00,0x00, /*"G"=27h*/
0x00,0x7F,0x08,0x08,0x08,0x7F,0x00,0x00, /*"h"=28h*/
0x00,0x00,0x41,0x7F,0x41,0x00,0x00,0x00, /*"I"=29h*/
0x00,0x20,0x40,0x41,0x3F,0x01,0x00,0x00, /*"J"=2Ah*/
0x00,0x7F,0x08,0x14,0x22,0x41,0x00,0x00, /*"K"=2Bh*/
0x00,0x7F,0x40,0x40,0x40,0x40,0x00,0x00, /*"L"=2Ch*/
0x00,0x7F,0x02,0x0C,0x02,0x7F,0x00,0x00, /*"M"=2Dh*/
0x00,0x7F,0x06,0x08,0x30,0x7F,0x00,0x00, /*"N"=2Eh*/
0x00,0x3E,0x41,0x41,0x41,0x3E,0x00,0xff, /*"O"=2Fh*/
0xff,0x7F,0x09,0x09,0x09,0x06,0x00,0x00, /*"P"=30h*/
0x00,0x3E,0x41,0x51,0x21,0x5E,0x00,0x00, /*"Q"=31h*/
0x00,0x7F,0x09,0x19,0x29,0x46,0x00,0x00, /*"R"=32h*/
0x00,0x26,0x49,0x49,0x49,0x32,0x00,0x00, /*"S"=33h*/
0x00,0x01,0x01,0x7F,0x01,0x01,0x00,0x00, /*"T"=34h*/
0x00,0x3F,0x40,0x40,0x40,0x3F,0x00,0x00, /*"U"=35h*/
0x00,0x1F,0x20,0x40,0x20,0x1F,0x00,0x00, /*"V"=36h*/
0x00,0x7F,0x20,0x18,0x20,0x7F,0x00,0x00, /*"W"=37h*/
0x00,0x63,0x14,0x08,0x14,0x63,0x00,0x00, /*"X"=38h*/
0x00,0x07,0x08,0x70,0x08,0x07,0x00,0x00, /*"Y"=39h*/
0x00,0x61,0x51,0x49,0x45,0x43,0x00,0x00, /*"Z"=3Ah*/
0x00,0x00,0x7F,0x41,0x41,0x00,0x00,0x00, /*"["=3Bh*/
0x00,0x02,0x04,0x08,0x10,0x20,0x00,0x00, /*"\"=3Ch*/
0x00,0x00,0x41,0x41,0x7F,0x00,0x00,0x00, /*"]"=3Dh*/
0x00,0x04,0x02,0x01,0x02,0x04,0x00,0x00, /*"^"=3Eh*/
0x00,0x40,0x40,0x40,0x40,0x40,0x00,0xff, /*"_"=3Fh*/
0xff,0x01,0x02,0x04,0x00,0x00,0x00,0x00, /*"`"=40h*/
0x00,0x20,0x54,0x54,0x54,0x78,0x00,0x00, /*"a"=41h*/
0x00,0x7F,0x48,0x44,0x44,0x38,0x00,0x00, /*"b"=42h*/
0x00,0x38,0x44,0x44,0x44,0x28,0x00,0x00, /*"c"=43h*/
0x00,0x38,0x44,0x44,0x48,0x7F,0x00,0x00, /*"d"=44h*/
0x00,0x38,0x54,0x54,0x54,0x18,0x00,0x00, /*"e"=45h*/
0x00,0x00,0x08,0x7E,0x09,0x02,0x00,0x00, /*"f"=46h*/
0x00,0x0C,0x52,0x52,0x4C,0x3E,0x00,0x00, /*"g"=47h*/
0x00,0x7F,0x08,0x04,0x04,0x78,0x00,0x00, /*"h"=48h*/
0x00,0x00,0x44,0x7D,0x40,0x00,0x00,0x00, /*"i"=49h*/
0x00,0x20,0x40,0x44,0x3D,0x00,0x00,0x00, /*"j"=4Ah*/
0x00,0x00,0x7F,0x10,0x28,0x44,0x00,0x00, /*"k"=4Bh*/
0x00,0x00,0x41,0x7F,0x40,0x00,0x00,0x00, /*"l"=4Ch*/
0x00,0x7C,0x04,0x78,0x04,0x78,0x00,0x00, /*"m"=4Dh*/
0x00,0x7C,0x08,0x04,0x04,0x78,0x00,0x00, /*"n"=4Eh*/
0x00,0x38,0x44,0x44,0x44,0x38,0x00,0xff, /*"o'=4Fh*/
0xff,0x7E,0x0C,0x12,0x12,0x0C,0x00,0x00, /*"p"=50h*/
0x00,0x0C,0x12,0x12,0x0C,0x7E,0x00,0x00, /*"q"=51h*/
0x00,0x7C,0x08,0x04,0x04,0x08,0x00,0x00, /*"r"=52h*/
0x00,0x58,0x54,0x54,0x54,0x64,0x00,0x00, /*"s"=53h*/
0x00,0x04,0x3F,0x44,0x40,0x20,0x00,0x00, /*"t"=54h*/
0x00,0x3C,0x40,0x40,0x3C,0x40,0x00,0x00, /*"u"=55h*/
0x00,0x1C,0x20,0x40,0x20,0x1C,0x00,0x00, /*"v"=56h*/
0x00,0x3C,0x40,0x30,0x40,0x3C,0x00,0x00, /*"w"=57h*/
0x00,0x44,0x28,0x10,0x28,0x44,0x00,0x00, /*"x"=58h*/
0x00,0x1C,0xA0,0xA0,0x90,0x7C,0x00,0x00, /*"y"=59h*/
0x00,0x44,0x64,0x54,0x4C,0x44,0x00,0x00, /*"z"=5Ah*/
0x00,0x00,0x08,0x36,0x41,0x00,0x00,0x00, /*"{"=5Bh*/
0x00,0x00,0x00,0x77,0x00,0x00,0x00,0x00, /*"|"=5Ch*/
0x00,0x00,0x41,0x36,0x08,0x00,0x00,0x00, /*"}"=5Dh*/
0x00,0x02,0x01,0x02,0x04,0x02,0x00,0x00, /*"~"=5Fh*/
0x00,0x3C,0x40,0x30,0x40,0x3C,0x00,0xff, /*"w"=57h*/
0xff,0x44,0x28,0x10,0x28,0x44,0x00,0x00, /*"x"=58h*/
0x00,0x1C,0xA0,0xA0,0x90,0x7C,0x00,0x00, /*"y"=59h*/
0x00,0x44,0x64,0x54,0x4C,0x44,0x00,0x00, /*"z"=5Ah*/
0x00,0x36,0x49,0x49,0x49,0x36,0x00,0x00, /*"8"=18h*/
0x00,0x06,0x49,0x49,0x29,0x1E,0x00,0x00, /*"9"=19h*/
0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00, /*":"=1Ah*/
0x00,0x00,0x56,0x36,0x00,0x00,0x00,0x00, /*";"=1Bh*/
0x00,0x08,0x14,0x22,0x41,0x00,0x00,0x00, /*"<"=1Ch*/
0x00,0x14,0x14,0x14,0x14,0x14,0x00,0x00, /*"="=1Dh*/
0x00,0x00,0x41,0x22,0x14,0x08,0x00,0x00, /*">"=1Eh*/
0x00,0x02,0x01,0x51,0x09,0x06,0x00,0x00, /*"?"=1Fh*/
0x00,0x32,0x49,0x79,0x41,0x3E,0x00,0x00, /*"@"=20h*/
0x00,0x7E,0x11,0x11,0x11,0x7E,0x00,0x00, /*"A"=21h*/
0x00,0x41,0x7F,0x49,0x49,0x36,0x00,0x00, /*"B"=22h*/
0x00,0x3E,0x41,0x41,0x41,0x22,0x00,0x00, /*"C"=23h*/
0x00,0x41,0x7F,0x41,0x41,0x3E,0x00,0xff, /*"D"=24h*/
0xff,0x01,0x01,0x79,0x05,0x03,0x00,0x00, /*"7"=17h*/
0x00,0x36,0x49,0x49,0x49,0x36,0x00,0x00, /*"8"=18h*/
0x00,0x06,0x49,0x49,0x29,0x1E,0x00,0x00, /*"9"=19h*/
0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00, /*":"=1Ah*/
0x00,0x00,0x56,0x36,0x00,0x00,0x00,0x00, /*";"=1Bh*/
0x00,0x08,0x14,0x22,0x41,0x00,0x00,0x00, /*"<"=1Ch*/
0x00,0x14,0x14,0x14,0x14,0x14,0x00,0x00, /*"="=1Dh*/
0x00,0x00,0x41,0x22,0x14,0x08,0x00,0x00, /*">"=1Eh*/
0x00,0x02,0x01,0x51,0x09,0x06,0x00,0x00, /*"?"=1Fh*/
0x00,0x32,0x49,0x79,0x41,0x3E,0x00,0x00, /*"@"=20h*/
0x00,0x7E,0x11,0x11,0x11,0x7E,0x00,0x00, /*"A"=21h*/
0x00,0x41,0x7F,0x49,0x49,0x36,0x00,0x00, /*"B"=22h*/
0x00,0x3E,0x41,0x41,0x41,0x22,0x00,0x00, /*"C"=23h*/
0x00,0x41,0x7F,0x41,0x41,0x3E,0x00,0x00, /*"D"=24h*/
0x00,0x7F,0x49,0x49,0x49,0x49,0x00,0x00, /*"E"=25h*/
0x00,0x7F,0x49,0x49,0x49,0x49,0x00,0xff,
0xff,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*"2"=12h*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*"3"=13h*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*"4"=14h*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*"5"=15h*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*"6"=16h*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*"7"=17h*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*"8"=18h*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*"9"=19h*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*":"=1Ah*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*";"=1Bh*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*"<"=1Ch*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*"="=1Dh*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80, /*">"=1Eh*/
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xff, }; /*"?"=1Fh*/
/*************************************
延时
****************************************/
void delayus(uchar m)
{
while(--m);
}
void Delay(uint t)
{uint i,j;
for(i=0;i<t;i++)
for(j=0;j<205;j++)
_nop_();_nop_();_nop_();_nop_();
}
/*************************************
发送数据
****************************************/
SendByte(unsigned char Dbyte)
{
unsigned char i ;
for(i=0 ;i< 8 ;i++)
{
SCK = 0 ;
delayus(1);
Dbyte=Dbyte<< 1 ; //左移一位
delayus(1);
SDA = CY ; //移出的位给SDA
delayus(1);
SCK = 1 ;
SCK = 0 ;
}
}
/*************************************
接收数据
****************************************/
unsigned char receiveByte()
{
unsigned char Dbyte;
unsigned char i ;
SDA=1;
for(i=0 ;i< 8 ;i++)
{
SCK = 0 ;
delayus(1);
Dbyte=Dbyte<< 1 ; //左移一位
delayus(1);
SCK = 1 ;
delayus(1);
if(SDA) //移出的位给SDA
Dbyte|=0x01;
}
SCK=1;
SDA=1;
return Dbyte;
}
/*************************************
写指令
****************************************/
void Writecom(uchar wcom)
{
CS1 =0;
A0=0;
delayus(1);
SendByte(wcom) ;
delayus(1);
A0= 1 ;
CS1 =1;}
/*************************************
写数据
****************************************/
void Writedata(uchar wdata)
{
CS1 = 0;
A0=1;
SendByte(wdata) ;
delayus(6);
A0 = 0 ;
CS1 =1;}
/*************************************
读数据
****************************************/
uchar readdata(void)
{
uchar wdata;
CS1 = 0;
A0=1;
SCK=0;
delayus(2);
SCK=1;
wdata=receiveByte();
delayus(6);
A0 = 0 ;
CS1 =1;}
/*************************************
起始行
****************************************/
void startline(uchar line)
{
line=line&0x3f;///定义低5位
line=line|0x40;///第一行或
Writecom(line);
}
/*************************************
起始页
****************************************/
void startpage(uchar page)
{
page=page&0x0f;///定义低4位
page=page|0xb0;///第一页
Writecom(page);
}
/*************************************
起始列
****************************************/
void startcolumn(uchar column)
{
uchar temp;
temp=column;
column=column&0x0f;///定义A3-A0;
column=column|0x00;
Writecom(column);
temp=temp>>4;
//column=temp/16;////////////////16
column=temp&0x0f;///定义A7-A4;
column=column|0x10;
Writecom(column);
}
/*************************************
清除
****************************************/
void Clear(uchar m)
{uchar i,j;
for(i=0;i<4;i++)
{Writecom(0xb0+i);Writecom(0x00);Writecom(0x10);//startpage(i) startcolumn(0);///第一页第倚谢
for(j=0;j<128;j++)
{Writedata(m);}}
}
/*************************************
初始化
****************************************/
void INT()
{
RES=0;
_nop_();_nop_();
RES=1;
RES=1;
Writecom(0xe2);/////////复位设置
//Writecom(0x85);//////////偏压值模式
Writecom(0xa2);//////////偏压值比1/6 占空比1/33
//Writecom(0x03);//////////占空比1/32
Writecom(0xa0);///////seg的方向为反向
Writecom(0xc8);/////////com的输出方向为正
Writecom(0xa6);/////////////lcd显示为正
Writecom(0x81);////////////对比度调节
Writecom(0x10);/////////////对比度为中
Writecom(0x2f);//////////////内部电源操作均开
Clear(0x00);
Writecom(0xaf);////////////开显示
}
/*************************************
间隔点
****************************************/
void reset(uchar m)
{uchar t;
uchar i,j;
t=~m;
for(i=0;i<4;i++)
{Writecom(0xb0+i);Writecom(0x00);Writecom(0x10);//startpage(i) startcolumn(0);///第一页第倚谢
for(j=0;j<128;j++)
{Writedata(m);Writedata(t);}}
}
/*************************************
写入内容 一副图
****************************************/
void map(uchar page,uchar column)
{
uchar i,j;
for(i=0;i<4;i++)
{
startpage(page+i);
startcolumn(column);
for(j=0;j<128;j++)
{Writedata(TAB[i*128+j]);}}
}
/*************************************
写人数字
****************************************/
void display_8(uchar x,uchar y,uchar coder,uchar f)//定义宽度
{
uchar i,j;
startpage(y);
startcolumn(x);
for(j=0;j<8;j++)
{
if(f==1)
{Writedata(TAB1[8*coder+j]);}
else
{Writedata(~TAB1[8*coder+j]);}
} }
/*************************************
写 入一串数字
****************************************/
void display_88(uchar x,uchar y,uchar n,uchar m,uchar f)
{
uchar i;
for(i=n;i<m;i++)
{display_8(y,x,i,f);x=x+12;}
}
/*************************************
写 入汉字
****************************************/
void displayhz(uchar x,uchar y,uchar coder)
{
uint j,i;
i=0;
loop:
startpage(y);
startcolumn(x);
for(j=i;j<i+16;j++)
Writedata(TAB2[coder][j]);
if(i==0)
{
i=16;
y++;
if(y==8)
return;
else goto loop;}
}
/*************************************
写入一个汉字
****************************************/
void display_hz(uchar x,uchar y,uchar *hz,uchar coder,uchar f)
{
uchar i,j;
uchar y1,x1;
uchar *p;
x1=x;y1=y;
p=coder*32+hz;
for(i=0;i<16;i++)
{
startpage(y);
startcolumn(x);
if(f==1)
{Writedata(*p);}
else
{Writedata(~*p);}
p++;x++;
}
y=y1+1;x=x1;
for(j=0;j<16;j++)
{
startpage(y);
startcolumn(x);
if(f==1)
{Writedata(*p);}
else
{Writedata(~*p);}
p++;x++;
}
}
/*****************************************
写一串汉字
****************************************/
void display1616(uchar x,uchar y,uchar *hz,uchar n,uchar m,uchar f)
{
uchar i;
for(i=n;i<m;i++)
{display_hz(x,y,hz,i,f);x=x+16;Delay(100);}
}
/*************************************
主函数
****************************************/
void main()
{
uchar i,j;
_nop_();
_nop_();
INT();
while(1)
{
Delay(300);
Clear(0xff);
Delay(600);
Clear(0x55);
Delay(600);
Clear(0xaa);
Delay(600);
reset(0x00);
Delay(600);
reset(0xff);
Delay(600);
reset(0xaa);
Delay(600);
reset(0x55);
Delay(600);
Clear(0x00);
display_88(12,0,0,9,1);
displayhz(20,2,0);
displayhz(40,2,1);
displayhz(60,2,2);
displayhz(80,2,3);
Delay(800);
Clear(0x00);
display1616(0,0,hz,0,8,1);
display1616(0,2,hz,8,16,0);
Delay(800);
Clear(0x00);
}}