📄 123.c
字号:
#include "REG51.H"
#define FOSC 12 //定义晶振频率
#define INIT_TH0 0x8C //定时器T0初始值
#define INIT_TL0 0xB0
#define TMOD_T00 0x00 //定义T0为方式0,GATE=0,C/T=0,13位计数器
#define TMOD_T01 0x01 //定义T0为方式1,GATE=0,C/T=0,16位计数器
#define TMOD_T02 0x02 //定义T0为方式2,GATE=0,C/T=0,自动装入8位计数器
#define TMOD_T03 0x03 //定义T0为方式3,GATE=0,C/T=0,定时器0分成两个8位计数器,定时器1停止计数
/*缩定定义*/
#define uchar unsigned char
#define uint unsigned int
/*P1口位定义*/
/*P2 BIT Define*/
/*P3 bit define*/
/************位定义***************/
sbit STTP = P2^7;
/************函数声明*************/
void delay(uint c); //延时函数
void out_rxd( unsigned char*d); //汉字输出
/************汉字点阵*************/
char code hanzi[][32]={
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
0x24,0x42,0x14,0x42,0x87,0x44,0x48,0x44,0x11,0x48,0x01,0x50,0x9A,0x60,0x85,0xFF,
0x98,0x60,0xE0,0x50,0x82,0x48,0x81,0x48,0xFE,0x44,0x10,0x46,0x0C,0x44,0x00,0x00,//梁1
0x00,0x04,0x10,0x38,0x12,0x00,0x12,0x00,0x12,0x7C,0x12,0x02,0x12,0x02,0xFE,0x82,
0x12,0x72,0x12,0x22,0x12,0x02,0x12,0x0E,0x12,0x44,0x12,0x38,0x10,0x10,0x00,0x00,//志2
0x00,0x80,0x01,0x02,0x06,0x02,0x78,0x82,0x08,0x82,0x08,0x82,0x08,0x82,0x08,0x82,
0xFF,0xFE,0x48,0x82,0x08,0x82,0x08,0x82,0x19,0x82,0x08,0x86,0x00,0x02,0x00,0x00,//生3
0x00,0x00,0x18,0x94,0x20,0x94,0x28,0xA8,0x29,0x28,0x29,0x52,0xAB,0x91,0x6D,0x22,
0x28,0xFC,0x28,0x60,0x29,0x90,0x20,0x90,0x28,0x08,0x30,0x0C,0x20,0x08,0x00,0x00,//家4
0x00,0x00,0x00,0x00,0x1F,0xF0,0x12,0x20,0x12,0x20,0x12,0x20,0x12,0x20,0xFF,0xFC,
0x12,0x22,0x12,0x22,0x12,0x22,0x12,0x22,0x1F,0xF2,0x00,0x02,0x00,0x0E,0x00,0x00,//电5
0x04,0x44,0x1C,0xC4,0xE5,0x44,0x46,0x48,0x08,0x48,0x04,0x00,0x18,0x00,0xFF,0xFF,
0x52,0x44,0x12,0x44,0x52,0x44,0x3F,0xFC,0x12,0x44,0x12,0x44,0x12,0x44,0x00,0x00,//维6
0x04,0x00,0x08,0x00,0x3F,0xFE,0xE0,0x00,0x4F,0xC0,0x04,0x2A,0x19,0x2A,0xF1,0x52,
0x2A,0xD4,0x25,0xA4,0x24,0xA8,0x2A,0x48,0x33,0x50,0x01,0x90,0x01,0x00,0x00,0x00,//修7
0x00,0x00,0x08,0x41,0x30,0x41,0x20,0x42,0x32,0x42,0x2D,0xC4,0x29,0x48,0xA0,0x50,
0x6F,0xE0,0x20,0x50,0x20,0x48,0x20,0x47,0x28,0x42,0x30,0x40,0x20,0x40,0x00,0x00,//实8
0x02,0x00,0x82,0x00,0x72,0x00,0x23,0xFE,0x00,0x04,0x00,0x09,0x00,0x06,0xFF,0xF8,
0x00,0x00,0x00,0x00,0x7F,0xFE,0x00,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00,0x00,//验9
0x00,0x02,0x08,0x02,0x34,0x12,0x24,0x92,0x25,0x92,0x26,0x92,0xA4,0x92,0x64,0xFE,
0x24,0x92,0x24,0x92,0x25,0x92,0x24,0xD2,0x2C,0x12,0x34,0x02,0x20,0x02,0x00,0x00,//室10
0x08,0x20,0x86,0x20,0x60,0xFF,0x07,0x00,0x18,0x00,0x04,0x00,0x55,0xFF,0x55,0x50,
0x55,0x50,0xFD,0x50,0x55,0x52,0x55,0x51,0x55,0xFE,0x54,0x00,0x00,0x00,0x00,0x00,//清11
0x7F,0xFF,0x40,0x40,0x4C,0x20,0x53,0xC2,0x62,0x04,0x04,0x88,0x0C,0xB2,0x34,0x81,
0xC7,0xFE,0x24,0x80,0x14,0xA0,0x08,0x90,0x04,0x88,0x04,0x0C,0x00,0x00,0x00,0x00,//除12
0x00,0x02,0x7F,0xFC,0x48,0x80,0x48,0x80,0x88,0x81,0x8F,0x82,0x80,0x0C,0x00,0x30,
0x7F,0xC0,0x44,0x00,0x44,0x00,0x84,0x00,0x87,0xFF,0x84,0x00,0x84,0x00,0x00,0x00,//所13
0x00,0x40,0x20,0x80,0x21,0x00,0x22,0x00,0x27,0xFF,0x2C,0x90,0x34,0x90,0xE4,0x90,
0x24,0x94,0x24,0x92,0x24,0x93,0x27,0xFE,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,//有14
0x08,0x42,0x49,0x42,0x2A,0x54,0x1C,0x74,0xFF,0xC8,0x1C,0x58,0x2A,0x64,0x4A,0x40,
0x01,0x02,0x0F,0x04,0xF8,0xC8,0x48,0x30,0x08,0xCC,0x0F,0x06,0x08,0x04,0x00,0x00,//数15
0x10,0x40,0x10,0x42,0x10,0x81,0xFF,0xFE,0x11,0x02,0x02,0x0C,0x7F,0xF0,0x49,0x3F,
0x49,0x22,0x49,0x22,0x4F,0xE2,0x49,0x22,0x49,0x22,0x79,0x3F,0x01,0x00,0x00,0x00,//据16
0x00,0x04,0x00,0x18,0x7F,0xE4,0x40,0x04,0x42,0x04,0x42,0x04,0x42,0x04,0x42,0x04,
0x5F,0xFC,0x42,0x04,0x42,0x84,0x42,0x74,0x46,0x24,0x42,0x04,0x40,0x04,0x00,0x00,//压17
0x04,0x44,0x0C,0xC4,0x35,0x4C,0xE6,0x48,0x44,0x48,0x08,0x80,0x31,0xFE,0x26,0x00,
0x20,0x00,0xA5,0xFE,0x65,0x24,0x27,0x24,0x25,0x24,0x35,0xFE,0x20,0x00,0x00,0x00,//缩18
0x10,0x40,0x11,0x80,0x16,0x00,0xFF,0xFF,0x12,0x00,0x15,0x80,0x08,0x80,0x30,0xFF,
0xE9,0x42,0x25,0x42,0x22,0x42,0x2D,0x42,0x31,0x7F,0x00,0x80,0x00,0x80,0x00,0x00,//格19
0x00,0x00,0x10,0x04,0x11,0x06,0x11,0x0C,0x11,0xF8,0x11,0x08,0x11,0x10,0x10,0x10,
0xFF,0x00,0x10,0xE0,0x90,0x18,0x70,0x04,0x50,0x02,0x10,0x01,0x00,0x0E,0x00,0x00,//式20
0x00,0x02,0x40,0x0C,0x67,0xF0,0x54,0x00,0x4C,0x00,0x44,0x00,0x7C,0x00,0x44,0x00,
0x44,0x00,0x7C,0x00,0x44,0x00,0x4C,0x00,0x74,0x00,0xC4,0x00,0x44,0x00,0x00,0x00,//严21
0x00,0x02,0x40,0x0C,0x67,0xF0,0x54,0x00,0x4C,0x00,0x44,0x00,0x7C,0x00,0x44,0x00,
0x44,0x00,0x7C,0x00,0x44,0x00,0x4C,0x00,0x74,0x00,0xC4,0x00,0x44,0x00,0x00,0x00,//严22
0x00,0x00,0x10,0x04,0x11,0x06,0x11,0x0C,0x11,0xF8,0x11,0x08,0x11,0x10,0x10,0x10,
0xFF,0x00,0x10,0xE0,0x90,0x18,0x70,0x04,0x50,0x02,0x10,0x01,0x00,0x0E,0x00,0x00,//式23
0x10,0x40,0x11,0x80,0x16,0x00,0xFF,0xFF,0x12,0x00,0x15,0x80,0x08,0x80,0x30,0xFF,
0xE9,0x42,0x25,0x42,0x22,0x42,0x2D,0x42,0x31,0x7F,0x00,0x80,0x00,0x80,0x00,0x00,//格24
0x04,0x44,0x0C,0xC4,0x35,0x4C,0xE6,0x48,0x44,0x48,0x08,0x80,0x31,0xFE,0x26,0x00,
0x20,0x00,0xA5,0xFE,0x65,0x24,0x27,0x24,0x25,0x24,0x35,0xFE,0x20,0x00,0x00,0x00,//缩25
0x00,0x02,0x08,0x02,0x34,0x12,0x24,0x92,0x25,0x92,0x26,0x92,0xA4,0x92,0x64,0xFE,
0x24,0x92,0x24,0x92,0x25,0x92,0x24,0xD2,0x2C,0x12,0x34,0x02,0x20,0x02,0x00,0x00,//室26
0x08,0x20,0x86,0x20,0x60,0xFF,0x07,0x00,0x18,0x00,0x04,0x00,0x55,0xFF,0x55,0x50,
0x55,0x50,0xFD,0x50,0x55,0x52,0x55,0x51,0x55,0xFE,0x54,0x00,0x00,0x00,0x00,0x00,//清27
0x7F,0xFF,0x40,0x40,0x4C,0x20,0x53,0xC2,0x62,0x04,0x04,0x88,0x0C,0xB2,0x34,0x81,
0xC7,0xFE,0x24,0x80,0x14,0xA0,0x08,0x90,0x04,0x88,0x04,0x0C,0x00,0x00,0x00,0x00,//除28
0x00,0x02,0x7F,0xFC,0x48,0x80,0x48,0x80,0x88,0x81,0x8F,0x82,0x80,0x0C,0x00,0x30,
0x7F,0xC0,0x44,0x00,0x44,0x00,0x84,0x00,0x87,0xFF,0x84,0x00,0x84,0x00,0x00,0x00,//所29
0x00,0x40,0x20,0x80,0x21,0x00,0x22,0x00,0x27,0xFF,0x2C,0x90,0x34,0x90,0xE4,0x90,
0x24,0x94,0x24,0x92,0x24,0x93,0x27,0xFE,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,//有30
0x08,0x42,0x49,0x42,0x2A,0x54,0x1C,0x74,0xFF,0xC8,0x1C,0x58,0x2A,0x64,0x4A,0x40,
0x01,0x02,0x0F,0x04,0xF8,0xC8,0x48,0x30,0x08,0xCC,0x0F,0x06,0x08,0x04,0x00,0x00,//数31
0x10,0x40,0x10,0x42,0x10,0x81,0xFF,0xFE,0x11,0x02,0x02,0x0C,0x7F,0xF0,0x49,0x3F,
0x49,0x22,0x49,0x22,0x4F,0xE2,0x49,0x22,0x49,0x22,0x79,0x3F,0x01,0x00,0x00,0x00,//据32
0x00,0x04,0x00,0x18,0x7F,0xE4,0x40,0x04,0x42,0x04,0x42,0x04,0x42,0x04,0x42,0x04,
0x5F,0xFC,0x42,0x04,0x42,0x84,0x42,0x74,0x46,0x24,0x42,0x04,0x40,0x04,0x00,0x00,//压33
0x00,0x04,0x00,0x18,0x7F,0xE4,0x40,0x04,0x42,0x04,0x42,0x04,0x42,0x04,0x42,0x04,
0x5F,0xFC,0x42,0x04,0x42,0x84,0x42,0x74,0x46,0x24,0x42,0x04,0x40,0x04,0x00,0x00,//压34
0x04,0x44,0x0C,0xC4,0x35,0x4C,0xE6,0x48,0x44,0x48,0x08,0x80,0x31,0xFE,0x26,0x00,
0x20,0x00,0xA5,0xFE,0x65,0x24,0x27,0x24,0x25,0x24,0x35,0xFE,0x20,0x00,0x00,0x00,//缩35
0x10,0x40,0x11,0x80,0x16,0x00,0xFF,0xFF,0x12,0x00,0x15,0x80,0x08,0x80,0x30,0xFF,
0xE9,0x42,0x25,0x42,0x22,0x42,0x2D,0x42,0x31,0x7F,0x00,0x80,0x00,0x80,0x00,0x00,//格36
0x00,0x00,0x10,0x04,0x11,0x06,0x11,0x0C,0x11,0xF8,0x11,0x08,0x11,0x10,0x10,0x10,
0xFF,0x00,0x10,0xE0,0x90,0x18,0x70,0x04,0x50,0x02,0x10,0x01,0x00,0x0E,0x00,0x00,//式37
0x00,0x02,0x40,0x0C,0x67,0xF0,0x54,0x00,0x4C,0x00,0x44,0x00,0x7C,0x00,0x44,0x00,
0x44,0x00,0x7C,0x00,0x44,0x00,0x4C,0x00,0x74,0x00,0xC4,0x00,0x44,0x00,0x00,0x00,//严38
0x00,0x02,0x40,0x0C,0x67,0xF0,0x54,0x00,0x4C,0x00,0x44,0x00,0x7C,0x00,0x44,0x00,
0x44,0x00,0x7C,0x00,0x44,0x00,0x4C,0x00,0x74,0x00,0xC4,0x00,0x44,0x00,0x00,0x00,//严39
0x04,0x00,0x08,0x00,0x3F,0xFE,0xE0,0x00,0x4F,0xC0,0x04,0x2A,0x19,0x2A,0xF1,0x52,
0x2A,0xD4,0x25,0xA4,0x24,0xA8,0x2A,0x48,0x33,0x50,0x01,0x90,0x01,0x00,0x00,0x00,//修40
0x00,0x00,0x08,0x41,0x30,0x41,0x20,0x42,0x32,0x42,0x2D,0xC4,0x29,0x48,0xA0,0x50,
0x6F,0xE0,0x20,0x50,0x20,0x48,0x20,0x47,0x28,0x42,0x30,0x40,0x20,0x40,0x00,0x00,//实41
0x02,0x00,0x82,0x00,0x72,0x00,0x23,0xFE,0x00,0x04,0x00,0x09,0x00,0x06,0xFF,0xF8,
0x00,0x00,0x00,0x00,0x7F,0xFE,0x00,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00,0x00,//验42
0x00,0x02,0x08,0x02,0x34,0x12,0x24,0x92,0x25,0x92,0x26,0x92,0xA4,0x92,0x64,0xFE,
0x24,0x92,0x24,0x92,0x25,0x92,0x24,0xD2,0x2C,0x12,0x34,0x02,0x20,0x02,0x00,0x00,//室43
0x08,0x20,0x86,0x20,0x60,0xFF,0x07,0x00,0x18,0x00,0x04,0x00,0x55,0xFF,0x55,0x50,
0x55,0x50,0xFD,0x50,0x55,0x52,0x55,0x51,0x55,0xFE,0x54,0x00,0x00,0x00,0x00,0x00,//清44
0x7F,0xFF,0x40,0x40,0x4C,0x20,0x53,0xC2,0x62,0x04,0x04,0x88,0x0C,0xB2,0x34,0x81,
0xC7,0xFE,0x24,0x80,0x14,0xA0,0x08,0x90,0x04,0x88,0x04,0x0C,0x00,0x00,0x00,0x00,//除45
0x00,0x02,0x7F,0xFC,0x48,0x80,0x48,0x80,0x88,0x81,0x8F,0x82,0x80,0x0C,0x00,0x30,
0x7F,0xC0,0x44,0x00,0x44,0x00,0x84,0x00,0x87,0xFF,0x84,0x00,0x84,0x00,0x00,0x00,//所46
0x00,0x40,0x20,0x80,0x21,0x00,0x22,0x00,0x27,0xFF,0x2C,0x90,0x34,0x90,0xE4,0x90,
0x24,0x94,0x24,0x92,0x24,0x93,0x27,0xFE,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,//有47
0x08,0x42,0x49,0x42,0x2A,0x54,0x1C,0x74,0xFF,0xC8,0x1C,0x58,0x2A,0x64,0x4A,0x40,
0x01,0x02,0x0F,0x04,0xF8,0xC8,0x48,0x30,0x08,0xCC,0x0F,0x06,0x08,0x04,0x00,0x00,//数48
0x10,0x40,0x10,0x42,0x10,0x81,0xFF,0xFE,0x11,0x02,0x02,0x0C,0x7F,0xF0,0x49,0x3F,
0x49,0x22,0x49,0x22,0x4F,0xE2,0x49,0x22,0x49,0x22,0x79,0x3F,0x01,0x00,0x00,0x00,//据49
0x00,0x04,0x00,0x18,0x7F,0xE4,0x40,0x04,0x42,0x04,0x42,0x04,0x42,0x04,0x42,0x04,
0x5F,0xFC,0x42,0x04,0x42,0x84,0x42,0x74,0x46,0x24,0x42,0x04,0x40,0x04,0x00,0x00,//压50
0x04,0x44,0x0C,0xC4,0x35,0x4C,0xE6,0x48,0x44,0x48,0x08,0x80,0x31,0xFE,0x26,0x00,
0x20,0x00,0xA5,0xFE,0x65,0x24,0x27,0x24,0x25,0x24,0x35,0xFE,0x20,0x00,0x00,0x00,//缩51
0x10,0x40,0x11,0x80,0x16,0x00,0xFF,0xFF,0x12,0x00,0x15,0x80,0x08,0x80,0x30,0xFF,
0xE9,0x42,0x25,0x42,0x22,0x42,0x2D,0x42,0x31,0x7F,0x00,0x80,0x00,0x80,0x00,0x00,//格52
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, //'!'
0x00,0x00,0x00,0x00,0x38,0x00,0x7F,0xCC,
0x7F,0xCC,0x38,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
},
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, //显示空屏,如果只有一个字或将字全部移出必须设置一个空屏幕
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}
};
/************主函数***************/
void main()
{
uchar i,j,k; //i:每个字的显示循环;j每个字的显示码除以2;k每列刷新次数
unsigned int b=0; //显示偏移控制,char类型最多只能显示14个汉字+一个空白位字符
uchar a; //控制移动间隔时间
SCON = 0x00;
while(1)
{
j=0;
if(a>=0) //移动间隔时间;取值0--255
{
a=0;
b+=2;
if(b>=1760) //显示到最后一个字,回头显示,判断值=字数*32
{
b=0;
}
}
for(i=0;i<16;i++)
{
P1=i;
for(k=0;k<5;k++)
{
STTP = 0;
out_rxd(&hanzi[3][j+b+1]);
out_rxd(&hanzi[3][j+b]);
out_rxd(&hanzi[2][j+b+1]);
out_rxd(&hanzi[2][j+b]);
out_rxd(&hanzi[1][j+b+1]);
out_rxd(&hanzi[1][j+b]);
out_rxd(&hanzi[0][j+b+1]);
out_rxd(&hanzi[0][j+b]);
STTP = 1;
delay(1);
}
j=j+2;
}
a++;
}
}
/************子函数**************/
void delay(uint c)
{
int i,j;
for(i=0;i<c;i++)
for(j=0;j<10;j++)
;
}
void out_rxd(uchar *d)
{
SBUF = *d; //启动串行口传送
while(TI == 0); //等待串口传送结束
TI = 0; //将串口中断标志位置0
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -