【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();
}
相关推荐
sulikey10 分钟前
个人Linux操作系统学习笔记11 - 环境变量
linux·笔记·学习
Lumos18637 分钟前
51单片机从零到实战(完结)——后续学习路线建议
算法
稚南城才子,乌衣巷风流42 分钟前
DFS序详解:原理、应用与实现
算法·深度优先·图论
稚南城才子,乌衣巷风流1 小时前
动态树(Dynamic Tree)数据结构详解
数据结构·算法
爱刷碗的苏泓舒1 小时前
C 语言 if-else 与 switch-case 分支语句对比
c语言·开发语言
无相求码1 小时前
指针的5层境界,从入门到劝退:C语言指针进阶全解析
c语言
依然范特东1 小时前
强化学习笔记2--bellman equation
人工智能·笔记
乐观勇敢坚强的老彭2 小时前
信奥C++一维数组笔记
开发语言·c++·笔记
变量未定义~2 小时前
最小生成树1(Prim模板)、最小生成树2(kruskal模板)、最近公共祖先(模板)
算法
这就是佬们吗2 小时前
Python入门⑤-异常处理、文件操作与实战项目
开发语言·数据库·python·算法·pycharm