⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 12864.txt

📁 单片机写的程序都含有Protues仿真结果
💻 TXT
字号:
#include<reg51.h>
#include<absacc.h>
#define uchar unsigned char
#define uint unsigned int
uchar code hz[];
uchar a,b,c=0xb8,i,j;

sbit E=P3^4;
sbit RS=P3^2;
sbit RW=P3^3;
sbit L=P3^1;
sbit R=P3^0;
sbit Busy=P2^7;

void init12864(void);
void writer_command(uchar command);
void writer_Data(uchar Data);
void delay(uint timer);
void check_busy();
void display(uchar page,uchar col,uchar *temp);

void init12864(void)
{
	writer_command(0x3f);//开显示器
	writer_command(0xc0);//从零行开始
	writer_command(0xb8);//取值范围从0页开始 一个八页
	writer_command(0x40);//从0x40列开始	   一共有8列,CS1,CS2分两部分4+4
}
void check_busy(void)
{
	E=1;
	RS=0;
	RW=1;
	P2=0x80;//将DB7置1
	while(!Busy);
}
void writer_command(uchar command)
{
	check_busy();
	E=1;
	RW=0;
	RS=0;
	P2=command;
	E=1;	 //延时大于1000MS
	E=0;
}
void writer_Data(uchar Data)
{
	check_busy();
	E=1;
	RW=0;
	RS=1;
	P2=Data;
	i=1;
	while(i--);//延时大于1000MS
	E=0;
}
void display(uchar page,uchar y,uchar *temp)
{
	uchar j;
	L=1;
	R=0;
	if(y>=0x80)
	{
		R=1;
		L=0;
		y-=0x40;
	}
	writer_command(page);	 //写入第一页  即一个字的上半部分
	writer_command(y);
	for(j=0;j<16;j++)
	  { writer_Data(temp[j]);}
	writer_command(page+1);	//写入第一页 即一个字的下半部分
	writer_command(y);
	for(j=16;j<32;j++)
	   writer_Data(temp[j]);
}

 uchar code wang[]={0x00,0x80,0x60,0x20,0x20,0x20,0x20,0x90,0x70,0x18,0x96,0x90,0x90,0x50,0x30,0x08,
0x00,0x03,0x01,0x01,0x21,0x19,0x07,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00};/*"中",0*/
uchar code ming[]={0x40,0x20,0x20,0x90,0x70,0x18,0x08,0xC4,0xA0,0xE0,0x98,0x96,0x90,0x88,0x88,0x6C,
0x02,0x02,0x02,0x03,0x22,0x1A,0x06,0x03,0x02,0x02,0x02,0x02,0x02,0x02,0x01,0x00};
void main()
{
	P2=0x00;
	init12864();
	display(0xb8,0x40,&wang);
	display(0xb8,0x50,&ming);
}







⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -