好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

外部多按键中断响应和动态数码管显示.doc

6页
  • 卖家[上传人]:ji****72
  • 文档编号:37645933
  • 上传时间:2018-04-20
  • 文档格式:DOC
  • 文档大小:61KB
  • / 6 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • include #include #include #include #include #define uchar unsigned char #define uint unsigned int sbit P10=P1^0; sbit P11=P1^1; sbit P12=P1^2;//别对应按键 1、2、3 double distance=0; double time=0; double fare=0; int ldatas[8]; int tdatas[8]; int fdatas[8]; int keyflag1; void delayms(unsigned char ms); uchar data dis_digit; uchar code dis_code[13]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x38,0x31,0x71}; uchar number[8]; void order(uchar p,uchar q,uchar r,uchar s,uchar t,uchar u,uchar v,uchar w) { number[0]=dis_code[p]; number[1]=dis_code[q]; number[2]=dis_code[r]; number[3]=dis_code[s]; number[4]=dis_code[t]; number[5]=dis_code[u]; number[6]=(dis_code[v]|0x80); number[7]=dis_code[w];} uchar key_value; void delayms(uchar ms) {uchar i; while(ms--) {for(i=0;i2 }if(y7) dis_index-=8; }};break; //按键 2 按下第一次显示路程 case 2:{order(tdatas[0],tdatas[1],tdatas[2],tdatas[3],tdatas[4],tdatas[5],tdatas[6],tdatas[7]); while(keyflag1==2 P0=dis_digit; delayms(1); P0=0xff; dis_digit=_crol_(dis_digit,1); dis_index++; if(dis_index>7) dis_index-=8;}};break; //按键 2 按下第二次显示时间 case 3:{order(fdatas[0],fdatas[1],fdatas[2],fdatas[3],fdatas[4],fdatas[5],fdatas[6],fdatas[7]); while(keyflag1==3P0=dis_digit; delayms(1); P0=0xff; dis_digit=_crol_(dis_digit,1); dis_index++; if(dis_index>7) dis_index-=8;}};break; //按键 2 按下第三次显示费用 }} break; case 3:{P0=0x00; P2=0x3f; distance=time=fare=0;} default:break; //按键 3 清零 } } } } void int0() interrupt 0 //中断服务 {if(P10==0) {key_value=1; } else if(P11==0) {key_value=2; keyflag1++; if (keyflag1>3) keyflag1=1; } else if(P12==0) {key_value=3; P0=0x00; P2=0x3f;} }。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.