游客
主题
回帖0
积分40
阅读权限1
注册时间2012-8-5
最后登录1970-1-1
在线时间 小时
|
程序如下:
//#include <STC12C2052AD.h>
#include <reg51.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define _Nop() _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_()
/*
sbit HC138_A=P1^0;
sbit HC138_B=P1^1;
sbit HC138_C=P1^2;
sbit HC138_D=P1^3; //138, 4, 5
sbit HC138_OE=P1^4; //138 6
sbit HC595_LAT=P1^7; //595 12
sbit HC595_CLK=P3^1; //595 11
sbit HC595_GD=P3^0; //595 14
sbit HC595_RD=P3^0; //595 14 */
sbit HC138_A=P1^0;
sbit HC138_B=P1^1;
sbit HC138_C=P1^2;
sbit HC138_D=P1^3; //138, 4, 5
//138 6
sbit HC595_LAT=P2^0; //595 12
sbit HC595_CLK=P2^1; //595 11
sbit HC595_R1=P2^3; //595 14
sbit HC595_RD=P2^2; //595 14
/*
sbit HC138_A=P3^7;
sbit HC138_B=P3^2;
sbit HC138_C=P1^0;
sbit HC138_D=P3^3; //138, 4, 5
sbit HC138_OE=P1^5; //138 6
sbit HC595_LAT=P1^1; //595 12
sbit HC595_CLK=P3^4; //595 11
sbit HC595_GD=P1^2; //595 14
sbit HC595_RD=P3^5; //595 14 */
unsigned char r_data[8], r_data1[8];
unsigned char k, t, m, n, p;
unsigned char code hanzi[4][32]={ };
//delay us
void Delay(uchar us) //5,7,9
{
while(--us);
}
void write595(unsigned char rdd,rdd1)
{
unsigned char i;
for (i=0;i<8;i++)
{
HC595_RD=rdd&0x80;
HC595_R1=rdd1&0x80;
rdd=rdd<<1;
rdd1=rdd1<<1;
HC595_CLK=1;
HC595_CLK=0;
}
}
void main (void)
{
while(1)
{
for (p=0;p<64;p++)
{
for (t=0;t<16;t++)
{
HC595_LAT=0;
HC595_CLK=0;
for (k=0;k<4;k++)
{
r_data[2*k]=0xff-hanzi[0+k][t*2+1];
r_data[2*k+1]=0xff-hanzi[0+k][t*2];
r_data1[2*k]=0xff-hanzi[0+k][t*2+1];
r_data1[2*k+1]=0xff-hanzi[0+k][t*2];
}
for (k=0;k<8;k++)
{
write595(r_data[k],r_data1[k]);
}
HC595_LAT=1;
HC595_LAT=0;
HC595_CLK=0;
HC138_A=t&0x01;
HC138_B=t&0x02;
HC138_C=t&0x04;
HC138_D=t&0x08;
Delay(100);
} //end for t
} //end for p
} //end while
}
字模代码去掉了,用的STC90C516RD+,12M晶振 |
|