#include<reg51.h>
unsigned char a=1;
unsigned int i;
bit direct;
bit b=0;
void delay()
{
while(i--);
}
void int0_srv(void) interrupt 0 using 1
{
direct=!direct;
}
void int2_srv(void) interrupt 2 using 1
{
b=~b;
}
void zhengfan()
{
P1=0;
if(!direct)
{
P1=a;
a=a<<1;
if(a==0)a=1;
delay();
}
else
{
P1=a;
a=a>>1;
if(a==0)a=0x80;
delay();
}
}
void shuangshan()
{
P1=b;
}
void main()
{
EX0=1;
IT0=1;
EX1=1;
IT1=1;
EA=1;
while(1)
{
shuangshan();
zhengfan();
}
}
![](https://profile-avatar.csdnimg.cn/fa73583039ac48df98e4b3a8907a840c_qq_53193202.jpg!4)
利用at89c51引用外部中断INT0,INT1用按键S1,S2 已实现正反向流,不能实现双闪
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
0条回答 默认 最新
悬赏问题
- ¥15 oracle数据库查询语句问题
- ¥15 有没有c++绘制算法的佬们吗救孩一下
- ¥15 android 蓝牙闪退
- ¥15 绝缘子污秽comsol仿真参数
- ¥15 Fatal error in Process MEMORY
- ¥15 labelme生成的json有乱码?
- ¥30 arduino vector defined in discarded section `.text' of wiring.c.o (symbol from plugin)
- ¥20 如何训练大模型在复杂因素组成的系统中求得最优解
- ¥15 关于#r语言#的问题:在进行倾向性评分匹配时,使用“match it"包提示”错误于eval(family$initialize): y值必需满足0 <= y <= 1“请问在进行PSM时
- ¥45 求17位带符号原码乘法器verilog代码