#include"config.h"
#include"delay.h"
#include"12864.h"
uchar code number[11][64]={
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xE0,0x0F,0xF0,
0x1C,0x38,0x38,0x38,0x38,0x1C,0x30,0x1C,0x70,0x0C,0x70,0x0C,0x70,0x0C,0x70,0x0C,
0x70,0x0C,0x70,0x0C,0x70,0x0C,0x70,0x0C,0x70,0x0C,0x30,0x1C,0x38,0x1C,0x38,0x18,
0x1C,0x38,0x1F,0xF0,0x07,0xE0,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"0",0*/
/* (16 X 32 , 黑体 )*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0x01,0xC0,
0x03,0xC0,0x07,0xC0,0x1D,0xC0,0x19,0xC0,0x11,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,
0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,
0x01,0xC0,0x01,0xC0,0x01,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"1",1*/
/* (16 X 32 , 黑体 )*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xE0,0x1F,0xF8,
0x3C,0x38,0x38,0x1C,0x70,0x1C,0x00,0x1C,0x00,0x1C,0x00,0x18,0x00,0x38,0x00,0x38,
0x00,0x70,0x00,0xE0,0x00,0xC0,0x01,0xC0,0x03,0x80,0x07,0x00,0x0E,0x00,0x1C,0x00,
0x3C,0x00,0x3F,0xFC,0x3F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"2",2*/
/* (16 X 32 , 黑体 )*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xE0,0x0F,0xF8,
0x1C,0x38,0x38,0x1C,0x30,0x1C,0x10,0x1C,0x00,0x1C,0x00,0x18,0x00,0x78,0x03,0xE0,
0x03,0xF0,0x00,0x78,0x00,0x1C,0x00,0x1C,0x00,0x1C,0x10,0x0C,0x70,0x1C,0x38,0x1C,
0x3C,0x38,0x1F,0xF8,0x0F,0xE0,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"3",3*/
/* (16 X 32 , 黑体 )*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x70,
0x00,0x70,0x00,0xF0,0x01,0xF0,0x01,0xB0,0x03,0xB0,0x07,0x30,0x0E,0x30,0x0C,0x30,
0x1C,0x30,0x38,0x30,0x30,0x30,0x70,0x30,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0x00,0x30,
0x00,0x30,0x00,0x30,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"4",4*/
/* (16 X 32 , 黑体 )*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xF8,0x1F,0xF8,
0x18,0x00,0x18,0x00,0x18,0x00,0x38,0x00,0x30,0x00,0x37,0xC0,0x3F,0xF0,0x78,0x78,
0x70,0x38,0x00,0x1C,0x00,0x1C,0x00,0x0C,0x00,0x0C,0x20,0x1C,0x60,0x1C,0x70,0x1C,
0x70,0x78,0x3F,0xF0,0x1F,0xE0,0x07,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"5",5*/
/* (16 X 32 , 黑体 )*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0xE0,
0x01,0xC0,0x03,0x80,0x03,0x80,0x07,0x00,0x0E,0x00,0x0E,0x00,0x1F,0xF0,0x1F,0xF8,
0x3C,0x1C,0x38,0x0E,0x70,0x0E,0x70,0x0E,0x70,0x0E,0x70,0x0E,0x70,0x0E,0x38,0x0E,
0x3C,0x1C,0x1F,0xF8,0x0F,0xF0,0x01,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"6",6*/
/* (16 X 32 , 黑体 )*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFE,0x7F,0xFE,
0x00,0x0E,0x00,0x1C,0x00,0x18,0x00,0x38,0x00,0x30,0x00,0x70,0x00,0x60,0x00,0xE0,
0x00,0xC0,0x01,0xC0,0x01,0xC0,0x01,0x80,0x03,0x80,0x03,0x80,0x03,0x00,0x07,0x00,
0x07,0x00,0x06,0x00,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"7",7*/
/* (16 X 32 , 黑体 )*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xE0,0x1F,0xF0,
0x38,0x38,0x30,0x1C,0x30,0x1C,0x30,0x1C,0x30,0x1C,0x38,0x38,0x3C,0x78,0x0F,0xE0,
0x1F,0xF0,0x3C,0x78,0x78,0x1C,0x70,0x1C,0x60,0x0C,0x60,0x0C,0x70,0x0C,0x70,0x1C,
0x78,0x3C,0x3F,0xF8,0x1F,0xF0,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"8",8*/
/* (16 X 32 , 黑体 )*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xE0,0x1F,0xF0,
0x3C,0x78,0x70,0x3C,0x70,0x1C,0x60,0x1C,0x60,0x1C,0x60,0x1C,0x60,0x1C,0x70,0x38,
0x78,0x78,0x3F,0xF8,0x1F,0xF0,0x00,0xE0,0x00,0xE0,0x01,0xC0,0x01,0xC0,0x03,0x80,
0x03,0x80,0x07,0x00,0x06,0x00,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/* (16 X 32 , 黑体 )*//*"9",9*/
{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,0x03,0x80,0x03,0x80,0x03,0x80,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x03,0x80,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, /* ":" */
};
/*******************************************************************/
/* */
/*检查LCD忙状态 */
/*lcd_busy为1时,忙,等待。lcd-busy为0时,闲,可写指令与数据。 */
/* */
/*******************************************************************/
bit lcd_busy()
{
bit result;
LCD_RS = 0;
LCD_RW = 1;
LCD_EN = 1;
delayNOP();
result = (bit)(P0&0x80);
LCD_EN = 0;
return(result);
}
/*******************************************************************/
/* */
/*写指令数据到LCD */
/*RS=L,RW=L,E=高脉冲,D0-D7=指令码。 */
/* */
/*******************************************************************/
void lcd_wcmd(uchar cmd)
{
while(lcd_busy());
LCD_RS = 0;
LCD_RW = 0;
LCD_EN = 0;
_nop_();
_nop_();
P0 = cmd;
delayNOP();
LCD_EN = 1;
delayNOP();
LCD_EN = 0;
}
/*******************************************************************/
/* */
/*写显示数据到LCD */
/*RS=H,RW=L,E=高脉冲,D0-D7=数据。 */
/* */
/*******************************************************************/
void lcd_wdat(uchar dat)
{
while(lcd_busy());
LCD_RS = 1;
LCD_RW = 0;
LCD_EN = 0;
P0 = dat;
delayNOP();
LCD_EN = 1;
delayNOP();
LCD_EN = 0;
}
/*******************************************************************/
/* */
/* LCD初始化设定 */
/* */
/*******************************************************************/
void lcd_init()
{
lcd_wcmd(0x34); //扩充指令操作
delay(5);
lcd_wcmd(0x30); //基本指令操作
delay(5);
lcd_wcmd(0x0C); //显示开,关光标
delay(5);
lcd_wcmd(0x01); //清除LCD的显示内容
delay(5);
}
/*********************************************************/
/* */
/* 设定显示位置 */
/* */
/*********************************************************/
void lcd_pos(uchar X,uchar Y)
{
unsigned char pos;
if (X==0)
{X=0x80;}
else if (X==1)
{X=0x90;}
else if (X==2)
{X=0x88;}
else if (X==3)
{X=0x98;}
pos = X+Y ;
lcd_wcmd(pos); //显示地址
}
//以下是图像模式清屏程序
void draw_clear()
{
uchar i,j,k;
lcd_wcmd(0x34); //打开扩展指令集
i = 0x80;
for(j = 0;j < 32;j++)
{
lcd_wcmd(i++);
lcd_wcmd(0x80);
for(k = 0;k < 16;k++)
{
lcd_wdat(0x00);
}
}
i = 0x80;
for(j = 0;j < 32;j++)
{
lcd_wcmd(i++);
lcd_wcmd(0x88);
for(k = 0;k < 16;k++)
{
lcd_wdat(0x00);
}
}
lcd_wcmd(0x36); //打开绘图显示
lcd_wcmd(0x30); //回到基本指令集
}
//以上是图型模式清屏程序
void display() //为反白做准备,目地是在图形显示时防止有噪点
{
uchar i,j;
lcd_wcmd(0x34); //写数据时,关闭图形显示
for(i=0;i<32;i++)
{
lcd_wcmd(0x80+i); //先写入水平坐标值
lcd
baluqiangdaqi.rar_baluqiangdaqi_lcd12864抢答器_stc89c52 抢答器_stc89c5
版权申诉
5星 · 超过95%的资源 92 浏览量
2022-09-14
22:11:42
上传
评论 2
收藏 113KB RAR 举报
局外狗
- 粉丝: 67
- 资源: 1万+
最新资源
- 20221230IqFQX3Yc.zip
- Microsoft.AspNetCore.Authentication.JwtBearer 3.1.32
- picCombobox图片下拉菜单案例.xls
- Java语言实现使用Prim(普利姆)算法求最小生成树(源代码)
- 奕尧笔记 yiyao-notebook-evv Setup 3.1.6.exe
- 继保实验模版 实验一 三段式电流保护及自动重合闸 实验二 变压器差动保护 实验三 微机型距离保护实验
- web前端页面通过BrowserPrint API连接斑马打印机进行RFID条形码贴纸打印
- 导体、导线、各种电缆载流量表
- 坐标点批量转面工具,可以将经纬度坐标点批量转为KML格式的面文件
- 海龟画图一个胶囊表情包
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈