单片机学习笔记八按键服务函数和数码管显示服务函数
//key_Service()按键服务函数 //dis_Service()//数码管显示服务函数 ********************************************************** unsigned char wnd; unsigned char parm1 = 44; unsigned char parm2 = 55; unsigned char parm3 = 66; unsigned char parm4 = 77; void dis_Service(); void key_Service()//按键服务函数 { switch(Key_Scan()) { case 1: wnd++; if(wnd>3) wnd =0; break;//这段代码实现窗口切换 case 2: switch(wnd)//这段代码实现数据加一 { case 0: parm1++; if(parm1>99) parm1 =0; break; case 1: parm2++; if(parm2>99) parm2 =0; break; case 2: parm3++; if(parm3>99) parm3 =0; break; case 3: parm4++; if(parm4>99) parm4 =0; break; default: break; } case 3: switch(wnd)//这段代码实现数据减一 { case 0: parm1--; if(parm1>99) parm1 =99; break; case 1: parm2--; if(parm2>99) parm2 =99; break; case 2: parm3--; if(parm3>99) parm3 =99; break; case 3: parm4--; if(parm4>99) parm4 =99; break; default: break; } case 4: switch(wnd)//这段代码实现数据清零 { case 0: parm1 =0; break; case 1: parm2 =0; break; case 2: parm3 =0; break; case 3: parm4 =0; break; default: break; } default: break; } } void dis_Service()//数码管显示服务函数 { switch(wnd) { case 0: ledbuf[0] = 0; ledbuf[1] = 0; ledbuf[2] = parm1/10; ledbuf[3] = parm1%10; break; case 1: ledbuf[0] = 0; ledbuf[1] = 0; ledbuf[2] = parm2/10; ledbuf[3] = parm2%10; break; case 2: ledbuf[0] = 0; ledbuf[1] = 0; ledbuf[2] = parm3/10; ledbuf[3] = parm3%10; break; case 3: ledbuf[0] = 0; ledbuf[1] = 0; ledbuf[2] = parm4/10; ledbuf[3] = parm4%10; break; default: break; } }