【51单片机】0~99计数器【仿真】【proteus】

该博客详细介绍了如何使用51单片机通过外部中断实现0到99的加减计数功能,并在共阳极LED数码管上显示。内容涵盖设计要求、硬件配置以及程序编写,利用Proteus进行仿真验证。在达到99或0时,进一步的加减操作将不再改变显示数值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

设计要求

使用单片机外部中断实现0~99的加/减计数,并采用共阳极LED数码管将其显示出来。每按一次按钮K1(INT0)进行加计数,当加到99时,再按K1加计数无效,数据仍显示为99;每按一次按钮K2(INT1)进行减计数,当减到00时,再按K2减计数无效,数据仍显示为00。

硬件设计
单片机 AT89C51 瓷片电容 CAP 30pF 晶振 CRYSTAL 11.0592MHZ 电解电容 CAP-ELEC
电阻 RES 限流电阻排 RX8 数码管 7SEG-MPX2-CA-BLUE 三极管 NPN
按钮 BUTTON

在最小系统电路的基础上加下面的元件
电路搭建

程序设计

程序框图

/*
选用的是共阳极数码管,那么需要找到对应的共阳极数码管数字显示的十六进制
*/


#include <reg52.h>
#include "intrins.h"

#define LED P0

typedef unsigned int u16;	  //对数据类型进行声明定义
typedef unsigned char u8;

//段选
sbit CS1 = P2^0;
sbit CS2 = P2^1;
//按键
sbit key1 = P3^2;
sbit key2 =
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值