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

📄 display_drive.h

📁 在51单片机上运行的俄罗斯方块游戏,内含键盘扫描
💻 H
字号:
/************************************************************

				
				display_drive.h
				点阵显示驱动程序
				制作人:内蒙古大学 夏士通
				时间:2008年5月14日
				E-mail:xiashitong@hotmail.com
				支持开源,欢迎交流


************************************************************/

#define Line P1
#define Row P2
sbit CS1 = P3^0;
sbit CS2 = P3^1;
sbit CS3 = P3^2;
sbit CS4 = P3^3;

unsigned char Ram[]=
{
0x7F,0x02,0x1F,0x10,0x1F,0x10,0x1F,0x10,0xFE,0x00,0xF0,0x10,0xF0,0x10,0xF0,0x10,
0x1F,0x08,0x0F,0x08,0x16,0x21,0x0E,0x70,0xF0,0x00,0xF0,0x20,0x40,0x80,0x70,0x0E,
};//显示点阵缓存(1表示亮,0表示灭)

void delay(unsigned char temp)
{
	unsigned char tp=temp;
	while(tp--);
}//延时函数		

void display()
{
	unsigned char i,j;
	for(i=0;i<4;i++)
	{
		Row=0x00;//初值都为低电平,将所有行锁存成低电平
		CS1=1;CS2=1;CS3=1;CS4=1;
		switch(i)
		{
			case 0:CS2=0;CS3=0;CS4=0;break;
			case 1:CS1=0;CS3=0;CS4=0;break;
			case 2:CS1=0;CS2=0;CS4=0;break;
			case 3:CS1=0;CS2=0;CS3=0;break;
			default:;
		}
		Row=0x01;//置行扫描初值
		for(j=0;j<8;j++)
		{
			Line=~(Ram[i*8+j]);//列扫描
			delay(100);//延时(仿真不延时无法显示,实物可能不用延时)
			Row=Row<<1;//行扫描
			
		}
	}
}//点阵显示函数

⌨️ 快捷键说明

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