📄 ym12864r_s.c
字号:
#include"reg52.h"
#define uchar unsigned char
#define uint unsigned int
#define clear() wcode(0x01)/*清除显示*/
//函数原型
void LCD_init(void);
void screen_welcome(void);
void screen_succeed(void);
void screen_fail(void);
//sbit RST=P1^4;
//sbit PSB=P1^4;//可以一直接地
sbit SCLK=P1^4;
sbit SID=P1^3;
sbit CS=P1^2;
void delay(uint v)/*延时*/
{
while(v!=0) v--;
}
void ser_in(uchar c)/*serial输入程序*/
{
uchar BitCnt;
for(BitCnt=0;BitCnt<8;BitCnt++)
{
if((c<<BitCnt)&0x80)SID=1;
else SID=0;
delay(1);
SCLK=1;
delay(3);
SCLK=0;
}
}
void wcode (uchar cmd)/*写命令*/
{
CS=0;
delay(10);
CS=1;
ser_in(0xf8);
ser_in(cmd&0xf0);
ser_in((cmd&0x0f)<<4);
}
void wdata(uchar dat)/*写数据*/
{
CS=0;
delay(10);
CS=1;
ser_in(0xfa);
ser_in(dat&0xf0);
ser_in((dat&0x0f)<<4);
}
void set_adr_GB(uchar x)/*设定国标码地址*/
{
x=x+0x80;
wcode(x);
}
void set_function(uchar c)/*功能设定*/
{
c=c+0x30;
wcode(c);
}
void addr_zero(void)/*地址归零*/
{
wcode(0x02);
}
void dis_on_off(uchar c)/*显示状态*/
{
c=c+0x08;
wcode(c);
}
void ShowWord(uint GB_Num)
{
uchar GB_h,GB_l;
GB_h=(GB_Num&0xff00)>>8;
GB_l=GB_Num&0xff;
wdata(GB_h);
wdata(GB_l);
}
void LCD_init(void)
{
//PSB=0;
dis_on_off(0x07);
set_function(0x00);
addr_zero();//地址归0
clear();//清屏
}
// 您 好!
// 请刷卡!
void screen_welcome(void)
{
clear();//清屏
set_adr_GB(2);
// ShowWord(0xa1a0);//空格
ShowWord(0xc4fa);//您
set_adr_GB(4);
ShowWord(0xbac3);//好
ShowWord(0xa3a1);//!
set_adr_GB(10);
ShowWord(0xc7eb);//请
ShowWord(0xcba2);//刷
ShowWord(0xbfa8);//卡
ShowWord(0xa3a1);//!
}
// 刷卡成功!
void screen_succeed(void)
{
clear();//清屏
set_adr_GB(10);
ShowWord(0xcba2);//刷
ShowWord(0xbfa8);//卡
ShowWord(0xb3c9);//成
ShowWord(0xb9a6);//功
ShowWord(0xa3a1);//!
}
// 刷卡失败!
void screen_fail(void)
{
clear();//清屏
set_adr_GB(10);
ShowWord(0xcba2);//刷
ShowWord(0xbfa8);//卡
ShowWord(0xcaa7);//失
ShowWord(0xb0dc);//败
ShowWord(0xa3a1);//!
}
// 江门殡仪馆
// 欢迎您!
// 您的位置在:
//X室X排X行X列
void screen_2(void)
{
clear();//清屏
set_adr_GB(1);
ShowWord(0xbdad);//江
ShowWord(0xc3c5);//门
ShowWord(0xe9eb);//殡
ShowWord(0xd2e5);//仪
ShowWord(0xb9dd);//馆
set_adr_GB(18);
ShowWord(0xbbb6);//欢
ShowWord(0xd3ad);//迎
ShowWord(0xc4fa);//您
ShowWord(0xa3a1);//!
set_adr_GB(9);
ShowWord(0xc4fa);//您
ShowWord(0xb5c4);//的
ShowWord(0xcebb);//位
ShowWord(0xd6c3);//置
ShowWord(0xd4da);//在
ShowWord(0xa1c3);//:
set_adr_GB(24);
ShowWord(0xa3b1);//1
ShowWord(0xcad2);//室
ShowWord(0xa3b1);//1
ShowWord(0xc5c5);//排
ShowWord(0xa3b1);//1
ShowWord(0xd0d0);//行
ShowWord(0xa3b1);//1
ShowWord(0xc1d0);//列
}
/*void main(void)
{
LCD_init();
while(1)
{
screen_1();
delay(65535);
delay(65535);
screen_2();
delay(65535);
delay(65535);
}
}
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -