代码;
#include<reg52.h>
#define uchar unsigned char //宏定义
#define uint unsigned int
#define lcdbus P1
sbit RS = P3^0;
sbit RW = P3^1;
sbit E = P3^2;
//st7920字模取模方式为逐行式 顺向去摸
sbit key1=P2^4; //升国旗
sbit key2=P2^5; //升半旗
sbit key3=P2^6; //降国旗
sbit zdbz1=P0^2;
sbit zdbz2=P0^1;
sbit zdbz3=P0^0;
uchar flag1,flag2,flag3,flag4,aa,bb,cc; //flag4为正反转标志
uchar code table[]={
0xf1,0xf2,0xf4,0xf8};
uchar tt,tt0,tt1;//定时器时间设置标志
uchar sj,sj1,sj2,sj3,gd1,gd13,gd12,gd11,gd2,gd21,gd22,gd23;//显示设置变量
uchar xx;//电机脉冲顺序变量
uint xh; //升半旗时候在最高点停留时间
/*自定义液晶字库中没有的字模*/
uchar code zdy[][32]={
{
0x00,0x00,0x07,0x20,0x3C,0x20,0x04,0x20,0x04,0x20,0x04,0x24,0x7F,0xFE,0x04,0x20,
0x04,0x20,0x04,0x20,0x08,0x20,0x08,0x20,0x10,0x20,0x20,0x20,0x40,0x20,0x00,0x00},/*"升",0*/
{
0x00,0x80,0x78,0xF8,0x49,0x10,0x52,0xA0,0x50,0x40,0x60,0xB0,0x53,0x4E,0x48,0x40,
0x4B,0xF8,0x68,0x40,0x52,0x40,0x43,0xFC,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},/*"降",1*/
{
0x00,0x7C,0x3F,0x80,0x02,0x20,0x04,0x20,0x08,0x40,0x1F,0x80,0x03,0x20,0x0C,0x10,
0x3F,0xF8,0x10,0x8C,0x04,0xA0,0x08,0x90,0x10,0x88,0x20,0x84,0x42,0x84,0x01,0x00},/*"系",2*/
{
0x10,0x40,0x10,0x20,0x23,0xFE,0x20,0x40,0x44,0x40,0xF8,0x88,0x09,0x04,0x13,0xFE,
0x20,0x94,0x7C,0x90,0x00,0x90,0x00,0x90,0x1D,0x12,0xE1,0x12,0x02,0x0E,0x04,0x00},/*"统",3*/
};
//下面代码横是列地址 竖是行地址 16*64 拆开16*32+16*32*/
uchar code bmp1[]={
0x02,0x08,0x00,0x08,0x00,0x00,0x04,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0xD0,0x06,0x04,0x08,0x03,0x02,0x00,0x38,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
0x41,0x00,0x09,0x43,0x00,0x04,0xA1,0x80,0x41,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,
0x42,0x00,0x29,0x00,0x00,0x14,0x80,0x00,0x8E,0x00,0xE7,0x00,0x00,0x00,0x00,0x00,
0x32,0x88,0x29,0x30,0x04,0x14,0x98,0x00,0x70,0x00,0x1C,0x80,0x00,0x00,0x00,0x00,
0x0C,0x00,0x16,0x48,0x00,0x0B,0x24,0x00,0x20,0x00,0x08,0x60,0x00,0x00,0x00,0x00,
0x00,0x20,0x4D,0x80,0x00,0x26,0xC0,0x00,0x40,0x00,0x08,0x10,0x00,0x00,0x00,0x00,
0x40,0x20,0x00,0x10,0x00,0x00,0x08,0x00,0x4C,0x00,0x08,0x10,0x00,0x00,0x00,0x00,
0x04,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x90,0x00,0x08,0x20,0x00,0x00,0x00,0x00,
0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x08,0x09,0xC0,0x00,0x00,0x00,0x00,
0x18,0x10,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x04,0x00,0x40,0x00,0x00,0x00,0x00,
0x25,0x3F,0xC3,0xFE,0x3F,0xE0,0x00,0x01,0x10,0x04,0x00,0x40,0x00,0x00,0x00,0x00,
0xA4,0x08,0x40,0x20,0x00,0x41,0x80,0x01,0x10,0x00,0x00,0x20,0x00,0x00,0x00,0x00,
0xA4,0xC8,0x47,0xFF,0x00,0x83,0xC0,0x01,0x00,0x40,0x00,0x20,0x00,0x00,0x00,0x00,
0x59,0x28,0x40,0x20,0x03,