当前位置:首页 > 电子系统设计完整版
data_count[2]=cut/100; data_count[3]=cut0/10; data_count[4]=cut; fuzhi(); }
/*************************************************************************/ /***********************************函数功能:乘法运算********************/ /**********************************************************************/ void cheng() {
count1 =data_qian[4]*10000 + data_qian[3]*1000 + data_qian[2]*100 + data_qian[1]*10 + data_qian[0]*1;
count2 =data_hou[4]*10000 + data_hou[3]*1000 + data_hou[2]*100 + data_hou[1]*10 + data_hou[0]*1; multiply = count1 * count2; data_count[0]=multiply/10000; data_count[1]=multiply/1000; data_count[2]=multiply/100; data_count[3]=multiply0/10; data_count[4]=multiply; fuzhi(); }
/***************************************************************************/ /***********************************函数功能:除法运算*************************/ /*****************************************************************************/ void chu() {
count1 =data_qian[4]*10000 + data_qian[3]*1000 + data_qian[2]*100 + data_qian[1]*10 + data_qian[0]*1;
count2 =data_hou[4]*10000 + data_hou[3]*1000 + data_hou[2]*100 + data_hou[1]*10 + data_hou[0]*1; divide = count1 / count2;
divide_1=count1%count2; //最多有四位余数 if(divide_1==0 && mn==0) {
data_count[0]=divide/10000; data_count[1]=divide/1000; data_count[2]=divide/100; data_count[3]=divide0/10; data_count[4]=divide; } else
- 24 -
{
mn=0; if( (((count1*10)/count2)!=0) && (((count1*100)/count2)==0) ) {
data_count[0]=divide/1000; data_count[1]=divide/100; data_count[2]=divide0/10; data_count[3]=divide; x=2;
data_count[4]=((count1*10)/count2); } else if( (((count1*10)/count2)!=0) || (((count1*100)/count2)!=0) ) {
data_count[0]=divide/100; data_count[1]=divide0/10; data_count[2]=divide; x=3;
data_count[3]=((count1*10)/count2); data_count[4]=((count1*100)/count2); } else {
data_count[0]=divide/10000; data_count[1]=divide/1000; data_count[2]=divide/100; data_count[3]=divide0/10; data_count[4]=divide; } } fuzhi(); }
/************************************************************************/ /***********************************函数功能:延时程序1**********************/ /**************************************************************************/ void Delay(uint masd) {
uchar j;
while(masd--) {
for(j=0;j<30;j++); }
- 25 -
}
/***********************************函数功能:延时程序2**************/ void DelayMS(uint ms) {
uchar t; while(ms--) {
for(t=0;t<120;t++); } }
/***************************************************************************/ /**************************************************************************/ /***********************************************************************/ /******************函数功能:键盘扫描**************************/
/****************************************************************************/ void Keys_Scan() {
uchar Tmp; P1 = 0x0f; DelayMS(1);
Tmp = P1 ^ 0x0f; switch(Tmp) {
case 1: KeyNO = 0; break; case 2: KeyNO = 1; break; case 4: KeyNO = 2; break; case 8: KeyNO = 3; break; default: KeyNO = 16; }
P1 = 0xf0; DelayMS(1);
Tmp = P1 >> 4 ^ 0x0f; switch(Tmp) {
case 1: KeyNO += 0; break; case 2: KeyNO += 4; break; case 4: KeyNO += 8; break; case 8: KeyNO += 12; } }
/*************************************************************************/ /***********函数功能:控制输入数据的显示(先按下的是最高位,以此类推)*********/
- 26 -
/******************************************************************/ void keybord(uchar a) {
if(asd==0) {
data_use[4]=0; data_use[3]=0; data_use[2]=0; data_use[1]=0; data_use[0]=a; asd=1; } else if(asd==1) {
data_use[1]=data_use[0]; data_use[0]=a; asd=2; } else if(asd==2) {
data_use[2]=data_use[1]; data_use[1]=data_use[0]; data_use[0]=a; asd=3; } else if(asd==3) {
data_use[3]=data_use[2]; data_use[2]=data_use[1]; data_use[1]=data_use[0]; data_use[0]=a; asd=0; } }
/***********************************************************************/ /***********************************************************************/
- 27 -
共分享92篇相关文档