第六讲中断与定时器_第1页
第六讲中断与定时器_第2页
第六讲中断与定时器_第3页
第六讲中断与定时器_第4页
第六讲中断与定时器_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、AVR单片机软硬件设计教程-入门篇 学单片机就要学AVR!主 讲: 尹延辉策 划:张 勇 学习板:LT-Mini-M16 力天电子版权所有技术交流QQ群: 2008年 9月1第六讲中断与定时器本讲内容:中断的概念M16的外部中断定时器的概念M16的定时器中断方式使用定时器中断的概念在程序运行期间,发生非预期的紧急事件通常是为了避免查询方式的程序设计用得最多的是外部中断与定时器中断外部中断:按键程序定时器中断:定时与循环扫描等应用场合中断服务程序中断发生时,主程序暂停,跳转到中断服务程序,称为“响应中断”执行完毕后返回主程序继续运行M16的外部中断M16具有3个外部中断INT0、INT1:支持4

2、种触发模式,同步触发INT2支持2种触发模式,异步触发中断相关库函数的头文件avr/interrupt.h中断服务程序SIGNAL(SIG_INTERRUPT0)/此处添加中断服务代码中断有关的寄存器MCUCRMCUCSRGICR外部中断使用步骤第1步:包含头文件#include 第2步:设置中断触发方式任意逻辑电平变化: MCUCR |= (1 ISC10);下降沿触发:MCUCR |= (1 ISC10)|(1 ISC11);上升沿触发:MCUCR |= (1 ISC11);第3步:使能响应相应外部中断GICR |= (1 INT0);第4步:使能全局中断sei();第5步:编写中断服务程

3、序SIGNAL(SIG_INTERRUPT0)定时器的概念8位定时/计数器的模型1个8位长度计数寄存器,可以对其进行读写1个时钟输入端口,计数寄存器对时钟输入端口的时钟脉冲个数进行加1计数,即每来一个时钟脉冲,寄存器的数值自加1如何实现精确定时?给计数寄存器设定初值n0给时钟输入端口输入一个频率精确的方波方波周期为t0计数器计数到256时定时器溢出,时间间隔为:T = (256 n0) t0定时器溢出时可以产生中断定时器溢出方式的应用M16的定时器08位定时器具有PWM功能定时器0相关寄存器T/C 控制寄存器 TCCR0设置时钟源频率T/C 寄存器 TCNT0计数寄存器T/C 中断屏蔽寄存器 TIMSK需要使用溢出中断时T/C 中断标志寄存器 TIFR查询是否溢出定时器0溢出方式查询模式使用步骤第1步:设置TC寄存器初值TCNT0 = 55;第2步:开启时钟,同时TC0启动TCCR0 |= (1 CS01);第3步:查询TIFR寄存器的TOV0位while(!(TIFR & TOV0);定时器0溢出方式中断模式使用步骤第1步:包含中断函数头文件#include 第2步:设置TC寄存器初值TCNT0 = 55;第3步:使能TC0溢出中断TIMSK |= (1 TOIE0);第4步:编写TC0溢出中断服务程序SIGNAL(SIG_SIG_OVERFLOW0)/

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论