外部中断及应用.pptVIP

  • 6
  • 0
  • 约小于1千字
  • 约 26页
  • 2019-08-03 发布于福建
  • 举报
第 章 实时检测与控制;1.中断的基本概念;日常生活中的中断; 计算机中的中断概念;中断的检测与中断的响应 中断程序的转入 ATmega16的中断系统;中断的检测与中断的响应;中断的响应(1) CPU检测到了中断请求,并非立即响应,单片机的中断响应是有条件的:;中断的检测与响应示意图(1);中断的响应(2) 当满足“中断的响应(1)”的条件后,CUP立即响应中断,转入中断周期,CPU做以下几件事: ;中断的检测与响应示意图;当CPU响应中断,在关中断、保留断点后,一个十分重要的问题是如何转入中断服务程序的入口。;中断服务程序的转入(2);ATMWGA16中断系统;外部中断源 外部中断的控制;外部中断源;ATmega16的外部中断用户可以控制:;INT0;状态寄存器 —— SREG;通用中断控制寄存器 —— GICR;MCU控制寄存器 —— MCUCR;MCU控制和状态寄存器 —— MCUCSR;统计外部INT0的中断次数;设计思想 外部中断0的输入引脚为PD2,将PC口的第2位设计成方波信号输出,并连接到PD2引脚,作为外部中断请求信号。 在中断程序中设计一个计数器,每中断一次,计数器加1,同时显示所计的数。 为便于观察中断的信号的请求,将PC口连接到发光二极管的输入端。;#include mega16.h #include delay.h unsigned int x=0; interrupt [EXT_INT0] void ext_int0_isr(void) { x++; //统计圈数加1 lcd_clear();//清lcd显示 Lcd_uint(x);//显示统计圈数 };void main(void) { PORTC=0x00; DDRC=0x04; PORTD=0x00; DDRD=0x00; GICR|=0x40; MCUCR=0x03; MCUCSR=0x00; GIFR=0x40; lcd_init(16); //lcd初始化 #asm(sei) while (1) { PORTC.2=!PORTC.2; //在PC2口输出方波 delay_ms(500); }; } ;谢谢你的阅读

文档评论(0)

1亿VIP精品文档

相关文档