📄 2051.c.bak
字号:
//http://www.cdle.net/bbs/dispbbs.asp?boardID=2&ID=10011&page=1
#include <AT89x51.H>
#define uchar unsigned char
#define uint unsigned int
#define SPEED 1 //定义速度
#define light 3 //定义亮度
sbit OE=P1^6; //138使能端
sbit CLK=P1^7; //锁存器脉冲
//使用串口,行选用P2口.原参考程序用P1口,且OE,CLK也是用P1口,更简洁
uchar col,disrow; //col为位移变量,disrow为行变量
uint word;
uchar code HZ[];
uchar BUFF[18];
void loadoneline(void);
void delay(uchar t);
void sendoneline(void);
/********************************************/
uchar two_onebyte(uchar h1,uchar h2)
{uchar temp,tempcol;
if(col<8) tempcol=col;
else tempcol=col-8;
temp=(h1>>tempcol)|(h2<<(8-tempcol));
temp=255-temp;
return temp;
}
/*******************************************************/
void main(void)
{uchar i;col=0;word=0;
while(1)
{while(col<16)
{for(i=0;i<SPEED;i++)
{for(disrow=0;disrow<16;disrow++)
{OE=1;
CLK=0;
loadoneline();
sendoneline();
P2=disrow; //P2为行选
//P1=0x10+disrow;
//P1=0x20+disrow;
CLK=1;
OE=0;
delay(light);
}
}
col++;
}
col=0;word=word+32;
if(word>=2184)word=0;
}
}
/****************把字模移入数组的子函数********************/
void loadoneline(void)
{uchar s;
for(s=0;s<9;s++) //s为要显示的数字+1
{BUFF[2*s]=HZ[word+32*s+2*disrow];
BUFF[2*s+1]=HZ[word+1+32*s+2*disrow];
}
}
/*******************发送一行的子函数************************/
void sendoneline(void)
{char s;uchar inc;
if(col<8)inc=0;else inc=1;
for(s=0+inc;s<=15+inc;s++) //s=2*要显示的数字-1
{SBUF=two_onebyte(BUFF[s],BUFF[s+1]);
while(!TI);TI=0;
}
}
/*******************************************************/
void delay(uchar t)
{ uchar i,j;
for(j=0;j<t;j++)
{for(i=0;i<20;i++);}
}
/*****************************************************
输出字模数据子函数
函数入口:*zm:本次发送的数据在字模数组中起始位置
bit_num:发送不是完整的字模部分的位数
用法示例:send_line(&zimo[i],j);
zimo[]为字模数组
/*****************************************************
void send_line(uchar *zm,uchar bit_num)
{uint byte_num;
uchar temp;
uint m=0;
for(byte_num=SCREEN_WIDTH;byte_num>0;byte_num--)
{SBUF=zm[m++];
while(TI==0);
TI=0;
}
V_CLK=0;
temp=zm[m];
for(;bit_num>0;bit_num--)
{V_SDA=temp&0x80;
V_CLK=1;
V_CLK=0;
temp=temp<<1;
}
}
*******************************************************/
uchar code HZ[]=
{
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,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,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,
//*******************************以上字码用作黑屏**********************************
//*********************************************************************************
//***********以横向8个连续点构成一个字节,最左边的点为字节的最低位,即BIT0,**********
//***********最右边的点为BIT7.16×16汉字按每行2字节,共16行取字模,每个汉字*********
//***********共32字节.点阵四个角取字顺序为左上角→右上角→左下角→右下角。*****
//*********************************************************************************
/*真 CD5E6 */
0x80,0x00,0x80,0x20,0xFE,0x7F,0x40,0x00,0xF0,0x0F,0x10,0x08,0xF0,0x0F,0x10,0x08,
0xF0,0x0F,0x10,0x08,0xF0,0x0F,0x10,0x08,0xFF,0x7F,0x20,0x02,0x18,0x0C,0x06,0x30,
/*诚 CB3CF */
0x02,0x04,0x0C,0x14,0x04,0x24,0xF0,0x7F,0x20,0x04,0x27,0x04,0x24,0x24,0xE4,0x65,
0x24,0x29,0x24,0x29,0x24,0x19,0x34,0x49,0x2C,0x55,0x54,0x63,0x90,0x40,0x08,0x00,
/*服 CB7FE */
0x3C,0x3F,0x24,0x21,0x24,0x21,0x24,0x29,0x3C,0x11,0x24,0x01,0x24,0x3F,0x3C,0x23,
0x24,0x23,0x24,0x15,0x24,0x15,0x24,0x09,0x22,0x15,0x2A,0x73,0x11,0x21,0x00,0x00,
/*务 CCEF1 */
0x20,0x00,0xE0,0x0F,0x30,0x08,0x28,0x04,0x46,0x02,0x81,0x01,0x60,0x06,0x98,0x78,
0x86,0x20,0xF8,0x0F,0x40,0x08,0x40,0x08,0x20,0x08,0x10,0x08,0x0C,0x0A,0x03,0x04,
/*、 CA1A2 */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x0C,0x00,0x08,0x00,0x00,0x00,0x00,0x00,
/*精 CBEAB */
0x08,0x04,0x88,0x7F,0x29,0x04,0x2A,0x3F,0x1A,0x04,0xBF,0x7F,0x0C,0x00,0x1C,0x3F,
0x2A,0x21,0x4A,0x3F,0x0A,0x21,0x09,0x3F,0x08,0x21,0x08,0x21,0x08,0x29,0x08,0x11,
/*心 CD0C4 */
0x40,0x00,0x80,0x00,0x00,0x01,0x00,0x03,0x10,0x01,0x10,0x00,0x10,0x08,0x12,0x10,
0x12,0x20,0x12,0x60,0x11,0x20,0x10,0x08,0x10,0x08,0x10,0x08,0xE0,0x0F,0x00,0x00,
/*打 CB4F2 */
0x08,0x00,0x08,0x00,0xC8,0x7F,0x08,0x04,0x7F,0x04,0x08,0x04,0x28,0x04,0x18,0x04,
0x0C,0x04,0x0B,0x04,0x08,0x04,0x08,0x04,0x08,0x04,0x08,0x04,0x0A,0x05,0x04,0x02,
/*造 CD4EC */
0x02,0x02,0x44,0x02,0x44,0x02,0xC0,0x3F,0x20,0x02,0x00,0x02,0xF7,0x7F,0x04,0x00,
0xC4,0x1F,0x44,0x10,0x44,0x10,0xC4,0x1F,0x44,0x10,0x0A,0x00,0xF1,0x7F,0x00,0x00,
/*。 CA1A3 */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x0C,0x00,0x12,0x00,0x12,0x00,0x0C,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,
//*****************************************************************************
/*单 CB5A5 */
0x10,0x04,0x60,0x0C,0x20,0x02,0xFC,0x1F,0x84,0x10,0xFC,0x1F,0x84,0x10,0x84,0x10,
0xFC,0x1F,0x84,0x10,0x80,0x00,0xFF,0x7F,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,
/*片 CC6AC */
0x00,0x02,0x08,0x02,0x08,0x02,0x08,0x22,0xF8,0x7F,0x08,0x00,0x08,0x00,0x08,0x00,
0xF8,0x0F,0x08,0x08,0x08,0x08,0x08,0x08,0x04,0x08,0x04,0x08,0x02,0x08,0x01,0x08,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -