#include
/*********外猘部?接?口ò定¨义?**********/ #define uchar unsigned char
#define uint unsigned int //宏ê定¨义? #define out P1
//数簓据Y输?出?端?口ò
ED ED ED ED
sbit led1=P3^0; //第台?sbit led2=P3^1; //第台?sbit led3=P3^3; //第台?sbit led4=P3^4; //第台?sbit p3_2=P3^2;
uchar KY,num; //KY作痢 用?在ò后?面?说μ明e uchar BUFF;
//缓o存?
/*********全?局?变?量?定¨义?**********/ unsigned long int TimeCount=0; unsigned int DelayN=80,
unsigned char key,keyy;
//延?时骸 临ⅷ 时骸 计?数簓
DelayTime=80; //每?次?延?时骸 的?周ó期ò个?数簓
sbit key1=P3^5; //按恪 键ó输?入?
/**********************************************/ void delay(unsigned char n); void DelayMs(void);
/*******************************************/
unsigned char code text0[]={
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*\\
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x07,0x00,0xB7,0xBB,0xB7,0xBB,0xB3,0xBB,0xB4,0xBB,0xB5,0xBB,0xB7,0xBB,0xB7,0xBB,0xB7,0xBB,0x07,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*\自?\
0xBF,0xBF,0xBE,0xDF,0x39,0xE0,0xFF,0xDF,0xEF,0xBF,0xEF,0xBF,0x6D,0xB0,0x6D,0xB7,0x6D,0xB7,0x01,0xB7,0x6E,0xB7,0x6E,0xB7,0x6E,0xB0,0xEF,0xBF,0xEF,0xBF,0xFF,0xFF,/*\适酣?,2*/
0xFF,0xBF,0xFF,0xC7,0x03,0xF8,0xBB,0xDF,0x7B,0xDF,0xFB,0xD0,0xEB,0xDB,0xDA,0xDF,0x39,0xDC,0x7B,0xCF,0xFB,0xD3,0xFB,0xDC,0x1B,0xDF,0xBB,0xDF,0xFF,0xDF,0xFF,0xFF,/*\应畖\
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*\\
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*\\
0xEF,0xFB,0xEF,0xBB,0xEF,0x7D,0x00,0x80,0x6F,0xFF,0xAF,0xFD,0x75,0x05,0x8D,0xBD,0xB9,0xBD,0xA5,0xBD,0x3D,0x80,0x9E,0xBD,0xAE,0xBD,0xB6,0xBD,0xFF,0x05,0xFF,0xFF,/*\摇?\
0xEF,0xFB,0xEF,0xBB,0xEF,0x7D,0x00,0x80,0x6F,0xFF,0xAF,0xFD,0x75,0x05,0x8D,0xBD,0xB9,0xBD,0xA5,0xBD,0x3D,0x80,0x9E,0xBD,0xAE,0xBD,0xB6,0xBD,0xFF,0x05,0xFF,0xFF,/*\摇?\
0xEF,0xFC,0x2F,0xFF,0x00,0x00,0xAF,0xFF,0x6F,0xFD,0xBB,0xF5,0xAB,0xF6,0x2B,0xF5,0x8B,0xF5,0xA0,0x00,0x2B,0xF5,0xAB,0xF4,0xAB,0xF6,0xBB,0xF5,0xBF,0xFD,0xFF,0xFF,/*\棒?\
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*\\ };
unsigned char code text1[]={
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*\\
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*\\
0xF7,0xFD,0xF7,0xFE,0x76,0xFF,0x31,0x00,0x57,0xFF,0xE7,0x7C,0xFF,0xBF,0x01,0xCF,0x7D,0xF0,0x7D,0xFF,0x7D,0xFF,0x7D,0x80,0x01,0x7F,0xFF,0x7F,0xFF,0x0F,0xFF,0xFF,/*\祝痢?,2*/
0x7F,0xFF,0xBF,0xFF,0x0F,0x80,0xD3,0xFF,0xBC,0xEF,0xDF,0xF3,0x67,0xFC,0xF0,0xDE,0xF5,0xBF,0x17,0xC0,0xF7,0xFF,0x77,0xFF,0xD7,0xFC,0xE3,0xE3,0xF7,0xF7,0xFF,0xFF,/*\你?\
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*\\
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,/*\\
0xFF,0xFF,0xBF,0x7F,0xBD,0xBF,0xBD,0xDF,0xBD,0xEF,0xBD,0xF7,0xBD,0xF9,0x01,0xFE,0xBD,0xFD,0xBD,0xFB,0xBD,0xF7,0xBD,0xEF,0xBD,0xCF,0xBD,0x9F,0xBF,0xDF,0xFF,0xFF,/*\
0xFF,0xFF,0xBF,0x7F,0xBD,0xBF,0xBD,0xDF,0xBD,0xEF,0xBD,0xF7,0xBD,0xF9,0x01,0xFE,0xBD,0xFD,0xBD,0xFB,0xBD,0xF7,0xBD,0xEF,0xBD,0xCF,0xBD,0x9F,0xBF,0xDF,0xFF,0xFF,/*\
0xBF,0xFF,0xBD,0xBF,0xBD,0xDF,0xBD,0xEF,0xBD,0xF3,0x01,0xFC,0xBD,0xFF,0xBD,0xFF,0xBD,0xFF,0xBD,0xFF,0x01,0x80,0xBD,0xFF,0xBD,0xFF,0xBD,0xFF,0xBD,0xFF,0xFF,0xFF,/*\开a\
0xFF,0xFB,0x7F,0xFC,0xFF,0xFF,0xFF,0xFF,0x0F,0xC0,0xFF,0xBF,0xFE,0xBF,0xFD,0xBF,0xE3,0xBF,0xF7,0xBF,0xFF,0xBF,0xBF,0x87,0x7F,0xFF,0xFF,0xF8,0xFF,0xFD,0xFF,0xFF,/*\心?\ };
unsigned char code text2[]={
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF9,0xFF,0xFF,0x9F,0xF9,0xFF,0xFF,0x9F,0xF9,0xFF,0xFF,0x9F,0x01,0x00,0x00,0x80,0x01,0x00,0x00,0x80,0xF9,0xFF,0xFF,0x9F,
0xF9,0xFF,0xFF,0x9F,0xF9,0xFF,0xFF,0x9F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x87,0xFF,0xFF,0xFF,0x01,0xFE,0xFF,
0x7F,0x00,0xF8,0xFF,0x3F,0x00,0xF0,0xFF,0x1F,0x00,0xE0,0xFF,0x0F,0x00,0xC0,0xFF,0x07,0x00,0x80,0xFF,0x03,0x00,0x00,0xFF,0x03,0x00,0x00,0xFF,0x03,0x00,0x00,0xFE,
0x03,0x00,0x00,0xFC,0x03,0x00,0x00,0xF8,0x07,0x00,0x00,0xF0,0x0F,0x00,0x00,0xE0,0x1F,0x00,0x00,0xE0,0x3F,0x00,0x00,0xC0,0x3F,0x00,0x00,0x80,0x1F,0x00,0x00,0xC0,
0x0F,0x00,0x00,0xE0,0x07,0x00,0x00,0xF0,0x03,0x00,0x00,0xF8,0x03,0x00,0x00,0xFC,0x03,0x00,0x00,0xFE,0x03,0x00,0x00,0xFF,0x07,0x00,0x80,0xFF,0x0F,0x00,0xC0,0xFF,
0x1F,0x00,0xE0,0xFF,0x3F,0x00,0xE0,0xFF,0xFF,0x00,0xF8,0xFF,0xFF,0x01,0xFC,0xFF,0xFF,0x07,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0x07,0x00,0x00,0xE0,0x07,0x00,0x00,0xC0,0x07,0x00,0x00,0xC0,0xFF,0xFF,0xFF,0xC7,0xFF,0xFF,0xFF,0xCF,0xFF,0xFF,0xFF,0xCF,0xFF,0xFF,0xFF,0xCF,0xFF,0xFF,0xFF,0xCF,
0xFF,0xFF,0xFF,0xCF,0xFF,0xFF,0xFF,0xCF,0xFF,0xFF,0xFF,0xCF,0xFF,0xFF,0xFF,0xC7,0x07,0x00,0x00,0xC0,0x07,0x00,0x00,0xC0,0x07,0x00,0x00,0xE0,0xFF,0xFF,0xFF,0xFF,/*\未′命ó名?文?件t\ };
/***********n{
s)?延?时骸 子哩 程ì序?***************/
void DelayUs(uint N)
?,7*/ ?,6*/
uint x;
for(x=0; x<=N;x++); }
/******************************************/ void main() {
AUXR=0x80; CLK_DIV=1;
EX0=1; //开a放?外猘部?中D断?0
IT0=1; //中D断?0为a边?沿?触洌 发ぁ 方?式? IP=0x02; //设Θ 置?中D断?优?先è级? TMOD=0x02; //定¨时骸 器e0方?式?2,?8位?重?装痢 载? TH0=0x80; //设Θ 定¨定¨时骸 器e初?值μ TL0=0x80;
KY=0; EA=1;
//开a放?中D断?
ET0=1; //开a放?定¨时骸 器e0中D断?
TR0=1; //启?动ˉ定¨时骸 器e0,?开a始?计?时骸?/ key=0; //初?始?化ˉ显?示?第台 一?组哩 文?字? keyy=0; P1M0=0x55;
//0101 0101 /P1.0 P1 .2 P1.4 P1.6推?
输?出?
P1M1=0xAA;
while(1){//等台 待鋣中D断?
if(key1==0){ //有瓺键ó按恪 下? DelayUs(50); if(key1==0){ key++;
//更ó换?下?一?幅え 图?片?
if(key>2) key=0; //图?片?循-环·显?示? 根?据Y显?示?的?组哩 数簓来ぁ这a里?有瓺9组哩?所?以?就í要癮keyy>9
while(key1==0); //等台 待鋣按恪 键ó释酣 放?
} } if(num>10) //每?中D断?10次?切D换?
{ keyy++; num=0;
}
if(keyy>2)keyy=0; //图?片?循-环·显?示? 根?据Y显?示?的?组哩 数簓来ぁ这a里?有瓺9组哩?所?以?就í要癮keyy>9 }
}
定¨义? 定¨义? /*********文?字?显?示?子哩 程ì序?**********/
void display_word(unsigned char code *text) {
unsigned char i,j=2; //j为a图?片?起e始?位?置? 3 为a第台?个?开a始?
是?图?片? 如?果?要癮显?示?高?时骸?2的?大洙 字? 也?属?
DelayUs(6400);
for(i=0;i<64;i++) {
P3M0=0x00;
//0000 0000 //P3.0推?
高?阻哩 P3M1=0x1B; if((key>=j)||(keyy>=j)) BUFF=(*(text+i*4+3)); else
BUFF=(*(text+128+i*2+1));
led4=0; P1=~BUFF>>1;
P3M0=0x10;
//0001 0000 //P3.4推?
高?阻哩
P3M1=0x0B; //0000 1011 delay(1);
P3M0=0x00;
//0000 0000 //P3.0推?高?阻哩
P3M1=0x1B;
//0001 1011
led4=1;
P1=BUFF; //01010101 1357
P3M0=0x10;
//0001 0000 //P3.4推?
高?阻哩
P3M1=0x0B; //0000 1011 delay(1);
P3M0=0x00;
//0000 0000 //P3.0推?高?阻哩
P3M1=0x1B;
//0001 1011
if((key>=j)||(keyy>=j)) BUFF=(*(text+i*4+2)); else
BUFF=(*(text+128+i*2)); led3=0; P1=~BUFF>>1;
P3M0=0x08;
//0000 1000 //P3.3推?
高?阻哩
图?片?格?式?
输?出? P3 .1 P3.3 P3.4输?入?
输?出? P3 .0 P3.3 P3.1输?入?
输?出? P3 .1 P3.3 P3.4输?入?
输?出? P3 .0 P3.3 P3.1输?入?
输?出? P3 .1 P3.3 P3.4输?入?
输?出? P3 .0 P3.1 P3.4输?入?
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新高中教育32位摇摇棒图纸和程序 全文阅读和word下载服务。
相关推荐: