定时器中断实验,工作方式2 ,延时1秒,是一盏LED灯亮灭 求单片机实验
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/05 15:42:11
![定时器中断实验,工作方式2 ,延时1秒,是一盏LED灯亮灭 求单片机实验](/uploads/image/z/9857504-56-4.jpg?t=%E5%AE%9A%E6%97%B6%E5%99%A8%E4%B8%AD%E6%96%AD%E5%AE%9E%E9%AA%8C%2C%E5%B7%A5%E4%BD%9C%E6%96%B9%E5%BC%8F2+%2C%E5%BB%B6%E6%97%B61%E7%A7%92%2C%E6%98%AF%E4%B8%80%E7%9B%8FLED%E7%81%AF%E4%BA%AE%E7%81%AD+%E6%B1%82%E5%8D%95%E7%89%87%E6%9C%BA%E5%AE%9E%E9%AA%8C)
定时器中断实验,工作方式2 ,延时1秒,是一盏LED灯亮灭 求单片机实验
定时器中断实验,工作方式2 ,延时1秒,是一盏LED灯亮灭 求单片机实验
定时器中断实验,工作方式2 ,延时1秒,是一盏LED灯亮灭 求单片机实验
你要程序还是电路图哦?方式2是8位的吧,最大才256us;一次不能延迟1秒吧,给个标记变量,如flag;
每进入一次中断,让flag++;当flag的值达到1m后,让灯亮灭吧!
AT89C51 P1^0接LED,灌电流驱动(0亮,1灭)。用定时器0工作方式2
C语言版
#include
#define LED P1^0
unsigned int count1;
unsigned int count2;
main()
{
count1=0;
count2=0...
全部展开
AT89C51 P1^0接LED,灌电流驱动(0亮,1灭)。用定时器0工作方式2
C语言版
#include
#define LED P1^0
unsigned int count1;
unsigned int count2;
main()
{
count1=0;
count2=0;
TMOD=0x02;
TH0=0x38;
TL0=0x38;
EA=1;
ET0=1;
TR0=1;
}
void timer0_int() interrupt 1
{
count1++;
if(count1==100)
{
count1=0;
count2++;
if(count2==50)
{
count2=0;
LED=~LED;
}
}
}
汇编版
ORG 0000H
LJMP START
ORG 000BH
LJMP TIMER0_INT
ORG 1000H
START:CLR R1
CLR R2
MOV TMOD,#02H
MOV TL0,#38H
MOV TH0,#38H
SETB EA
SETB ET0
SETB TR0
TIMER0_INT:
S1: INC R1
CJNE R1,#0x64,S1
CLR R1
S2: INC R2
CJNE R2,#0x32,S2
CLR R2
CPL P1.0
匆忙中没编译,可能有错漏,自己调试一下。
收起