博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
51单片机:设计有四位数码管,设计3个按键,k1,k2,k3;k1为模式键,第一次按下,显示初始值,k2,k3有效,k2按一次初值加1,k3按一次初值减1;k1第二次按下停止;k1第三次按下清零;
阅读量:4221 次
发布时间:2019-05-26

本文共 2157 字,大约阅读时间需要 7 分钟。

还是那个原理图

题目详情:

#include 
#include
#define uint unsigned long #define uchar unsigned char sbit N5 = P1^0;sbit N6 = P1^1;sbit N7 = P1^2;sbit N8 = P1^3;sbit S1 = P3^7;//K1按钮继续计数sbit S2 = P3^6;//K3清零sbit S3 = P3^5;//K2停止计数按钮uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //0~916进制共阳极编码 uchar shi=0;uint num;uint mes;void delayms(uint xms) //延时函数{ uint i,j; for(i=xms;i>0;i--) for(j=10;j>0;j--);}void timer0() interrupt 1{ if(shi==1) { shi=0; num--; } TH0=(65536-10000)/256; //重新赋值 TL0=(65536-10000)%256; shi++; } void display(unsigned long num) { N5=0; P0=table[(num%10000)/1000]; delayms(1); P0=0XFF; N5=1; N6=0; P0=table[(num%1000)/100]+0x80; delayms(1); P0=0XFF; N6=1; N7=0; P0=table[(num%100)/10]; delayms(1); P0=0XFF; N7=1; N8=0; P0=table[num%10]; delayms(1); P0=0XFF; N8=1; }void main(){ TMOD=0X01; /*中断初始化*/ TH0=(65536-10000)/256; TL0=(65536-10000)%256; EA=1; //中断总开关 //ET0=1; //请求中断 //TR0=1; //允许中断 num=1234; mes=0; while(1) { ET0=1; display(num); if(S1==0)//判断是否按下 开始计数 { delayms(0); if(S1==0) //再次确定 { if(mes==0){ num = 1234;//初始值 TR0=1; mes++; } else if(mes==1){ //num = 2222;//初始值 TR0=0; //停止 mes++; } else if(mes==2){ //num = 3333;//初始值 num=0;//清零 mes = 0; }else{ num = 1234;//初始值 } } while(!S1); //消抖 delayms(50); while(!S1); //跳出所在的第一个while循环 break; } else if(S2==0)//判断是否按下 清零 { delayms(50); if(S2==0) //再次确定 { TR0=0; num=num+100; } while(!S2); //消抖 delayms(50); while(!S2); //跳出所在的第一个while循环 break; } else if(S3==0)//判断是否按下 { delayms(50); if(S3==0) //再次确定 { while(!S3); if(num==0){ num=0; } else if(num>0){ TR0=0; num=num-100;//减一 } } while(!S3); //消抖 delayms(50); while(!S3); //跳出所在的第一个while循环 break; } } }

 

转载地址:http://hbhmi.baihongyu.com/

你可能感兴趣的文章
【回顾】云创大数据教育事业部成立
查看>>
云创大数据与江苏城市职业学院共建实习实训就业基地!
查看>>
刘鹏教授为江苏移动大数据和网络部门作报告
查看>>
12月,云创大数据发生了哪些大事?
查看>>
贵州电子商务职业技术学院实验中心主任李崑一行到访
查看>>
善行天下,大爱无疆 ——云创再次获赠爱心锦旗!
查看>>
热烈祝贺刘鹏教授膺选第45届世界技能大赛云计算赛事中国赛区裁判长!
查看>>
云创大数据求贤若渴,市场精英请来揭榜
查看>>
图解YU12、I420、YV12、NV12、NV21、YUV420P、YUV420SP、YUV422P、YUV444P的区别
查看>>
QNX简介
查看>>
MQTT协议基本介绍
查看>>
进程和线程是操作系统基本概念,了解一下
查看>>
SSL与TLS的区别以及介绍
查看>>
HTTPS、TLS、SSL、HTTP区别和关系
查看>>
Kafka 入门三问
查看>>
c/c++ 内存泄漏检测,开源工具valgrind使用整理
查看>>
RTSP协议、RTMP协议、HTTP协议的区别
查看>>
h264 sps pps详解
查看>>
AAC的ADTS头信息介绍
查看>>
MediaMuxer和MediaExtractor类(音频和视频数据的混合和分离)
查看>>