找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 419|回复: 0
打印 上一主题 下一主题
收起左侧

单片机中断实验程序错误

[复制链接]
跳转到指定楼层
楼主
如图是中断实验
一、实验目的
  • 1.理解外部中断的作用及基本应用
  • 2. 掌握单片机使用外部中断的简单应用系统的设计方法和调试方法
二、实验原理
  • 1.中断控制原理:单片机暂停执行原程序,转而为外部设备执行中断服务程序,执行完又回到原程序的过程称之为中断。
  • 2.外部中断的初始化设置共有三项内容:
  • 开放外部中断,设置IE中的EA=1,EX0=1或EX1=1,本实验选用EX0=1。
  • 设置TCON中的IT0/IT1控制外部中断的触发方式为电平方式或边沿方式,本实验选用边沿触发方式。
  • 中断请求信号由引脚INT0(P3.2)和INT1(P3.3)引入,本实验由INT0(P3.2)接独立按键引入。
  • 3.中断响应的过程:单片机会检测P3.2上的状态,若在两个相邻周期采样先高电平后低电平则中断请求有效,中断标志位置“1”;否则继续为“0”。当单片机查询到中断标志位置“1”后,进行中断响应一次,进入中断服务程序,执行完继续回到主程序。

单片机源程序如下:

  1. #include“reg52.h”

  2. typedef unsigned int u16;

  3. typedef unsigned char u8;

  4. sbit LED1=P2^0;

  5. sbit KEY3=P3^2;

  6. void delay_10us(u16 ten_us)

  7. {

  8. While(ten_us--);

  9. }

  10. void exti0_init(void)

  11. {

  12. IT0=1;

  13. EX0=1;//打开INT0的中断允许

  14. EA=1;//打开总中断

  15. }

  16. void main()

  17. {

  18. Exti0_init();

  19. while(1)

  20. {



  21. }

  22. }

  23. void time0() interrupt 0

  24. {

  25. Delay_10us(1000);

  26. If(KEY3==0)

  27. LED1=!LED1;

  28. }
复制代码


51hei.png (54.79 KB, 下载次数: 30)

51hei.png

DA1.7z

19.54 KB, 下载次数: 1

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表