定时器中断(定时器中断控制led灯闪烁)

更新时间:2023-03-02 08:10:15 阅读: 评论:0

按下SW17(接P3.2)时,LED4(P2.7)、LED7(P1.7)、 LED8(P1.6)、LED9(P4.7)、LED10(P4.6)按顺序每隔1S依次闪烁,然后再循环。(采用SW17输入外部中断0中断请求)定时器要求用中断方式实现1s延时。

希望我的程序能对大家的实验有帮助。

#include<stc15f2k60s2.h>

#include<intrins.h>

#define uchar unsigned char

#define unit unsigned int

uchar a=0,b=0,i=0;

//*******************外部中断0

void int0_isr()interrupt 0

{

a=1;

}

//*********************定时中断T1

void Timer1_int(void) interrupt 3 using 1

{

i++;

if(i==20)

{

i=0;

if(a==1)

b++;

}

}

//*********************主函数

void main(void)

{

P0M0=0;P0M1=0;

P1M0=0;P1M1=0;

P2M0=0;P2M1=0;

P3M0=0;P3M1=0;

P4M0=0;P4M1=0;

IT0=1;

IE0=0;

EX0=1;

TMOD=0X00;

TH1=0X3C;

TL1=0XB0;

TF1=0;

ET1=1;

EA=1;

while(1)

if(a==1)

{

TR1=1;

switch(b)

{

ca 0:P4=0xFF;P2=0x7F;break; //0111 1111 P2.7

ca 1:P2=0XFF;P1=0x7F;break; //0111 1111 P1.7

ca 2:P1=0xBF;break; //1011 1111 P1.6

ca 3:P1=0xFF;P4=0x7F;break; //0111 1111 p4.7

ca 4:P4=0xBF; break; //1011 1111 p4.6

default:b=0;

}

}

}

本文发布于:2023-02-28 21:01:00,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/zhishi/a/1677715814100209.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:定时器中断(定时器中断控制led灯闪烁).doc

本文 PDF 下载地址:定时器中断(定时器中断控制led灯闪烁).pdf

标签:定时器   led
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 实用文体写作网旗下知识大全大全栏目是一个全百科类宝库! 优秀范文|法律文书|专利查询|