📄 nokia5110_hanzi.h
字号:
/**************************************
欢迎使用 o(∩_∩)o... 共同进步
Copyright (C) CUIT 电子工程学院 许堂明
***************************************/
#ifndef __NOKIA5110_hanzi_H__
#define __NOKIA5110_hanzi_H__
const unsigned char zim[][24]={
//液
{0x19,0xE2,0x14,0x42,0xF2,0x2E,0x72,0x8F,0xAA,0x7A,0x02,0x00,0x01,0x07,0x00,0x00,0x07,0x04,0x04,0x02,0x01,0x02,0x04,0x00},
//晶
{0x00,0xC0,0x40,0x5F,0xD5,0x15,0xD5,0x55,0x5F,0x40,0xC0,0x00,0x00,0x07,0x05,0x05,0x07,0x00,0x07,0x05,0x05,0x05,0x07,0x00},
//显
{0x00,0x40,0x9F,0x15,0xD5,0x15,0xD5,0x15,0x1F,0xC0,0x00,0x00,0x04,0x04,0x05,0x04,0x07,0x04,0x07,0x06,0x05,0x04,0x04,0x00},
//示
{0x10,0x12,0x92,0x52,0x12,0xF2,0x12,0x12,0x53,0x92,0x10,0x00,0x02,0x01,0x00,0x04,0x04,0x07,0x00,0x00,0x00,0x00,0x03,0x00},
//测
{0x89,0xF2,0x00,0xFF,0x01,0xF9,0xFF,0x00,0xFC,0x00,0xFF,0x00,0x00,0x07,0x04,0x04,0x02,0x01,0x02,0x04,0x01,0x04,0x07,0x00},
//试
{0x11,0xF6,0x00,0x04,0x24,0xE4,0x24,0x24,0xFF,0x05,0x06,0x00,0x00,0x07,0x02,0x01,0x02,0x03,0x01,0x01,0x01,0x02,0x07,0x00},
//程
{0x8A,0x6A,0xFF,0x49,0x20,0xAF,0xA9,0xE9,0xA9,0xAF,0x20,0x00,0x01,0x00,0x07,0x00,0x04,0x04,0x04,0x07,0x04,0x04,0x04,0x00},
};
/*-----------------------------------------------------------------------
NOKIA5110_w_hanzi_string: 在LCD上显示汉字串
输入参数:X、Y :显示汉字的起始X、Y坐标;
ch_with :汉字点阵的宽度
num :显示汉字的个数;
zim :汉字点阵数组中的起始行数
row :汉字显示的行间距
测试:
LCD_write_chi(0,0,12,7,0,0);
LCD_write_chi(0,2,12,7,0,0);
LCD_write_chi(0,4,12,7,0,0);
-----------------------------------------------------------------------*/
void NOKIA5110_w_hanzi_string(unsigned char X,
unsigned char Y,
unsigned char ch_with,
unsigned char num,
//unsigned char *zim,
unsigned char row)
{
unsigned char i,n;
NOKIA5110_set_XY(X,Y); //设置初始位置
for (i=0;i<num;)
{
for (n=0; n<ch_with*2; n++) //写一个汉字
{
if (n==ch_with) //写汉字的下半部分
{
if (i==0) NOKIA5110_set_XY(X,Y+1);
else
NOKIA5110_set_XY((X+(ch_with+row)*i),Y+1);
}
NOKIA5110_w_byte(zim[i][n],1);
}
i++;
NOKIA5110_set_XY((X+(ch_with+row)*i),Y);
}
}
/*-----------------------------------------------------------------------
NOKIA5110_w_hanzi_string: 在LCD上显示单个汉字
输入参数:X、Y :显示汉字的起始X、Y坐标;
ch_with :汉字点阵的宽度(12)
i : 字库里待显示的字
-----------------------------------------------------------------------*/
void NOKIA5110_w_hanzi(unsigned char X,
unsigned char Y,
unsigned char ch_with,
unsigned char i
)
{
unsigned char n;
NOKIA5110_set_XY(X,Y); //设置初始位置
for (n=0; n<ch_with*2; n++) //写一个汉字
{
if (n==ch_with) //写汉字的下半部分
NOKIA5110_set_XY(X,Y+1);
NOKIA5110_w_byte(zim[i][n],1);
}
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -