标题: 单片机中断优先级和中断嵌套实验 [打印本页]

作者: lx80072    时间: 2019-7-3 22:22
标题: 单片机中断优先级和中断嵌套实验
(中断优先级和中断嵌套实验)

1、两个外部中断:P1接8个LED灯,点动开关接P3.2 (INT0),K0开关接P3.3(INT1),均为负跳变产生中断和低优先级,编写程序实现如下功能:①主程序8只LED灯一起亮灭闪烁循环往复。②INT0中断程序实现:8个LED灯左点亮循环5次后退出中断;INT1中断程序实现8个LED灯右点亮循环5次后退出中断。(为方便实验现象观察,中断程序里的循环次数可改为10
程序如下:
  1. #include<reg51.h>

  2. #include<intrins.h>

  3. void delay()

  4. {

  5.          unsignedchar i,j;

  6.          for(i=0;i<255;i++)

  7.          for(j=0;j<255;j++);

  8. }

  9. void main()

  10. {

  11.          EA=1;

  12.          EX0=1;

  13.          EX1=1;

  14.          PX0=0;

  15.          PX1=1;

  16.          IT0=1;

  17.          IT1=1;

  18.          while(1)

  19.          {

  20.                   P1=0;

  21.                   delay();

  22.                   P1=0xff;

  23.                   delay();

  24.          }

  25. }

  26. void key0()interrupt 0

  27. {

  28.          

  29.          chari,j;

  30.          P1=0x01;

  31.          for(i=0;i<5;i++)

  32.          for(j=0;j<8;j++)

  33.          {

  34.                   P1=_crol_(P1,1);

  35.                   delay();

  36.          }

  37. }

  38. void key1()interrupt 2

  39. {

  40.          chari,j;

  41.          P1=0x80;

  42.          for(i=0;i<5;i++)

  43.          for(j=0;j<8;j++)

  44.          {

  45.                   P1=_cror_(P1,1);

  46.                   delay();

  47.          }

  48. }
复制代码







欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1