文档详情

基于51单片机控制简易时钟(内部定时器).docx

发布:2018-06-30约2.63千字共10页下载文档
文本预览下载声明
若需要仿真图+程序(Q:409975690)附程序:#includereg52.h#define uint unsigned int#define uchar unsigned char uchar n,fen,miao,shi,ri ,yue;uint a;sbit lcden=P2^1;sbit lcdrs=P2^0;sbit k1=P1^0;sbit k2=P1^2;sbit k3=P1^5;sbit k4=P1^6;sbit k5=P1^7;void keyscan();void delay(uint z){ uint x,y; for(x=z;x0;x--) for(y=110;y0;y--);}void write_comd(uchar com){lcdrs=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;}void write_date (uchar date){lcdrs=1;P0=date;delay(5);lcden=1;delay(5);lcden=0;}void start(){write_comd(0x38);write_comd(0x0c);write_comd(0x06);write_comd(0x01);}void write_sfm(){write_comd(0x80+0x44);write_date(0x30+shi/10);write_comd(0x80+0x45);write_date(0x30+shi%10);write_comd(0x80+0x46);write_date(0x3A);write_comd(0x80+0x47);write_date(0x30+fen/10);write_comd(0x80+0x48);write_date(0x30+fen%10);write_comd(0x80+0x49);write_date(0x3A);write_comd(0x80+0x4a);write_date(0x30+miao/10);write_comd(0x80+0x4b);write_date(0x30+miao%10);}void write_nyr(){write_comd(0x80);write_date(M);write_comd(0x80+0x01);write_date(T);write_comd(0x80+0x02);write_date(Z);write_comd(0x80+0x03);write_date(X);write_comd(0x80+0x04);write_date(0x3A);write_comd(0x80+0x05);write_date(0x30+0x02);write_comd(0x80+0x06);write_date(0x30+0x00);write_comd(0x80+0x07);write_date(0x30+0x01);write_comd(0x80+0x08);write_date(0x30+0x08);write_comd(0x80+0x09);write_date(0X2d);write_comd(0x80+0x0a);write_date(0x30+yue/10);write_comd(0x80+0x0b);write_date(0x30+yue%10);write_comd(0x80+0x0c);write_date(0x2d);write_comd(0x80+0x0d);write_date(0x30+ri/10);write_comd(0x80+0x0e);write_date(0x30+ri%10);}void init_time0(){TMOD=0X01;TH0=(655356-50000)/256;TL0=(655356-50000)%256;EA=1;ET0=1;TR0=1;}void main(){yue=6; ri=29; shi=23; fen=59; start(); miao=0; init_time0(); while(1) { keyscan(); write_sfm(); write_nyr(); }}void t0() interrupt 1{TH0=(655356-50000)/256;TL0=(655356-50000)%256;a++;if(a==20){ a=0; miao++; if(miao==60) { miao=0; fen++; if(fen==60) { fen=0; shi++; if(shi==24) shi=0; ri++; if(ri==30) { ri=1; yue++; if(yue==12
显示全部
相似文档