该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include "main.h"

sbit S7=P3^0;//加

sbit S6=P3^1;//减

sbit S5=P3^2;//清0

uchar key_code,key_counts;//按键代码,按键计数

uchar num_buff[3]={0,0,0};//数码管显示内容

uchar dula[12]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf,0xff};

void main()

{

allint();

while(1)

{

key_contrul_smg_display();

key_contrul_smg_display_buff();

}

}

void delay(uchar i)

{

while(i--);

}

void allint()

{

P2=0X80;P0=0XFF;P2=0X00;

P2=0XA0;P0=0X00;P2=0X00;

P2=0XC0;P0=0XFF;P2=0X00;

P2=0XE0;P0=0XFF;P2=0X00;

}

void key_contrul_smg_display()

{

uchar i,j=0x80;

num_buff[0]=key_counts/100;

num_buff[1]=key_counts%100/10;

num_buff[2]=key_counts%10;

for(i=0;i<3;i++)

{

j=_crol_(j,1);

P2=0XE0;P0=dula[num_buff[i]];P2=0X00;

P0=0XFF;

P2=0XC0;P0=j;P2=0X00;

P0=0X00;

delay(1000);

}

}

void key_contrul_smg_display_buff()

{

uchar i;

P30=1;P31=1;P32=1;

key_code=P3;

if(key_code!=0xff)

{

for(i=0;i<30;i++)

{

key_contrul_smg_display();

switch(key_code)

{

case 0xfe:if(key_counts<9)key_counts++;break;

case 0xfd:if(key_counts>0)key_counts--;break;

case 0xfb:key_counts=0;break;

}

key_code=0xff;

}

}

}

独立按键控制数码管c语言,各位大佬,独立按键控制数码管为什么按下的时候要加一呢?...相关推荐

  1. 定时器驱动数码管c语言,第五章 定时器和数码管

    1.1基本数字逻辑门电路 不管是数字电路,还是C语言,我们都会经常遇到逻辑运算和逻辑电路,在这里我介绍一下,大家先简单了解一下,知道有这么回事,回头遇到了,再详细研究. 首先,在"逻辑&qu ...

  2. 树莓派驱动数码管c 语言,树莓派GPIO入门05-驱动数码管显示数字

    标准的数码管从显示内容上分7段和8段数码管两种.8段比7段多一个右下角的小数点.还有一些其他特殊的如可以显示米字形的数码管不在本文讨论范围内,其实原理都是一样的. 8段数码管由8个发光二极管组成,其中 ...

  3. 51单片机控制步进电机的c语言程序,用AT89C51单片机控制步进电机的汇编源程序...

    描述 下面程序完成的主要功能:实现步进电机的正反转,加速.减速:显示电机转速(转速级别)和工作状态(正转.反转.不转). 源程序 SPEED EQU 10H ;SPEED为转速等级标志,共7级,即1~ ...

  4. linux下的c语言控制灯闪烁,C语言实现LED灯闪烁控制

    原标题:C语言实现LED灯闪烁控制 /********* 配套 **********/ #include //包含 寄存器的头文件 /********************************* ...

  5. 51单片机c语言按键程序,51单片机C语言程序(四)键盘 数码管 跑表程序

    程序一 数码管前三位显示一个跑表, 从000到999之间以1%秒的速度运行, 当按下一个独立键盘时跑表停止, 松开手后跑表继续运行(用定时器设计表) #include#include #define ...

  6. 中断控制流水灯c语言程序,51单片机按键中断控制流水灯

    满意答案 levis501523 2018.01.03 采纳率:58%    等级:12 已帮助:8301人 #include #include #define uchar unsigned char ...

  7. 单片机控制灯光亮度c语言程序,STC89C52RC单片机按键控制PWM输出LED灯亮度C语言程序...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 //以下是源程序,只需修改定义IO口就可以使用, #include < reg52.h > #include < intrins.h & ...

  8. 单片机控制灯光亮度c语言程序,基于51单片机控制LED灯光亮度并报警

    利用pwm控制led灯光亮度大小.可以显示许多亮度等级 到最低或者最高亮度等级会发出报警.设计思路: LED一般是恒流操作的,如何改变LED的亮度呢?答案就是PWM控制.在一定的频率的方波中,调整高电 ...

  9. 按键按动次数计数c语言,二、Windows按键消息—重复计数、OEM扫描码、扩充键旗标、内容代...

    重复计数 重复计数是该消息所表示的按键次数,大多数情况下,重复计数设定为1.不过,如果按下一个键之后,您的窗口消息处理程序不够快,以致不能处理自动重复速率(您可以在「控制台」的「键盘」中进行设定)下的 ...

最新文章

  1. 取代Python多进程!伯克利开源分布式框架Ray
  2. Intent Android 详解
  3. mySQL(关系型数据库管理系统)编辑
  4. 剖析数据库中重要而又常被曲解的概念
  5. 动手学深度学习(PyTorch实现)(三)--过拟合与欠拟合
  6. 天正lisp文件路径_AutoCAD的文件组织形式和搜索路径 | 坐倚北风
  7. JDK1.8的新特性详解
  8. centos查询是否有安装软件包
  9. 2018.12.25|区块链技术头条
  10. SolidWorks2022 安装教程
  11. brctl 设置ip_Linux 网桥配置命令:brctl
  12. 如何将静态图片制作成闪图效果?
  13. 深度学习笔记(二十)Momentum动量梯度下降及RSMprop Adam优化算法
  14. 用scrapy框架爬取拉勾网招聘信息
  15. 【算法】汇总:求解π值的算法
  16. deepin更新失败_更新失败
  17. 记录js定时器产生 Deferred long-running timer task(s) to improve scrolling smoothness
  18. JS获取指定日期前后N天的日期、前N个月日期、后N个月日期
  19. 音乐平台程序源码分享
  20. 如何play billard

热门文章

  1. AJAX-jQuery实现Ajax
  2. Ubuntu 12.04软件源、更新源
  3. 怎么把数字替换成空格_剑指offer04:替换空格
  4. c语言指针的相关运算,C语言指针的运算
  5. python考试pass or fail_python-pytest学习(十二)-标记失败xfail
  6. boost asio
  7. js 按钮(checkbox)控制多个checkbox的选中或不选中问题
  8. 【1024】阿里开源项目汇总
  9. 活动选择的贪心算法与动态规划
  10. Kubernetes大集群怎么管?基于监控的弹性伸缩方法