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

📄 fn_football.c

📁 用KEIL编译
💻 C
字号:
/****************************************************
作者:eleclike
时间:2007-10-10
功能:LCD1602显示小人踢足球的画面
****************************************************/
#include <reg52.h>
#include "my52.h"
#include "Lcd1602.h"

static const uchar code CharData[8][8]
={{0x01,0x02,0x04,0x05,0x04,0x04,0x03,0x01},//1 左脑
{0x10,0x8,0x04,0x14,0x4,0x4,0x18,0x10},//2 右脑
{0x03,0x5,0x0a,0x02,0x04,0x08,0x10,0x10},//3 左脚直步
{0x18,0x14,0x12,0x8,0x04,0x04,0x08,0x10},//4 右脚弯步
{0x18,0x14,0x12,0x08,0x04,0x02,0x01,0x01},//5 右脚直步
{0x03,0x05,0x09,0x02,0x04,0x04,0x02,0x01},//6 左脚弯步
{0x00,0x00,0x00,0x0e,0x11,0x11,0x0e,0x00},//7 足球空中
{0x00,0x00,0x00,0x00,0x0e,0x11,0x11,0x0e},//8 足球着地
};//用户自编码字符,用于表示图形
void WriteLcdCGRAM();


main()
{
InitialLcd();
WriteLcdCGRAM();
while(1)
{uchar i=0;
for(;i<15;)//从左向右移动
	{WriteLcdInstr(1);
	WriteLcdInstr(0x80+i);
	WriteLcdData(0);
	WriteLcdData(1);
	WriteLcdInstr(0xc0+i);
	WriteLcdData(2);
	WriteLcdData(3);
	WriteLcdData(6);
	Delay(25000);
	i++;
	WriteLcdInstr(1);
	WriteLcdInstr(0x80+i);
	WriteLcdData(0);
	WriteLcdData(1);
	WriteLcdInstr(0xc0+i);
	WriteLcdData(5);
	WriteLcdData(4);
	WriteLcdData(7);
	Delay(25000);
	i++;
	}
for(;i>0;)//从右向左移动
	{WriteLcdInstr(1);
	WriteLcdInstr(0x80+i);
	WriteLcdData(' ');
	WriteLcdData(0);
	WriteLcdData(1);
	WriteLcdInstr(0xc0+i);
	WriteLcdData(6);
	WriteLcdData(2);
	WriteLcdData(3);
	Delay(25000);
	i--;
	WriteLcdInstr(1);
	WriteLcdInstr(0x80+i);
	WriteLcdData(' ');
	WriteLcdData(0);
	WriteLcdData(1);
	WriteLcdInstr(0xc0+i);
	WriteLcdData(7);
	WriteLcdData(5);
	WriteLcdData(4);
	Delay(25000);
	i--;
	}

}
}

//---写CGRAM函数
void WriteLcdCGRAM()
{uchar i,j;
for(j=0;j<8;j++)
	{for(i=0;i<8;i++)
		{WriteLcdInstr(0x40+8*j+i);
		WriteLcdData(CharData[j][i]);
		}
	}
}

⌨️ 快捷键说明

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