📄 优先级.txt
字号:
#include<reg51.h>
#include<absacc.h>
#define uint unsigned int
#define uchar unsigned char
uint i,j,m,n;
//延时函数,闪烁时间间隔约0.5s
void delay500ms(void)
{
unsigned char i,j,k;
for(i=15;i>0;i--)
for(j=202;j>0;j--)
for(k=81;k>0;k--);
}
//外部中断0子程序
//功能:中断发生后,P1口的灯闪烁八次,闪烁时间间隔为0.5s
void shanshuo() interrupt 0 using 1 //外部中断0子程序
{
for(j=0;j<8;j++) //闪烁次数
{
P1=0X00; //灯全亮
delay500ms();
P1=0Xff; //灯全灭
delay500ms();
}
}
//主函数
//功能:使小灯每隔0.5秒向左移一位依次点亮P1口的灯
void main ()
{
EA=1; //开总中断
EX0=1;IT0=1; //开外部中断0,设置外部中断为脉冲触发方式
while(1)
{
uchar a=0xfe;
for(i=0;i<8;i++) //设置移位次数
{
for(j=0;j<20;j++) //50us循环次数
{
TMOD=0X01; //设置定时器0工作于方式1
TH0=(65536-50000)/256; //50us计数初值
TL0=(65536-50000)%256;
TR0=1; //启动定时器
while(!TF0) //计数未溢出循环显示
{
P1=a; //灯的状态送P1口显示
}
TF0=0;
}
a=a<<1; //灯的状态左移一位
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -