如何设置定时器1的寄存器呢?我们仅要简单的随着以下流程
1.对T/C1 控制寄存器B TCCR1B,设置分频或者无分频。TCCR1B|=BIT(2);
2.对TCNT1H 和TCNT1L 赋初值。
3.对T/C1 中断屏蔽寄存器TIMSK,使能定时器1 溢出中断。TIMSK|=0x04;
4.对全局中断使能使能。SREG|=BIT(7);
5.之后再编写相关的中断函数即可。
那么现在出现了一系列的问题?分频有什么用?又如何对TCNT1 赋初值?照以下的公式计算:要赋给TCNT1 的初值= ( 65536 - ( ( 晶振频率/分频) * 定时时间) )
搞了半天,就是分频置初值,使能中断、开总断。与51极相似!
定时器0:
void miao(void)
{
if(num == 125)//实际是8MS中断一次
{
num = 0;
if(second++ == 60) second = 0;
}
else
{
num++;
}
TCNT0 = 0x05;
}
void Timer0Init(void)
{
TCCR0 = 0x04;
TCNT0 = 0x05;
TIMSK |= (1<<0);
SREG |= 0x80;
}
定时器1:
// T/C1中断入口
void miao(void)
{
if(num == 100)
num = 0;
else num++;
TCNT1H = 0x85;
TCNT1L = 0xED;
}
void Timer1Init(void)
{
TCCR1B = 0x04;
TCNT1H = 0x85;
TCNT1L = 0xED;
TIMSK |= (1<<2);
SREG |= 0x80;
}
关键字:AVR 定时器1 普通模式
引用地址:
AVR定时器1的普通模式设置
推荐阅读最新更新时间:2024-03-16 13:48
PLD与AVR总线通信接口VHDL设计与实现
1、引言 嵌入式系统在日常生活中的大量使用,人们也对其性能和速度提出了更高的要求。微控制器和可编程逻辑器件的结合,更能充分发挥嵌入式系统的优势。本文设计和实现的微控制器与可编程逻辑器件之间总线读写方式通信比传统的串行通信更可靠、速度更快。下面是一些相关术语的说明。 总线:任何一个微处理器都要与一定数量的部件和外围设备连接,但如果将各部件和每一种外围设备都分别用一组线路与CPU直接连接,那么连线将会错综复杂,甚至难以实现。为了简化硬件电路设计、简化系统结构,常用一组线路,配置以适当的接口电路,与各部件和外围设备连接,这组共用的连接线路被称为总线 。采用总线结构便于部件和设备的扩充,尤其制定了统一的总线标准则容易使不
[工业控制]
基于AVR和CPLD的高速数据采集系统的设计
输入系统的信息大多数是模拟量,为使计算机能够处理这些模拟量,必须经由数据采集系统将模拟量转化为数字量。CPLD是在PAL、GAL等逻辑器件的基础上发展起来的,CPLD的规模比较大,适合于时序、组合等逻辑电路的应用场合,它的高集成度能力大大缩小电路板的尺寸,降低了系统的成本,而且能够提高系统的性能和可靠性。对于一个成型的探测系统而言,通常都是有采集储存部分的,无论是电信号、光信号、声音信号、磁信号等在被探测器接收到后大部分都需要转化为数字信号传给处理器才能完成分析、判断的过程。对于需要高速采集并存储的系统,常常需要购买昂贵的高速采集卡等设备,在基于CPLD、AVR等控制高速ADC、储存等技术的基础上,本文设计低成本、高速采集存储
[嵌入式]
单片机的两大系列进行PK_MSP430和AVR
单片机种类有很多,好多厂商都推出了自己的MCU,对于众多品牌的单片机,我比较看重MSP430和AVR系列的,下面就从他们各自的特点,分几个方面,进行PK分析。 既然进行PK,如同体育竞赛,要选择相同等级的进行对比,为此,选择MSP430G2553和ATMEGA88PA-AU,性能差不多,以此作为比较。 一、处理器位数和频率 两种芯片都支持片内振荡器 MSP430G2553 16位 16MHZ 大部分指令系单指令周期 ATMEGA88PA 8位 20MHZ 单指令周期 若按8位的标准来计算,处理器速度应是8位的2倍,这对运算速度是好事。但在实际中16位处于一个很尴尬的境地,若与高端的相比,上有32
[单片机]
AVR单片机汇编器伪指令
伪指令不属于 单片机 的指令系统,而是由汇编器提供的指令,用于调整 存储器 中程序的位置、定义宏、初始化存储器等。AVR单片机的汇编器共提供18条伪指令(见附表)。 其中,ORG、DB、DW、EQU读者比较熟悉,这里不再赘述。下面对部分伪指令加以说明。 BYTE-保存单字节数据到SRAM中。BYTE伪指令仅用在数据存储器。为提供数据保存的位置,在BYTE前应有标号。在由CSEG、ESEG定义的代码段和E2PROM段中不能使用BYTE伪指令。 格式LABEL:.BYTE表达式 CSEG-定义程序存储器代码段的起始位置一个汇编文件可以包括若干个代码段,汇编时这些代码段被连成一个代码段。在代码
[单片机]
AVR 基本硬件线路与分析
单片机最小系统 单片机最小系统设计 AVR基本硬件线路设计与分析 (ATmega16功能小板) AVR DB-CORE Ver2.3 Atmega16开发板 本站商城提供本最小系统销售: 99元 AVR学习套件 AVR学习板 AVR开发板 easyavr m16 , ATmega16 开发板 AVR学习板 Mega16 核心板 (特价) 。 基本的AVR硬件线路,包括以下几部分: 1。复位线路 2。晶振线路 3。AD转换滤波线路 4。ISP下载接口 5。JTAG仿真接口 6。电源 7。串口电路 下面以本网站推荐的AVR入门芯片 ATmega16L-8AI 分析上述基本线路。(-8AI表示8M频率的TQFP贴
[单片机]
AVR单片机IAR开发环境搭建和注意事项
简介:1、AVR单片机IAR开发环境搭建 2、IAR使用注意事项 1、AVR单片机IAR开发环境搭建 2、IAR使用注意事项 头文件含义 avr_macros.h里面包含了读写16位寄存器的简化书写,和几个位操作函数 comp_a90.h对大量的内在函数做了简要书写 ina90.h包含 inavr.h comp_A90.h 文件 intrinsics.h内在函数提供最简单的操作处理器底层特征。休眠,看门狗,FLASH函数。 iomacro.HI/O寄存器定义文件样本。 iom8.h包含I/O等寄存器定义 位操作 在c语言里对位的操作如一般如下: PORTB|=(1 2); //置PORTB的第2位=1 PO
[单片机]
4. avr 定时器/计数器1 --TC1 --CTC模式输出PWM
T/C1是16位定时器/计数器,它的计数器由两个8位寄存器TCNT1H,TCNT1L构成,TCNT1H是高8位寄存器,TCNT1L是低8位寄存器。最大计算值为2的16次幂,十六进制是0xFFFF=65535. 例如:定时200ms ,晶振8MHZ,分频系数1024,计数时钟频率为8MHZ/1024=8000000HZ/1024=7812.5HZ,每个计数脉冲的周期时间为1/7812.5=0.128ms,计时200ms的计数器值为:65635-200ms/0.128ms=63972=0xF9E4 ,则TCNT1H付初值为0xF9,TCNT1L付初值为0xE4. //函数功能:实现PA口的led亮0.1S,灭0.9S #include
[单片机]
AVR的SD卡接口程序
SD卡接口程序/*****************************************************/ /* SD Code for M32L */ /* By pasyong */ /* 2006-4 */ /* Base ICC6.31A */ /************************************************************/ #include iom32v.h #include macros.h #include "1011.h" #define uchar unsigned char #de
[单片机]