您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 51单片机实现2,8,10,16进制转换
#includereg52.hsbitdula=P2^6;sbitwela=P2^7;sbitkey1=P3^4;sbitkey2=P3^5;sbitkey3=P3^6;sbitkey4=P3^7;#defineucharunsignedchar#defineuintunsignedintuinta,b,c,d,e,f,g,h,j,num,temp,num1,num2,num3,num4,num5,num6;ucharSHZ[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};voiddkeyscan();voidjia();voidjian();voidcheng();voidchu();voiddeng();voidqingchu();voiddelay(ucharz);voiddisplay1();voiddisplay2();voiddisplay3();voiddisplay4();voiddisplay5();voiddisplay6();voiddisplay7();voidjinzhi2();voidjinzhi8();voidjinzhi10();voidjinzhi16();voidjkeyscan();voidchushi();voidjiance();voidmain(){chushi();while(1){P3=0xff;dkeyscan();P3=0xff;delay(2);//P3=0xff;jkeyscan();//P3=0xff;if(num3==2)jinzhi2();if(num3==8)jinzhi8();if(num3==10)jinzhi10();if(num3==16)jinzhi16();jiance();display7();}}voiddelay(ucharz){ucharx,y;for(x=z;x0;x--)for(y=110;y0;y--);}voidchushi(){num3=10;num1=10;a=b=c=d=e=f=g=h=j=0;}voidjinzhi2()//二进制数{if(num1==16){num2=a+b*16+c*16*16+d*16*16*16+e*16*16*16*16+f*16*16*16*16*16;a=num2%2;b=num2/2%2;c=num2/2/2%2;d=num2/2/2/2%2;e=num2/2/2/2/2%2;f=num2/2/2/2/2/2%2;h=num2/2/2/2/2/2/2%2;j=num2/2/2/2/2/2/2/2%2;num1=2;}if(num1==8){num2=a+b*8+c*8*8+d*8*8*8+e*8*8*8*8+f*8*8*8*8*8;a=num2%2;b=num2/2%2;c=num2/2/2%2;d=num2/2/2/2%2;e=num2/2/2/2/2%2;f=num2/2/2/2/2/2%2;h=num2/2/2/2/2/2/2%2;j=num2/2/2/2/2/2/2/2%2;num1=2;}if(num1==10){a=num2%2;b=num2/2%2;c=num2/2/2%2;d=num2/2/2/2%2;e=num2/2/2/2/2%2;f=num2/2/2/2/2/2%2;h=num2/2/2/2/2/2/2%2;j=num2/2/2/2/2/2/2/2%2;num1=2;}}voidjinzhi8(){if(num1==2){num2=a+b*2+c*2*2+d*2*2*2+e*2*2*2*2+f*2*2*2*2*2;a=num2%8;b=num2/8%8;c=num2/8/8%8;d=num2/8/8/8%8;e=num2/8/8/8/8%8;f=num2/8/8/8/8/8%8;num1=8;}if(num1==10){a=num2%8;b=num2/8%8;c=num2/8/8%8;d=num2/8/8/8%8;e=num2/8/8/8/8%8;f=num2/8/8/8/8/8%8;num1=8;}if(num1==16){num2=a+b*16+c*16*16+d*16*16*16+e*16*16*16*16+f*16*16*16*16*16;a=num2%8;b=num2/8%8;c=num2/8/8%8;d=num2/8/8/8%8;e=num2/8/8/8/8%8;f=num2/8/8/8/8/8%8;num1=8;}}voidjinzhi10(){if(num1==16){num2=a+b*16+c*16*16+d*16*16*16+e*16*16*16*16+f*16*16*16*16*16;f=num2%1000000/100000;e=num2%100000/10000;d=num2%10000/1000;c=num2%1000/100;b=num2%100/10;a=num2%10;num1=10;}if(num1==8){num2=a+b*8+c*8*8+d*8*8*8+e*8*8*8*8+f*8*8*8*8*8;f=num2%1000000/100000;e=num2%100000/10000;d=num2%10000/1000;c=num2%1000/100;b=num2%100/10;a=num2%10;num1=10;}if(num1==2){num2=a+b*2+c*2*2+d*2*2*2+e*2*2*2*2+f*2*2*2*2*2;f=num2%1000000/100000;e=num2%100000/10000;d=num2%10000/1000;c=num2%1000/100;b=num2%100/10;a=num2%10;num1=10;}}voidjinzhi16(){if(num1==2){num2=a+b*2+c*2*2+d*2*2*2+e*2*2*2*2+f*2*2*2*2*2;a=num2%16;b=num2/16%16;c=num2/16/16%16;d=num2/16/16/16%16;e=num2/16/16/16/16%16;f=num2/16/16/16/16/16%16;num1=16;}if(num1==8){num2=a+b*8+c*8*8+d*8*8*8+e*8*8*8*8+f*8*8*8*8*8;a=num2%16;b=num2/16%16;c=num2/16/16%16;d=num2/16/16/16%16;e=num2/16/16/16/16%16;f=num2/16/16/16/16/16%16;num1=16;}if(num1==10){num2=a+b*10+c*10*10+d*10*10*10+e*10*10*10*10+f*10*10*10*10*10;a=num2%16;b=num2/16%16;c=num2/16/16%16;d=num2/16/16/16%16;e=num2/16/16/16/16%16;f=num2/16/16/16/16/16%16;num1=16;}}voidjiance(){if(j==0){if(h==0){if(f==0){if(e==0){if(d==0){if(c==0){if(b==0){if(a==0){num=0;}elsenum=1;}elsenum=2;}elsenum=3;}elsenum=4;}elsenum=5;}elsenum=6;}elsenum=6;}elsenum=6;}voiddkeyscan(){P3=0xff;if(key1==0){delay(10);if(key1==0){num3=2;while(!key1);delay(10);while(!key1);P3=0xff;}}if(key2==0){delay(10);if(key2==0){num3=8;while(!key2);delay(10);while(!key2);P3=0xff;}}if(key3==0){delay(10);if(key3==0){num3=10;while(!key3);delay(10);while(!key3);P3=0xff;}}if(key4==0){delay(10);if(key4==0){num3=16;while(!key4);delay(10);while(!key4);P3=0xff;}}}voidjia(){//if(num1==16)//num2=a+b*16+c*16*16+d*16*16*16+e*16*16*16*16+f*16*16*16*16*16;if(num1==10)num2=a+b*10+c*10*10+d*10*10*10+e*10*10*10*10+f*10*10*10*10*10;if(num1==8)num2=a+b*8+c*8*8+d*8*8*8+e*8*8*8*8+f*8*8*8*8*8;if(num1==2)num2=a+b*2+c*2*2+d*2*2*2+e*2*2*2*2+f*2*2*2*2*2+h*2*2*2*2*2*2+j*2*2*2*2*2*2*2;a=b=c=d=e=f=g=h=j=0;num=0;num4=1;}voidjian(){//if(num1==16)//num2=a+b*16+c*16*16+d*16*16*16+e*16*16*16*16+f*16*16*16*16*16;if(num1==10)num2=a+b*10+c*10*10+d*10*10*10+e*10*10*10*10+f*10*10*10*10*10;if(num1==8)num2=a+b*8+c*8*8+d*8*8*8+e*8*8*8*8+f*8*8*8*8*8;if(num1==2)num2=a+b*2+c*2*2+d*2*2*2+e*2*2*2*2+f*2*2*2*2*2+h*2*2*2*2*2*2+j*2*2*2*2*2*2*2;a=b=c=d=e=f=g=h=j=0;num=0;num4=2;}voidcheng(){//if(num1==16)//num2=a+b*16+c*16*16+d*16*16*16+e*16*16*16*16+f*16*16*16*16*16;if(num1==10)num2=a+b*10+c*10*10+d*10*10*10+e*10*10*10*10+f*10*10*10*10*10;if(num1==8)num2=a+b*8+c*8*8+d*8*8*8+e*8*8*8*8+f*8*8*8*8*8;if(num1==2)num2=a+b*2+c*2*2+d*2*2*2+e*2*2*2*2+f*2*2*2*2*2+h*2*2*2*2*2*2+j*2*2*2*2*2*2*2;a=b=c=d=e=f=g=h=j=0;num=0;num4=3;}voidchu(){//if(num1==16)//num2=a+b*16+c*16*16+d*16*16*16+e*16*16*16*16+f*16*16*16*16*16;if(num1==10)num2=a+b*10+c*10*10+d*10*10*10+e*10*10*10*10+f*10*10*10*10*10;if(num1==8)num2=a+b*8+c*8*8+d*8*8*8+e*8*8*8*8+f*8*8*8*8*8;if(num1==2)num2=a+b*2+c*2*2+d*2*2*2+e*2*2*2*2+f*2*2*2*2*2+h*2*2*2*2*2*2+j*2*2*2*2*2*2*2;a=b=c=d=e=f=g=h=j=0;num=0;num4=4;}voidyunsuan(){if(num4==1)num6=num5+num2;if(num4==
本文标题:51单片机实现2,8,10,16进制转换
链接地址:https://www.777doc.com/doc-4990984 .html