您的位置 首页 技术

用外中止方法读按键,操控灯的亮灭

这一颗,我们学习外中断的用法。也就是外部IO的中断INT0,和INT1。对应的引脚是P32和P33。在我们的电路图中,P32也就是接在K1的引脚。所以当我们按下P32接到地的时候,可以触发一个INT0

这一颗,咱们学习外中止的用法。也便是外部IO的中止INT0,和INT1。对应的引脚是P32和P33。在咱们的电路图中,P32也便是接在K1的引脚。所以当咱们按下P32接到地的时分,能够触发一个INT0中止,当然,有必要预先初始化才会发动。

这种中止方法的按键,能够完成按键的当即呼应。关于需求快速呼应的场合是很有用的。外部IO中止还常用在用IO模仿通讯的场合,能够对数据的到来当即呼应。

下面请看代码:

DDDDDDDDDDDDDDDDD

#define uchar unsigned char //界说一下方便使用

#define uint unsigned int

#define ulong unsigned long

#include //包含一个52规范内核的头文件

sbit P10 = P1^0; //头文件中没有界说的IO就要自己来界说了

sbit P11 = P1^1;

sbit P12 = P1^2;

sbit P13 = P1^3;

sbit K1= P3^2;

bit ldelay=0; //长守时溢出符号,预置是0

uchar speed=10; //设置一个变量保存默许的跑马灯的移动速度

uchar speedlever=0; //保存当时的速度层次

char code dx516[3] _at_ 0x003b;//这是为了仿真设置的

//用外中止方法读按键K1,点亮一个LED

void main(void) // 主程序

{

IT0=1; //外中止跳变产生中止

EX0=1;

EA=1; //翻开总中止

while(1) //主程序循环

{

}

}

//外中止0

int0() interrupt 0

{

P10=0; //在中止里点亮LED

}

DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD

这个程序里,按一下K1(P32)之后,就会触发INT0中止,在该中止里点亮LED灯。

请编译运转,并看成果。能够看到,在按下K1之后,LED1变处于亮着的状况。

作业:

用中止方法的按键K1,操控一个LED灯的亮和灭两种状况

提示:需求去抖操作,不然按键颤动会引起多种中止。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/jishu/291699.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部