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

📄 uart+lcm13.c

📁 是用C语言编写的关于用51单片机控制12864液晶LCD的源程序
💻 C
📖 第 1 页 / 共 2 页
字号:
#include <reg52.h>
//#include<intrins.h>

#define uchar unsigned char
#define uint unsigned int


 
uchar slverrnum[6]={0x00,0x00,0x00,0x00,0x00,0x00};
uchar slvreqnum[6]={0x01,0x01,0x01,0x01,0x01,0x01};
//ch1 and ch2 buf
uchar tdata_rec_1[2];
uchar tdata_rec_2[2];
//rec buf
uchar tdata_buf[7];
//index of rec buf
uchar count_t_buf=0;


uchar status,order,p1volumn;
uchar LEDcount1=0;
uchar nslave;
uchar uartdata;
uchar nslvreqnumber;
uchar nslvnowreqanw;
//uchar callnslvnum;

//uchar status_key;
//uchar status_dly;
//uchar status_order;
 
//led pin
sbit p35  = P3^5;

//define lcm ctrl pin
sbit RS   = P2^5;
sbit RW   = P2^4;
sbit E    = P2^3;
sbit CS1  = P2^2;
sbit CS2  = P2^1;
sbit RSTB = P2^0;
//sound alert pin
sbit sound = P2^7;

//lcm busy pin
sbit P0_7 = P0^7;

//int0 flag
bit flag_int0 = 0;
//uart flag
bit flag_uart=0;
//sys flag
bit flag_soundalert=0;
bit flag_ch1_busy=0;
bit flag_lineoff=0;
//xunjian flag
bit flag_nslverr=0;
bit flag_allok=0;
bit flag_allhavecheck=0;
//duijiang flag
bit flag_callnslvok=0;
bit flag_inputslavenumberok=0;
bit flag_inputnumberok=0;
bit flag_startcheck=0;


//uart data flag
bit flag_channel_1_data=0;
bit flag_channel_2_data=0;

uchar code com_checkall[5]={0xaa,0x00,0x02,0x11,0xf0};
//uchar code com_checkallbak[5]={0xaa,0x00,0x02,0x11,0x00};
uchar code com_checkallover[5]={0xaa,0x00,0x02,0x11,0xcc};

uchar code com_duijang[5]={0xaa,0x00,0x02,0x33,0xf0};
uchar code com_duijangchaiji[5]={0xaa,0x00,0x02,0x44,0xff};

uchar code com_guangbo[5]={0xaa,0x00,0x02,0x22,0xff};

unsigned char code logo[12][32]=
{
{//hei
 0x00,0x00,0x7E,0x7E,0x46,0x76,0x46,0xFE,0xFE,0x46,0x76,0x46,0x7E,0x7E,0x00,0x00,
0x00,0x6C,0x3D,0x0D,0x0D,0x3D,0x6D,0x0F,0x3F,0x6D,0x0D,0x0D,0x3D,0x6D,0x0C,0x00 
},
{//long
0x00,0x30,0x30,0x30,0x30,0xF0,0xFF,0x3F,0xF0,0xF2,0x36,0xBC,0xB0,0x30,0x00,0x00,
0x00,0x60,0x30,0x18,0x0E,0x27,0x61,0x30,0x3F,0x7F,0x66,0x63,0x61,0x70,0x30,0x00
},
{//jiang
0x20,0x62,0xC6,0x0C,0x00,0x00,0x06,0x06,0x06,0xFE,0xFE,0x06,0x06,0x06,0x00,0x00,
0x00,0x60,0x38,0x0E,0x02,0x30,0x30,0x30,0x30,0x3F,0x3F,0x30,0x30,0x30,0x30,0x00

},
{//da
0x00,0x30,0x30,0x30,0x30,0x30,0xFF,0xFF,0x30,0x30,0x30,0x30,0x30,0x30,0x00,0x00,
0x00,0x40,0x60,0x30,0x18,0x0E,0x07,0x03,0x06,0x0C,0x18,0x30,0x60,0x40,0x00,0x00
},

{//xue
0x00,0x38,0x39,0xDB,0xDE,0xD8,0xD9,0xDB,0xDE,0xD8,0xDC,0xDF,0x3B,0x38,0x00,0x00,
0x00,0x06,0x06,0x06,0x06,0x26,0x66,0x7E,0x3F,0x07,0x06,0x06,0x06,0x06,0x00,0x00

},
{//tong
0x60,0x62,0xE6,0xEC,0x00,0xF3,0xF3,0xB7,0xBF,0xFB,0xFF,0xB7,0xF3,0xF1,0x00,0x00,
0x40,0x60,0x3F,0x1F,0x30,0x6F,0x6F,0x62,0x62,0x6F,0x6F,0x62,0x6F,0x6F,0x60,0x000
},
{//xin
0x40,0x70,0xFC,0xFF,0x03,0x0C,0xAC,0xAC,0xAC,0xAF,0xAF,0xAC,0xAC,0xAC,0x0C,0x00,
0x00,0x00,0x7F,0x7F,0x00,0x00,0x7E,0x7E,0x36,0x36,0x36,0x36,0x7E,0x7E,0x00,0x00
},
{//gong
0x00,0x00,0x06,0x06,0x06,0x06,0x06,0xFE,0xFE,0x06,0x06,0x06,0x06,0x06,0x00,0x00,
0x00,0x30,0x30,0x30,0x30,0x30,0x30,0x3F,0x3F,0x30,0x30,0x30,0x30,0x30,0x30,0x00
},
{//zuo
0xC0,0x60,0xF8,0xFF,0x07,0x20,0x30,0x1C,0xFF,0xFB,0xD8,0xD8,0xD8,0xD8,0x18,0x00,
0x00,0x00,0x7F,0x7F,0x00,0x00,0x00,0x00,0x7F,0x7F,0x0C,0x0C,0x0C,0x0C,0x0C,0x00
},
{//shi
0x00,0x1C,0x1C,0x6C,0xEC,0xEC,0x6C,0x6F,0x6F,0x6C,0xEC,0xEC,0x6C,0x1C,0x1C,0x00,
0x00,0x60,0x68,0x6B,0x6B,0x6B,0x6B,0x7F,0x7F,0x69,0x69,0x6B,0x6B,0x68,0x60,0x00
},
//chu
{0x00,0x00,0x7C,0x7C,0x60,0x60,0x60,0xFF,0xFF,0x60,0x60,0x60,0x7C,0x7C,0x00,0x00,
0x00,0x00,0x3E,0x3E,0x30,0x30,0x30,0x3F,0x3F,0x30,0x30,0x30,0x7E,0x7E,0x00,0x00
},
//pin
{0x00,0x00,0x00,0x7E,0x7E,0x66,0x66,0x66,0x66,0x66,0x66,0x7E,0x7E,0x00,0x00,0x00,
0x00,0x7F,0x7F,0x33,0x33,0x7F,0x7F,0x00,0x7F,0x7F,0x33,0x33,0x33,0x7F,0x7F,0x00}

};
unsigned char code number[10][16]=
{
{//0
0x00,0xF0,0xF8,0x08,0x08,0xF8,0xF0,0x00,0x00,0x0F,0x1F,0x10,0x10,0x1F,0x0F,0x00
},
{//1
0x00,0x10,0x10,0xF8,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x1F,0x00,0x00,0x00
},
{//2
0x00,0x30,0x38,0x08,0x88,0xF8,0x70,0x00,0x00,0x1C,0x1E,0x13,0x11,0x10,0x10,0x00

},
{//3
0x00,0x10,0x18,0x88,0x88,0xF8,0x70,0x00,0x00,0x08,0x18,0x10,0x10,0x1F,0x0F,0x00
},
{//4
0x00,0x00,0x80,0xE0,0x70,0xF8,0xF8,0x00,0x00,0x06,0x07,0x05,0x04,0x1F,0x1F,0x00
},
{//5
0x00,0xF8,0xF8,0x88,0x88,0x88,0x08,0x00,0x00,0x09,0x19,0x10,0x10,0x1F,0x0F,0x00

},
{//6
0x00,0xF0,0xF8,0x88,0x88,0x98,0x10,0x00,0x00,0x0F,0x1F,0x10,0x10,0x1F,0x0F,0x00
},
//7
{0x00,0x08,0x08,0x88,0xE8,0x78,0x18,0x00,0x00,0x00,0x1C,0x1F,0x03,0x00,0x00,0x00},
//8
{0x00,0x70,0xF8,0x88,0x88,0xF8,0x70,0x00,0x00,0x0F,0x1F,0x10,0x10,0x1F,0x0F,0x00},
{//9
0x00,0xF0,0xF8,0x08,0x08,0xF8,0xF0,0x00,0x00,0x08,0x19,0x11,0x11,0x1F,0x0F,0x00
}

};


unsigned char code qingshaohou[4][32]=
{
//qing
{0x40,0x42,0x4C,0xC4,0x00,0x22,0xAA,0xAA,0xAA,0xBF,0xAA,0xAA,0xAA,0x22,0x20,0x00,
0x00,0x00,0x00,0x7F,0x20,0x10,0xFF,0x0A,0x0A,0x0A,0x4A,0x8A,0x7F,0x00,0x00,0x00},
//shao
{0x00,0x12,0x92,0x72,0xFF,0x51,0x81,0xF2,0x9C,0x90,0x9F,0x90,0x98,0xF4,0x02,0x00,
0x08,0x06,0x01,0x00,0xFF,0x00,0x00,0xFF,0x04,0x04,0x04,0x44,0x84,0x7F,0x00,0x00
},
//hou
{0x40,0x20,0xF8,0x07,0xF2,0x08,0x0A,0xFA,0x4A,0xCA,0x4A,0x4E,0x4A,0x48,0x08,0x00,
0x00,0x00,0x7F,0x00,0x0F,0x42,0x23,0x12,0x0E,0x03,0x06,0x1A,0x32,0x62,0x22,0x00
},
//.
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00} 
};

unsigned char code zanwu[2][32]=
{
//qing
{0x80,0x92,0x9A,0x96,0xFB,0x52,0x52,0x80,0x7E,0x12,0x12,0x12,0xF2,0x12,0x10,0x00,
0x00,0x00,0x00,0x7E,0x4B,0x4A,0x4B,0x4A,0x4A,0x4A,0x4A,0x7E,0x01,0x00,0x00,0x00},
//shao
{0x00,0x40,0x42,0x42,0x42,0x42,0x42,0xFE,0xC2,0x42,0x42,0x42,0x42,0x42,0x40,0x00,
0x40,0x40,0x20,0x10,0x08,0x04,0x03,0x00,0x3F,0x40,0x40,0x40,0x40,0x40,0x70,0x00
}
};

unsigned char code hujiaojilu[4][32]=
{
//hu
{0xFC,0x04,0x04,0x04,0xFC,0x04,0x14,0x64,0x04,0xFC,0x02,0x42,0x3A,0x12,0x00,0x00,
0x07,0x02,0x02,0x02,0x07,0x01,0x01,0x41,0x81,0x7F,0x01,0x01,0x01,0x01,0x01,0x00},
//jiao
{0x00,0xFC,0x04,0x04,0x04,0xFC,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,
0x00,0x0F,0x02,0x02,0x02,0x07,0x00,0x02,0x07,0x02,0x02,0x01,0x01,0xFF,0x00,0x00
},
//ji
{0x40,0x41,0x4E,0xC4,0x00,0x00,0x00,0xC2,0x42,0x42,0x42,0x42,0x42,0x7E,0x00,0x00,
0x00,0x00,0x00,0x7F,0x20,0x10,0x00,0x3F,0x40,0x40,0x40,0x40,0x40,0x78,0x20,0x00
},
//lu
{0x20,0x20,0x22,0xAA,0x2A,0x2A,0x2A,0xEA,0x2A,0x2A,0xAA,0xFE,0x20,0x20,0x20,0x00,
0x00,0x10,0x30,0x10,0x09,0x4A,0x84,0x7F,0x02,0x05,0x08,0x18,0x30,0x10,0x00,0x00} 
};


unsigned char code calln[7][32]=
{ 
//shu
{0x44,0xF4,0x4F,0xE4,0x44,0x64,0x90,0x98,0x94,0x93,0x14,0x98,0x08,0xD0,0x10,0x00,
0x04,0x04,0x04,0xFF,0x02,0x02,0xFF,0x4A,0x8A,0x7F,0x00,0x3F,0x80,0xFF,0x00,0x00
},
//ru
{0x00,0x00,0x00,0x00,0x01,0x83,0x76,0x18,0x60,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
0x40,0x20,0x10,0x08,0x06,0x01,0x00,0x00,0x00,0x00,0x03,0x04,0x18,0x30,0x10,0x00
},
//bei
{0x08,0x08,0x89,0xCE,0x38,0x88,0xF8,0x08,0xC8,0x48,0x7F,0x48,0xC8,0x18,0x08,0x00,
0x02,0x01,0x00,0xFF,0x01,0x82,0x7F,0x80,0x41,0x36,0x08,0x16,0x21,0xC0,0x40,0x00},
//jiao
{0x00,0xFC,0x04,0x04,0x04,0xFC,0x00,0x00,0xFC,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,
0x00,0x0F,0x02,0x02,0x02,0x07,0x00,0x02,0x07,0x02,0x02,0x01,0x01,0xFF,0x00,0x00},
//hao
{0x40,0x40,0x40,0x5F,0xD1,0x51,0x51,0x51,0x51,0x51,0x51,0x5F,0x40,0x40,0x40,0x00,
0x00,0x00,0x00,0x02,0x07,0x02,0x02,0x22,0x42,0x82,0x42,0x3E,0x00,0x00,0x00,0x00},
//ma
{0x02,0x82,0xE2,0x5E,0x42,0xC2,0x00,0x02,0xFA,0x82,0x82,0x82,0xFE,0x80,0x00,0x00,
0x01,0x00,0x7F,0x10,0x10,0x3F,0x00,0x04,0x04,0x04,0x44,0x84,0x40,0x3F,0x00,0x00},
//:
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00} 
};

unsigned char code guaduan[2][32]=
{
//gua
{0x18,0x18,0xFF,0xFF,0x98,0x60,0x6C,0x6C,0x6C,0x7F,0x7F,0x6C,0x6C,0x6C,0x60,0x00,
0x83,0xE3,0xFF,0xFF,0x81,0xE0,0xE6,0xE6,0xE6,0xFF,0xFF,0xE6,0xE6,0xE6,0xE0,0x80},
//duan
{0x00,0xFE,0xFE,0x6C,0x68,0xFF,0xFF,0x6C,0x64,0xFE,0xFE,0x66,0xE7,0xE3,0x60,0x00,
0x80,0xBF,0xBF,0xB6,0xB3,0xBF,0xBF,0xF3,0xF2,0xBF,0x8F,0x80,0xFF,0xFF,0x80,0x80}
};

unsigned char code zhengzai[2][32]=
{
//zheng
{0x00,0x02,0x02,0xC2,0x02,0x02,0x02,0x02,0xFE,0x82,0x82,0x82,0x82,0x82,0x02,0x00,
0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x00},
//zai
{0x00,0x04,0x04,0xC4,0x64,0x9C,0x87,0x84,0x84,0xE4,0x84,0x84,0x84,0x84,0x04,0x00,
0x04,0x02,0x01,0x7F,0x00,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x20,0x00}
};
unsigned char code jieting[2][32]=
{
//jie
{0x18,0x18,0xFF,0xFF,0x98,0x00,0x6E,0x7E,0xF6,0xE7,0x77,0x7E,0x6E,0x66,0x60,0x00,
0x83,0xE3,0xFF,0xBF,0x81,0xE3,0xE3,0xEF,0xBF,0xB3,0x93,0xBF,0xEF,0xE3,0x83,0x80},
//ting
{0xFE,0xFE,0x06,0x06,0xFE,0xFE,0x00,0xFE,0xFE,0x66,0x66,0xE3,0xE3,0x63,0x60,0x00,
0x9F,0x9F,0x86,0x86,0x8F,0xEF,0xB0,0x9F,0x8F,0x80,0x80,0xFF,0xFF,0x80,0x80,0x80}
};


unsigned char code douyi[2][32]=
{
//dou
{0x20,0x24,0x24,0xA4,0x7F,0x24,0x34,0x28,0x24,0x00,0xFE,0x22,0x52,0x8A,0x06,0x00,
0x04,0x02,0x7F,0x25,0x25,0x25,0x25,0x7F,0x00,0x00,0xFF,0x08,0x08,0x10,0x0F,0x00},
//yi
{0x00,0x00,0xE2,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x7E,0x00,0x00,0x00,0x00,
0x00,0x00,0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3C,0x10,0x00}
};

unsigned char code yu[32]=
{
//yu
0x00,0x00,0x00,0x00,0x7E,0x48,0x48,0x48,0x48,0x48,0x48,0x48,0x48,0xCC,0x08,0x00,
0x00,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x24,0x46,0x44,0x20,0x1F,0x00,0x00
};
unsigned char code ceng[32]=
{
//ceng
0x00,0x00,0xF8,0x88,0x99,0xEA,0x8C,0xF8,0x88,0xCC,0xAB,0x99,0x88,0xF8,0x00,0x00,
0x00,0x00,0x00,0x00,0xFE,0x4A,0x4A,0x4A,0x4A,0x4A,0x4A,0xFE,0x00,0x00,0x00,0x00};

unsigned char code xunjian[2][32]=
{
//xun
{0x40,0x42,0x4C,0xC0,0x40,0xA0,0x18,0x07,0x62,0x98,0x07,0x62,0x98,0x07,0x02,0x00,
0x80,0x40,0x20,0x1F,0x20,0x40,0x43,0x4C,0x40,0x41,0x4E,0x44,0x41,0x4E,0x44,0x00},
//jian
{0x08,0x88,0x68,0xFF,0x28,0x48,0x10,0x48,0x44,0x43,0x44,0x48,0x50,0x10,0x10,0x00,
0x02,0x01,0x00,0x7F,0x00,0x20,0x22,0x2C,0x21,0x2E,0x30,0x28,0x27,0x22,0x20,0x00}
};

/*unsigned char code huifu[2][32]=
{
//hui
{0x00,0xFE,0xFE,0x06,0xF6,0xF6,0x36,0x36,0xF6,0xF6,0x06,0x06,0xFE,0xFE,0x00,0x00,
0x80,0xFF,0xFF,0xB0,0xB7,0xB7,0xB6,0xB6,0xB7,0xB7,0xB0,0xB0,0xFF,0xFF,0x80,0x80},
//fu
{0x00,0x18,0x0C,0xFE,0xFF,0xAB,0xAA,0xAA,0xAA,0xAA,0xAA,0xFA,0xFA,0x02,0x00,0x00,
0x80,0xC8,0xCC,0xCC,0xE6,0xEF,0xBF,0xB6,0xB6,0xBE,0xEE,0xE6,0xC0,0xC0,0x80,0x80}
};*/

 

unsigned char code nslvereqanswer[6][32]=
{
//hao
{0x40,0x40,0x40,0x5F,0xD1,0x51,0x51,0x51,0x51,0x51,0x51,0x5F,0x40,0x40,0x40,0x00,
0x00,0x00,0x00,0x02,0x07,0x02,0x02,0x22,0x42,0x82,0x42,0x3E,0x00,0x00,0x00,0x00},
//ji
{0x08,0x08,0xC8,0xFF,0x48,0x88,0x08,0x00,0xFE,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,
0x04,0x03,0x00,0xFF,0x00,0x41,0x30,0x0C,0x03,0x00,0x00,0x00,0x3F,0x40,0x78,0x00},
//qing
{0x40,0x42,0x4C,0xC4,0x00,0x22,0xAA,0xAA,0xAA,0xBF,0xAA,0xAA,0xAA,0x22,0x20,0x00,
0x00,0x00,0x00,0x7F,0x20,0x10,0xFF,0x0A,0x0A,0x0A,0x4A,0x8A,0x7F,0x00,0x00,0x00},
//qiu
{0x08,0x08,0x28,0x48,0x88,0x08,0x08,0xFF,0x08,0x89,0x4A,0x2E,0x28,0x08,0x08,0x00,
0x00,0x08,0x08,0x04,0x02,0x41,0x80,0x7F,0x01,0x01,0x02,0x04,0x0C,0x18,0x08,0x00},
//tong
{0x40,0x41,0xC6,0x00,0x00,0xF2,0x52,0x52,0x56,0xFA,0x5A,0x56,0xF2,0x00,0x00,0x00,
0x40,0x20,0x1F,0x20,0x40,0x5F,0x42,0x42,0x42,0x5F,0x4A,0x52,0x4F,0x40,0x40,0x00},
//hua
{0x40,0x41,0x4E,0xC4,0x00,0x20,0x24,0x24,0x24,0x24,0xFC,0x22,0x22,0x22,0x20,0x00,
0x00,0x00,0x00,0x7F,0x20,0x10,0x00,0x7E,0x22,0x22,0x23,0x22,0x22,0x7E,0x00,0x00}
};
 

unsigned char code canntlink[4][32]=
{
//wu
{0x00,0x40,0x42,0x42,0x42,0x42,0x42,0xFE,0xC2,0x42,0x42,0x42,0x42,0x42,0x40,0x00,
0x40,0x40,0x20,0x10,0x08,0x04,0x03,0x00,0x3F,0x40,0x40,0x40,0x40,0x40,0x70,0x00},
//fa
{0x10,0x60,0x01,0xC6,0x30,0x00,0x10,0x10,0x10,0xFF,0x10,0x10,0x10,0x10,0x00,0x00,
0x04,0x04,0xFE,0x01,0x00,0x41,0x61,0x51,0x4D,0x43,0x41,0x41,0x51,0xE1,0x01,0x00},
//lian
{0x40,0x41,0x4E,0xC4,0x00,0x44,0xE4,0x5C,0x47,0xF4,0x44,0x44,0x44,0x04,0x00,0x00,
0x00,0x40,0x20,0x1F,0x22,0x42,0x42,0x42,0x42,0x5F,0x42,0x42,0x42,0x42,0x42,0x00},
//tong
{0x40,0x41,0xC6,0x00,0x00,0xF2,0x52,0x52,0x56,0xFA,0x5A,0x56,0xF2,0x00,0x00,0x00,
0x40,0x20,0x1F,0x20,0x40,0x5F,0x42,0x42,0x42,0x5F,0x4A,0x52,0x4F,0x40,0x40,0x00}
};
unsigned char code guangbozhong[3][32]=
{
//guang
{0x00,0x00,0xFC,0x04,0x04,0x04,0x04,0x05,0x06,0x04,0x04,0x04,0x04,0x04,0x04,0x00,
0x40,0x30,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
//bo
{0x08,0x08,0xFF,0x88,0x48,0x12,0x96,0x5A,0x32,0xFE,0x31,0x59,0x95,0x91,0x90,0x00,
0x42,0x81,0x7F,0x00,0x01,0x01,0xFF,0x49,0x49,0x7F,0x49,0x49,0xFF,0x01,0x00,0x00},
//zhong
{0x00,0x00,0xFC,0x08,0x08,0x08,0x08,0xFF,0x08,0x08,0x08,0x08,0xFC,0x08,0x00,0x00,
0x00,0x00,0x07,0x02,0x02,0x02,0x02,0xFF,0x02,0x02,0x02,0x02,0x07,0x00,0x00,0x00}

 
};

 

unsigned char code querenquxiao[4][32]=
{
//que
{0x80,0xE6,0xFE,0x5E,0xC6,0xC6,0x18,0xFC,0xF7,0xB7,0xFE,0xFE,0xB6,0xF0,0xF0,0x00,
0x80,0xBF,0xBF,0x88,0x9F,0x9F,0xE0,0xBF,0x9F,0x85,0xBF,0xBF,0xE5,0xFF,0xBF,0x80},
//ren
{0x00,0x1C,0x1C,0x6C,0x6C,0x6C,0x6C,0xEF,0xEF,0x6C,0x6C,0x6C,0x6C,0x1C,0x1C,0x00,
0xC0,0xE0,0xB8,0x9F,0x9F,0xB0,0xB0,0xFF,0xFF,0xE6,0xE6,0xE6,0xE6,0xE6,0xE0,0x80},
//qu
{0x03,0xFF,0xFF,0x23,0x23,0xFF,0xFF,0x00,0x06,0xFE,0xFE,0x06,0xFE,0xFE,0x00,0x00,
0x98,0x9F,0x9F,0x99,0x89,0xFF,0xFF,0x8C,0xB0,0xB1,0x9F,0x8E,0x9B,0xB1,0x90,0x80
},
//xiao
{0x20,0x62,0xC6,0x0C,0x00,0x02,0xF6,0xF4,0x30,0x3F,0x3F,0x30,0xF4,0xF6,0x00,0x00,
0x80,0xF0,0xBC,0x8E,0x80,0x80,0xFF,0xFF,0x85,0x85,0xA5,0xE5,0xFF,0xBF,0x80,0x80}
};

void delay(uchar n)
    {
	uchar i,j;
for(j=0;j<n;j++)
	for(i=0;i<250;i++);
	}
 
void busy(void)
	{
		bit flag;
		while(1)
			{
				P0_7=1;
				RS=0; //;READ BUSY
				RW=1;
				E=1;
				flag=P0_7;
				E=0;
				if(!flag) break;
				//SomeNOP();
				delay(1);
			}
	}
void wr_commond(uchar commond)
	{
  		busy();
  		E=1;
  		RS=0;
  		RW=0;
  		//delay05ms(1);
  		P0=commond;
  		//delay05ms(1);
  		E=0;
	}

 
void wr_data(uchar Data)
	{
		uchar i;
		busy();
		RS=1;
		RW=0;
		E=1;
		//delay05ms(1);
		P0=Data;
		for(i=0;i<=0x10;i++);
		//delay05ms(1);
		E=0;
	}

 

//config lcm start line,column,page
void LCMlcpinit(uchar tpage,uchar tline,uchar tcolumn)
{
wr_commond(tline);//config line
wr_commond(tcolumn);//config column
wr_commond(tpage); //config page
}



void CLRlcmscn()
{
uchar i,count;
CS1=CS2=1;
busy();


//clear lcm ddram all
LCMlcpinit(0xb8,0xc0,0x40);
 
for(count=0xb8;count<0xc0;count++)
	{
		wr_commond(count);
		wr_commond(0x40);
			for(i=0;i<0x40;i++)
				{
					wr_data(0x00);
				}
	}
}
//write lcm by 1 fully 
void writeLCMto1()
{
uchar i,count;
CS1=CS2=1;


LCMlcpinit(0xb8,0xc0,0x40);
 
	for(count=0xb8;count<0xc0;count++) 
		{
			wr_commond(count);
			wr_commond(0x40);
			for(i=0;i<0x40;i++)
				{
					wr_data(0xff);
				}
		}
}

void MCUinit()
{
/*PCON=0x80;
TMOD=0x20;
TH1=0xe6;
TCON=0x40;
SCON=0x50;
TR1=1;
IE=0x90;*/

//uart
TMOD=0x21;
//TMOD=0x20;
//TL1=0xe6;
TCON=0x40;
TH1=0xe6;
SCON=0x50;
PCON=0x80;
TR1=1;
//int0
IP = 0x10;
  IE = 0x95;
//  TMOD=0x01;
  //tiem0
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
EA=1;
ET0=1;TR0=1;
}


void LCMinit()
{
 
P0=0xff;
wr_commond(0x3f);//open lcm
CLRlcmscn();
writeLCMto1();

}
 

//------------------------------------------------------------------


void DLYfigueratxx(bit cs,uchar tpage,uchar add,uchar content[32])//tpage:0-3;add:0-3
{
uchar i;
uchar line,column,page;
if(cs){
	CS1=1;
	CS2=0;}
else
	{
	CS1=0;
	CS2=1;}
line=0xc0;
column=0x40+add*16;
page=0xb8+tpage *2;
 LCMlcpinit(page,line,column);
		for(i=0;i<32;i++)
					{
						
					wr_data(content[i]);
							if(i==15)
						 LCMlcpinit((page+1),line,column);
					}
	}
void DLYnumberatxx(bit cs,uchar tpage,uchar add,uchar content[16])//tpage:0-3;add:0-3
{
uchar i;
uchar line,column,page;
if(cs){
	CS1=1;
	CS2=0;}
else
	{
	CS1=0;
	CS2=1;}
line=0xc0;
column=0x40+add*16;
page=0xb8+tpage *2;
 LCMlcpinit(page,line,column);
		for(i=0;i<16;i++)
					{
						
					wr_data(content[i]);
							if(i==7)
						 LCMlcpinit((page+1),line,column);
					}
	}

//-----------------------------------------------------
void tbyte(uchar tdata)
{
SBUF=tdata;  
while(TI==0);
TI=0;
}
//-----------------------------------------------------
void tpakage(uchar tdata[5],bit onlyto_one)
{
uchar i,tcrc;
if(onlyto_one)
 tdata[4]=tdata[4]+nslave;
for(i=0;i<5;i++)
 {
 tbyte(tdata[i]);
 delay(1);
 }
tcrc=tdata[0]^tdata[1]^tdata[2]^tdata[3]^tdata[4];
tbyte(tcrc);
delay(1);
tbyte(0x55);
}
//-----------------------------------------------------

void DLYqueren_quxiao(bit onlyqueren,bit onlyquxiao)
{
uchar i;
 
if(onlyqueren)
for(i=0;i<2;i++)
 DLYfigueratxx(1,3,i,querenquxiao[i]); 
if(onlyquxiao)
 for(i=0;i<2;i++)
 DLYfigueratxx(0,3,i+2,querenquxiao[i+2]); 
}
//-------------------------------------------------
void DLYlineoff()
{
uchar i;
///uchar line,column,page; 
 for(i=0;i<2;i++)
 DLYfigueratxx(0,3,i+2,guaduan[i]);  		 							 			 
}
//--------------------------------------------------
void DLYlogo()
{ 
uchar i; 
CLRlcmscn();
for(i=0;i<4;i++)
  DLYfigueratxx(1,1,i,logo[i]);
  for(i=0;i<4;i++)
 DLYfigueratxx(0,1,i,logo[i+4]);
 for(i=0;i<4;i++)
  DLYfigueratxx(1,2,i,logo[i+8]); 			     
}

//----------------------------------------------------
void dealkey()
{	//uchar i;		     
//ok-link-anwser	 
	if(p1volumn==0xf9)
	{if(status==0xff&&flag_inputnumberok)	
    {flag_inputslavenumberok=1;
	status=0x00;}
	goto outkey;
}

//chancel-lineoff
	if(p1volumn==0xfb) 
	{//if(status==0xff)
		//{
		flag_lineoff=1;
		goto outkey;
		//}
	}

//xunjain
	if(p1volumn==0xff)
	{order=0x11;goto outkey;}
//duijiang
	if(p1volumn==0xd7)

⌨️ 快捷键说明

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