·上一文章:按键扫描程序
					·下一文章:直流电机调速C51程序
				
		       //16进制<->10进制互换程序
unsigned char d[10]; //用于显示的10位显示缓存
//========================================================
 //16进制to10进制输出子程序:显示数据,起始位,结束位,有无小数点
//========================================================
void output(unsigned long dd,unsigned char s,unsigned char e,unsigned char DIP) {
 unsigned long div;
 unsigned char tm[8],i,j;
 div=10000000;
 for (i=0;i<8;i++) {
  tm[i]=dd/div;
  dd%=div;
  div/=10;
 }
 for (i=0;i<6;i++) {
  if (tm[i]!=0) break;
  tm[i]=nul;
 }
 tm[5]|=dip;   //小数点控制,请看“串行LED数码管显示驱动程序”
 j=7;
 for (i=s;i<e;i++) {
  d[i]=tm[j];
  j--;
 }
}
//把显示位5-9位的10进制数转换成为16进制数
unsigned int input(void) {
 unsigned int dd,dat;
 dd=10000;dat=0;
 for (i=5;i<10;i++) {
  dat+=dd*temp;
  dd/=10;
 }
 return(dat);
}