【51单片机利用外部中断编写程序用两个按键控制数码管显示从0到9,S1控制加计数0—9,S2控制减计数9—0。】

缘由https://ask.csdn.net/questions/7935097

cpp 复制代码
#include "reg52.h"
unsigned char code SmZiFu[]={63,6,91,79,102,109,125,7,127,111,128,0};//共阴0-9.
unsigned char j=0,jj=0;
void smjia()
{
	unsigned char ys0=0,ys1=0;
	while(j<10)if(++ys0==0)
	{
		P0=SmZiFu[j];
		if(++ys1==0)++j;
	}
}
void smjian()
{
	unsigned char ys0=0,ys1=0;
	while(j)if(++ys0==0)
	{
		P0=SmZiFu[j-1];
		if(++ys1==0)--j;
	}
}
void main()
{//缘由https://ask.csdn.net/questions/7935097
	unsigned char ys0=0,ys1=0;
	EA=IT0=EX0=IT1=EX1=1;//下降沿触发,外部中断优先设置
	P1=0;
	while(1)
	{
	}
}
void WaiBuZhongDuan0() interrupt 0//外部中断引脚P3.2,INT0
{
   j=0;smjia();//调用函数可以移到主函数判断状态即可
}
void WaiBuZhongDuan1() interrupt 2//外部中断引脚P3.3,INT1
{
   j=10;smjian();
}
相关推荐
2301_8227032021 分钟前
鸿蒙flutter三方库实战——教育与学习平台:Flutter Markdown
学习·算法·flutter·华为·harmonyos·鸿蒙
网域小星球21 分钟前
C 语言从 0 入门(十四)|文件操作:读写文本、保存数据持久化
c语言·开发语言·文件操作·fopen·fprintf
网域小星球25 分钟前
C 语言从 0 入门(七)|字符数组与字符串完整精讲|VS2022 高质量实战
c语言·开发语言·字符串·vs2022·字符数组
Jia ming32 分钟前
C语言实现日期天数计算
c语言·开发语言·算法
无限进步_1 小时前
【C++&string】大数相乘算法详解:从字符串加法到乘法实现
java·开发语言·c++·git·算法·github·visual studio
苏纪云1 小时前
蓝桥杯考前突击
c++·算法·蓝桥杯
W23035765731 小时前
经典算法详解:最长公共子序列 (LCS) —— 从暴力递归到动态规划完整实现
算法·动态规划·最长子序列
雷工笔记1 小时前
MES / WMS / AGV 交互时序图及生产管理模块界面设计清单
人工智能·笔记
pzx_0012 小时前
【优化器】 随机梯度下降 SGD 详解
人工智能·python·算法
大邳草民2 小时前
Python 中 global 与 nonlocal 的语义与机制
开发语言·笔记·python