ZKX's LAB

c 数字时钟设计 AT89C51数字时钟设计如何编程实现进位?

2020-07-20知识19

四位数字时钟设计 C语言程序 #includeincludesbit p20=P2^0;sbit p21=P2^1;sbit led=P2^7;main(){unsigned int dis_1[4]={0x01,0x02,0x04,0x08};unsigned int dis_2[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};unsigned int s,m,m1,m2,h,h1,h2,i,j,k;for(h=0;h;h+){for(m=0;m;m+){for(s=0;s;s+){if(p20=0)h+;if(h=24)h=0;if(p21=0)m+;if(m=60)m=0;h1=h/10;h2=h%10;m1=m/10;m2=m%10;for(i=0;i;i+){for(j=0;j;j+){for(k=0;k;k+){P1=dis_1[0];P0=dis_2[h1];}}for(j=0;j;j+){for(k=0;k;k+){P1=dis_1[1];P0=dis_2[h2];}}for(j=0;j;j+){for(k=0;k;k+){P1=dis_1[2];P0=dis_2[m1];}}for(j=0;j;j+){for(k=0;k;k+){P1=dis_1[3];P0=dis_2[m2];}}if(i)led=0;else led=1;}}}}}急求:毕业设计,用C语言编个简单的数字时钟程序 不想学C就用汇编啊,气死老师~单片机的程序跟硬件关系太密切,帮不了你。用C语言编写AT89C51单片机程序,设计一个智能数字钟。 #includedefine uint unsigned intdefine uchar unsigned charsbit QB1=P1^0;sbit QB2=P1^1;数码管段选sbit QB3=P1^2;sbit QB4=P1^3;sbit QB5=P1^4;sbit QB6=P1^5;sbit fm=P1^6;蜂鸣器sbit s1=P2^4;s5按键,切换显示sbit s2=P2^3;s2按键,设置调时sbit s3=P2^2;s3按键,加1sbit s4=P2^1;s4按键,减1sbit led1=P0^0;sbit led2=P0^1;sbit led3=P0^2;uchar count;uchar sec,minu,hour,day,week,mon;uchar n_sec,n_minu,n_hour;uint year;uchar set_2=1,set_1=1;uchar hs,hg,mis,mig,ss,sg;uchar nhs,nhg,nms,nmg,nss=0,nsg=0;uchar ms,mg,ds,dg,w;uchar code table[]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90,0X88,0X83,0XC6,0XA1,0X8E,0X86,0xbf};0~F,-,共阳uchar code tableyi[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x40};0-F,-,共阴uchar code table_d[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};0~9数组,带小数点uchar table1[]={31,31,29,31,30,31,30,31,31,30,31,30,31};闰年uchar table2[]={31,31,28,31,30,31,30,31,31,30,31,30,31};非闰年void delay(uint);延时函数。用c语言设计数字时钟 c语言设计数字时钟比较多AT89C51数字时钟设计如何编程实现进位? 实际上单片机处理时钟进位问题很简单,秒记到60,你立刻清零重新记数,在此同时将分加一就好了,当然记时时也是同样的道理,只要多用几个条件语句(if)就可以了数字时钟C语言设计.用的是51单片机。 00 秒 00 分 00 小时 还有小数点。 麻烦把程序代码告诉我把 includeincludeunsigned char data dis_digit;unsigned char key_s,key_v;unsigned char code dis_code[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};共阳0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00 共阴unsigned char data dis_buf[6];unsigned char data dis_index;unsigned char hour,min,sec;unsigned char sec100;sbit K1=P3^0;sbit K2=P3^1;bit scan_key();void proc_key();void inc_sec();void inc_min();void inc_hour();void display();void delayms(unsigned char ms);void main(void){P1=0x00;P2=0x00;TMOD=0x11;定时器0,1工作模式1,16位定时方式TH1=0xdc;11.0592MHZTH0=0xFC;TL0=0x17;hour=12;min=00;sec=00;sec100=0;dis_buf[0]=dis_code[hour/10];时十位dis_buf[1]=dis_code[hour%10];时个位dis_buf[2]=dis_code[min/10];分十位dis_buf[3]=dis_code[min%10];分个位dis_buf[4]=dis_code[sec/10];秒十位dis_buf[5]=dis_code[sec%10];秒个位dis_digit=0xfe;dis_index=0;TCON=0x01;IE=0x8a;使能timer0,1 中断TR0=1;TR1=1;key_v=0x03;while(1){if(scan_key()){delayms(10);if(scan_key()){key_v=key_s;proc_。

#c语言#at89c51#unsigned#单片机

随机阅读

qrcode
访问手机版