}
/**************** k4按键功能函数 ******************/ void k4() {
if((ms==2&&y==3)&&v<6) { mima[v]=0x04; jm_disp[v]=0x40; v=v+1; }
if((ms==3&&y==3)&&v<8) {
mima[v]=0x04; jm_disp[v]=0x40; v=v+1; }
if((y==1||y==2)&&(ms==0&&lock<8)) {
y=2; w=1;
lock=lock+1; count=0; }
if((ms==1&&y==1)&&v<8) {
if((seg_disp[0]!=sdm[2]&&v==1)||v>1) {
seg_disp[v]=sdm[keyvalue]; if(v==1||v==4) v=v+2; else v=v+1; } } }
/**************** k5按键功能函数 ******************/ void k5() {
if((ms==2&&y==3)&&v<6) { mima[v]=0x05; jm_disp[v]=0x40; v=v+1; }
if((ms==3&&y==3)&&v<8)
26
{
mima[v]=0x01; jm_disp[v]=0x40; v=v+1; }
if((y==1||y==2)&&(ms==0&&lock<8)) {
y=2; w=1;
lock=lock+1; count=0; }
if((ms==1&&y==1)&&v<8) {
if(v>=3||(v==1&&seg_disp[0]!=sdm[2])) {
seg_disp[v]=sdm[keyvalue]; if(v==1||v==4) v=v+2; else v=v+1; } } }
/**************** k6按键功能函数 ******************/ void k6() {
if((ms==2&&y==3)&&v<6) { mima[v]=0x06; jm_disp[v]=0x40; v=v+1; }
if((ms==3&&y==3)&&v<8) {
mima[v]=0x01; jm_disp[v]=0x40; v=v+1; }
if((y==1||y==2)&&(ms==0&&lock<8)) {
y=2; w=1;
lock=lock+1; count=0; }
if((ms==1&&y==1)&&v<8) {
27
if((v==4||v==7)||(v==1&&seg_disp[0]!=sdm[2])) {
seg_disp[v]=sdm[keyvalue]; if(v==1||v==4) v=v+2; else v=v+1; } } }
/**************** k7按键功能函数 ******************/ void k7() //修改管理员密码按键 {
if(y==3&&ms!=2) ms=3; }
//管理员模式下修改管理员密码
/**************** k8按键功能函数 ******************/ void k8() {
if((ms==2&&y==3)&&v<6) { mima[v]=0x07; jm_disp[v]=0x40; v=v+1; }
if((ms==3&&y==3)&&v<8) {
mima[v]=0x07; jm_disp[v]=0x40; v=v+1; }
if((y==1||y==2)&&(ms==0&&lock<8)) {
y=2; w=1;
keyvalue=keyvalue-1; lock=lock+1; count=0; }
if((ms==1&&y==1)&&v<8) {
if((v==4||v==7)||(v==1&&seg_disp[0]!=sdm[2])) {
keyvalue=keyvalue-1; seg_disp[v]=sdm[keyvalue]; if(v==1||v==4)
28
v=v+2; else v=v+1; } } }
/**************** k9按键功能函数 ******************/ void k9() {
if((ms==2&&y==3)&&v<6) { mima[v]=0x08; jm_disp[v]=0x40; v=v+1; }
if((ms==3&&y==3)&&v<8) {
mima[v]=0x08; jm_disp[v]=0x40; v=v+1; }
if((y==1||y==2)&&(ms==0&&lock<8)) {
y=2; w=1;
keyvalue=keyvalue-1; lock=lock+1; count=0; }
if((ms==1&&y==1)&&v<8) {
if((v==4||v==7)||(v==1&&seg_disp[0]!=sdm[2])) {
keyvalue=keyvalue-1; seg_disp[v]=sdm[keyvalue]; if(v==1||v==4) v=v+2; else v=v+1; } } }
/**************** k10按键功能函数 ******************/ void k10() {
if((ms==2&&y==3)&&v<6)
29
{ mima[v]=0x09; jm_disp[v]=0x40; v=v+1; }
if((ms==3&&y==3)&&v<8) {
mima[v]=0x09; jm_disp[v]=0x40; v=v+1; }
if((y==1||y==2)&&(ms==0&&lock<8)) {
y=2; w=1;
keyvalue=keyvalue-1; lock=lock+1; count=0; }
if((ms==1&&y==1)&&v<8) {
if((v==4||v==7)||(v==1&&seg_disp[0]!=sdm[2])) {
keyvalue=keyvalue-1; seg_disp[v]=sdm[keyvalue]; if(v==1||v==4) v=v+2; else v=v+1; } } }
/**************** k11按键功能函数 ******************/ /*void k11() { }*/
/**************** k12按键功能函数 ******************/ void k12() //返回按键 {
int i;
lock=0; v=0; y=1; if(ms==1) {
ms=0; TR0=1; } else
30