📄 lcd12864a_430.c
字号:
#include "msp430x22x4.h"
const unsigned char Number0[]={8,2,
0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x07,0x08,0x10,0x10,0x08,0x07,0x00
};
const unsigned char Number1[]={8,2,
0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x10,0x10,0x1F,0x10,0x10,0x00,0x00
};
const unsigned char Number2[]={8,2,
0x00,0x30,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x18,0x14,0x12,0x11,0x10,0x18,0x00
};
const unsigned char Number3[]={8,2,
0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x0C,0x10,0x10,0x10,0x11,0x0E,0x00
};
const unsigned char Number4[]={8,2,
0x00,0x80,0x40,0x20,0xF8,0x00,0x00,0x00,0x00,0x03,0x02,0x12,0x1F,0x12,0x12,0x00
};
/*-- 文字: 5 --*/
/*-- 宋体11; 此字体下对应的点阵为:宽x高=8x15 --*/
/*-- 高度不是8的倍数,现调整为:宽度x高度=8x16 --*/
const unsigned char Number5[]={8,2,
0x00,0xF8,0x88,0x48,0x48,0x48,0x88,0x00,0x00,0x0C,0x10,0x10,0x10,0x10,0x0F,0x00
};
/*-- 文字: 6 --*/
/*-- 宋体11; 此字体下对应的点阵为:宽x高=8x15 --*/
/*-- 高度不是8的倍数,现调整为:宽度x高度=8x16 --*/
const unsigned char Number6[]={8,2,
0x00,0xE0,0x10,0x88,0x88,0x98,0x00,0x00,0x00,0x0F,0x11,0x10,0x10,0x10,0x0F,0x00
};
/*-- 文字: 7 --*/
/*-- 宋体11; 此字体下对应的点阵为:宽x高=8x15 --*/
/*-- 高度不是8的倍数,现调整为:宽度x高度=8x16 --*/
unsigned char Number7[]={8,2,
0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x00
};
/*-- 文字: 8 --*/
/*-- 宋体11; 此字体下对应的点阵为:宽x高=8x15 --*/
/*-- 高度不是8的倍数,现调整为:宽度x高度=8x16 --*/
const unsigned char Number8[]={8,2,
0x00,0x70,0x88,0x88,0x88,0x88,0x70,0x00,0x00,0x0E,0x11,0x10,0x10,0x11,0x0E,0x00
};
/*-- 文字: 9 --*/
/*-- 宋体11; 此字体下对应的点阵为:宽x高=8x15 --*/
/*-- 高度不是8的倍数,现调整为:宽度x高度=8x16 --*/
const unsigned char Number9[]={8,2,
0x00,0xF0,0x08,0x08,0x08,0x90,0xE0,0x00,0x00,0x00,0x19,0x11,0x11,0x08,0x07,0x00
};
const unsigned char Number10[]={8,2,0x02,0x03,0x02,0x03,0x02,0x01,0x00,0x00,
0x02,0x03,0x02,0x03,0x02,0x01,0x00,0x00,0x02,0x07,0x40,0x80,0x7F,0x00,0x00,0x00
};
const unsigned char He[]={16,2,
0x10,0x60,0x01,0xC6,0x30,0x02,0xE2,0x22,
0x22,0xE2,0x02,0x02,0xFE,0x02,0x02,0x00,
0x04,0x04,0xFF,0x00,0x00,0x00,0x07,0x02,
0x02,0x07,0x40,0x80,0x7F,0x00,0x00,0x00,
};
const unsigned char Bei[]={16,2,
0x00,0x20,0x20,0x20,0x20,0xFF,0x00,0x00,
0x00,0xFF,0x40,0x20,0x30,0x18,0x10,0x00,
0x10,0x30,0x18,0x08,0x04,0x7F,0x00,0x00,
0x00,0x3F,0x40,0x40,0x40,0x40,0x78,0x00,/*"北",1*/
};
const unsigned char Gong[]={16,2,
0x00,0x00,0x02,0x02,0x02,0x02,0x02,0xFE,
0x02,0x02,0x02,0x02,0x02,0x02,0x00,0x00,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3F,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,/*"工",2*/
};
const unsigned char Ye[]={16,2,
0x00,0x10,0x60,0x80,0x00,0xFF,0x00,0x00,
0x00,0xFF,0x00,0x80,0x60,0x38,0x10,0x00,
0x20,0x20,0x20,0x23,0x21,0x3F,0x20,0x20,
0x20,0x3F,0x22,0x21,0x20,0x30,0x20,0x00,/*"业",3*/
};
const unsigned char Da[]={16,2,
0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0x7F,
0xA0,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
0x00,0x80,0x40,0x20,0x10,0x0C,0x03,0x00,
0x01,0x06,0x08,0x30,0x60,0xC0,0x40,0x00,/*"大",4*/
};
const unsigned char Xue[]={16,2,
0x40,0x30,0x10,0x12,0x5C,0x54,0x50,0x51,
0x5E,0xD4,0x50,0x18,0x57,0x32,0x10,0x00,
0x00,0x02,0x02,0x02,0x02,0x02,0x42,0x82,
0x7F,0x02,0x02,0x02,0x02,0x02,0x02,0x00,/*"学",5*/
};
const unsigned char Chen[]={16,2,
0x00,0x00,0xFE,0x42,0x52,0xD2,0x52,0xD2,
0x52,0x52,0x52,0x52,0x52,0x42,0x40,0x00,
0x40,0x30,0x0F,0x00,0x00,0x7F,0x20,0x11,
0x06,0x08,0x14,0x22,0x23,0x42,0x40,0x00,/*"辰",1*/
};
const unsigned char Jin[]={16,2,
0x80,0x80,0x40,0x20,0x10,0x08,0x24,0x43,
0xC4,0x08,0x10,0x20,0x60,0xC0,0x40,0x00,
0x00,0x00,0x00,0x02,0x02,0x02,0x02,0x82,
0x42,0x32,0x0E,0x02,0x00,0x00,0x00,0x00,/*"今",0*/
};
const unsigned char Ri[]={16,2,
0x00,0x00,0x00,0xFE,0x42,0x42,0x42,0x42,
0x42,0x42,0x42,0xFE,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x3F,0x10,0x10,0x10,0x10,
0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x00,/*"日",1*/
};
const unsigned char Qi[]={16,2,
0x00,0x20,0x10,0x8C,0xA7,0xA4,0xA4,0xA4,
0xA4,0xA4,0xA4,0xA4,0x24,0x04,0x04,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x0F,0x30,0x40,0xF0,0x00,/*"气",2*/
};
const unsigned char Wen[]={16,2,
0x10,0x21,0x86,0x70,0x00,0x7E,0x4A,0x4A,
0x4A,0x4A,0x4A,0x7E,0x00,0x00,0x00,0x00,
0x02,0xFE,0x01,0x40,0x7F,0x41,0x41,0x7F,
0x41,0x41,0x7F,0x41,0x41,0x7F,0x40,0x00,/*"温",3*/
};
const unsigned char She[]={16,2,
0x08,0x88,0xFF,0x48,0x28,0x41,0x41,0x7F,
0x55,0x55,0x55,0xFF,0x21,0x21,0x00,0x00,
0x41,0x80,0x7F,0x00,0x41,0x23,0x15,0x4D,
0x53,0x20,0x23,0x15,0x19,0x65,0x23,0x00,
};/*"摄",0*/
const unsigned char Shi[]={16,2,
0x00,0x00,0xFC,0x44,0x44,0x44,0x44,0x7C,
0xC2,0x42,0x42,0x42,0x42,0x40,0x00,0x00,
0x00,0x00,0xFF,0x40,0x20,0x10,0x00,0x00,
0x03,0x0C,0x10,0x20,0x40,0xF0,0x00,0x00,/*"氏",1*/
};
/*-- 调入了一幅图像:Welcome.bmp --*/
/*-- 宽度x高度=128x64 --*/
const unsigned char WELCOME[]={128,8,};
#define LCD_DI BIT1 //LCD_DI -> P2.1>
#define LCD_DI_DIR P2DIR
#define LCD_DI_LO P2OUT &= ~LCD_DI
#define LCD_DI_HI P2OUT |= LCD_DI
#define LCD_RW BIT2 //LCD_RW -> P2.2
#define LCD_RW_DIR P2DIR
#define LCD_RW_LO P2OUT &= ~LCD_RW
#define LCD_RW_HI P2OUT |= LCD_RW
#define LCD_EN BIT1 //LCD_EN -> P3.1
#define LCD_EN_DIR P3DIR
#define LCD_EN_LO P3OUT &= ~LCD_EN
#define LCD_EN_HI P3OUT |= LCD_EN
#define LCD_CS1 BIT0 //LCD_CS1 -> P3.0
#define LCD_CS1_DIR P3DIR
#define LCD_CS1_LO P3OUT &= ~LCD_CS1
#define LCD_CS1_HI P3OUT |= LCD_CS1
#define LCD_CS2 BIT2 //LCD_CS2 -> P3.1
#define LCD_CS2_DIR P3DIR
#define LCD_CS2_LO P3OUT &= ~LCD_CS2
#define LCD_CS2_HI P3OUT |= LCD_CS2
#define LCD_RST BIT3 //LCD_RST-> P3.
#define LCD_RST_DIR P3DIR
#define LCD_RST_LO P3OUT &= ~LCD_RST
#define LCD_RST_HI P3OUT |= LCD_RST
#define LCD_DATA_IN P4IN
#define LCD_DATA_OUT P4OUT
#define LCD_DATA_DIR P4DIR
#define LCD_DisplayON 0x3F //LCD Display On
#define LCD_DisplayOFF 0x3E //LCD Display Off
#define LCD_Data 0x01 //LCD Display Date
#define LCD_Instrument 0x00 //LCD Intrument Data
#define LCD_StartLine 0xC0 //LCD Display Start Line
#define LCD_XAddress 0xB8 //Set X Address
#define LCD_YAddress 0x40 //Set Y Address
#define LCD_Chip1 0x02 //LCD Chip 1
#define LCD_Chip2 0x04 //LCD Chip 2
void LCD_Initialization(void);
void LCD_WriteByte(unsigned char LCD_Date,unsigned char flag);
void LCD_Clear(unsigned char I_Data);
void LCD_ClearRange(unsigned char Start_XPos,unsigned char Start_YPos,unsigned char End_XPos,unsigned char End_YPos);
void LCD_Display(const unsigned char *Buffer,unsigned char Start_XPos,unsigned char Start_YPos,unsigned char Rotate);
void LCD_Delayt(unsigned int dtime);
unsigned char LCD_ReadByte(unsigned char flag);
unsigned char LCD_Location(unsigned char XPos,unsigned char YPos);
void LCD_DispNum(unsigned char dates,unsigned char Start_XPos,unsigned char Start_YPos,unsigned char Rotate);
void LCD_DispNums(unsigned char dates,unsigned char Start_XPos,unsigned char Start_YPos,unsigned char Rotate);
void InitOsc(void);
void delay(unsigned int time);
void second();
void main(void) {
WDTCTL = WDTPW + WDTHOLD; //关闭系统看门狗
//InitOsc(); //初始化系统时钟
P1DIR |=BIT0;
P1OUT |=BIT0;
LCD_Initialization(); //初始化LCD显示
LCD_Clear(0x00);
while(1) {
P1OUT ^=BIT0;
LCD_Display(He,0,0,0);
LCD_Display(Bei,0,16,0);
LCD_Display(Gong,0,32,0);
LCD_Display(Ye,0,48,0);
LCD_Display(Da,0,64,0);
LCD_Display(Xue,0,80,0);
LCD_Display(Bei,0,96,0);
LCD_Display(Chen,0,112,0);
LCD_Display(Jin,2,0,0);
LCD_Display(Ri,2,16,0);
LCD_Display(Qi,2,32,0);
LCD_Display(Wen,2,48,0);
LCD_DispNums(567,4,0,0);
/* LCD_Display(Number11,0,0,0);
delay(58);
LCD_Display(Number3,0,0,0);
delay(58);
LCD_Display(Number4,0,0,0);
delay(58);
LCD_Display(Number5,0,0,0);
delay(58);
LCD_Display(Number6,0,0,0);
delay(58);
LCD_Display(Number7,0,0,0);
delay(58);
LCD_Display(Number8,0,0,0);
delay(58);
LCD_Display(Number9,0,0,0);
delay(58);*/
/* second();
LCD_Clear(0x00); */
/*LCD_Display(Number0,3,16,0);
LCD_Display(Number1,3,24,0);
LCD_Display(Number2,3,32,0);
LCD_Display(Number3,3,40,0);
LCD_Display(Number4,3,48,0);
LCD_Display(Number5,3,56,0);
LCD_Display(Number6,3,64,0);
LCD_Display(Number7,3,72,0);
LCD_Display(Number8,3,80,0);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -