概述
/*定时器T0测试程序 */
/*目标器件:ATmega168 */
/*晶振:RC 8MHZ */
TCCRn定时计数器控制寄存器
TCNTn计数器,不断的计数
TIMSK定时计数器中断屏蔽寄存器
TIFR中断标志寄存器
/***************************************************************************/
/*********************************包含头文件********************************/
#include <_iom88to328v.h>
#include <macros.h>
/****************************************************************************
函数功能:端口初始化程序
入口参数:
出口参数:
****************************************************************************/
void port_init (void)
{
DDRB=0XFF;
PORTB=0XFF;
}
/****************************************************************************
函数功能:定时器初始化程序
入口参数:
出口参数:
****************************************************************************/
void timer0_init(void)
{
TCCR0B = 0x00; //stop
ASSR = 0x00; //set async mode 设置异步模式
TCNT0 = 0x3c;
OCR0B = 0x00;
TCCR0B = 0x05; //1024分频
}
/****************************************************************************
函数功能:定时中断服务程序
入口参数:
出口参数:
****************************************************************************/
#pragma interrupt_handler timer0_ovf_isr:17
// #define iv_TIMER0_OVF 17
void timer0_ovf_isr(void)
{
TCNT0 = 0x3c;
PORTB ^= 0x01;
}
/****************************************************************************
函数功能:主程序
入口参数:
出口参数:
****************************************************************************/
void main (void)
{
CLI(); //disable all interrupts
port_init();
timer0_init();
MCUCR = 0x00;
TIMSK0 = 0x01; //T0溢出使能
SEI(); //enable interrupts
}
完整资料打包(含仿真):
AVR单片机开发1-5程序及仿真合集-单片机文档类资源-CSDN下载
最后
以上就是落寞野狼为你收集整理的AVR单片机开发4——定时器T0 中断方式的全部内容,希望文章能够帮你解决AVR单片机开发4——定时器T0 中断方式所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复