立即注册 找回密码

微雪课堂

搜索
微雪课堂 AVRAVR单片机内核剖析
订阅

AVR单片机内核剖析

ATmega168 复位源
复位AVR复位时所有的 I/O 寄存器都被设置为初始值,程序从复位向量处开始执行。 对于ATmega168 复位向量处的指令必须是绝对跳转 JMP 指令,以使程序跳转到复位处理例程。 对于ATmega48与ATmega88复位向量处的指令必 ...
分类:    2015-5-28 00:14
ATmega168 减少功耗的方法
试图降低AVR 控制系统的功耗时需要考虑几个问题。一般来说,要尽可能利用睡眠模式,并且使尽可能少的模块继续工作。不需要的功能必须禁止。下面的模块需要特殊考虑以达到尽可能低的功耗。模数转换器使能时, ADC 在 ...
分类:    2015-5-28 00:14
ATmega168 Standby模式
Standby 模式当 SM2..0 为 110 ,且选择了外部晶体振荡器或陶瓷谐振器作为时钟源, SLEEP 指令使MCU进入Standby模式。这一模式与掉电模式唯一的不同之处在于振荡器继续工作。其唤醒时间只需要 6 个时钟周期。Table 1 ...
分类:    2015-5-28 00:13
ATmega168 省电模式
当SM2..0 为011 时, SLEEP 指令将使MCU 进入省电模式。这一模式与掉电模式只有一点不同:如果定时器/计数器2及/是使能的,在器件休眠期间它们继续运行。除了掉电模式的唤醒方式,定时器/计数器2 的溢出中断和比较匹 ...
分类:    2015-5-28 00:13
ATmega168 掉电模式
SM2..0为010时,SLEEP指令使MCU进入掉电模式。在此模式下,外部晶体停振,而外部中断、两线串行地址匹配、看门狗如果使能的话继续工作。 只有外部复位、看门狗复位、看门狗中断、BOD复位、两线串行地址匹配、外部电 ...
分类:    2015-5-28 00:13
ATmega168 ADC噪声抑制模式
SM2..0为001时,SLEEP指令使MCU进入噪声抑制模式。在此模式下,CPU停止运行,而 ADC、外部中断、两线串行地址匹配、定时器/计数器 2 和看门狗继续工作 (如果已经使能)这个休眠模式只停止了clkI/O、clkCPU 和clkFLASH ...
分类:    2015-5-28 00:13
ATmega168 空闲模式
SM2..0 为 000 时,SLEEP 指令使 MCU 进入 CPU 停止运行,而SPI、USART、模拟比较器、ADC、两线串行接口、定时器 计数器、看门狗和中断系统 继续工作。这个休眠模式只停止了 clkCPU 和 clkFLASH,其他时钟则继续工作 ...
分类:    2015-5-28 00:12
ATmega168 MCU控制寄存器SMCR
MCU 控制寄存器包含了电源管理的控制位。· Bits 7..4 Res 保留位: ATmega168中的这些位都没有使用到,读返回值始终是 "0”。· Bits 3、2、1-SM2..0 : 休眠模式选择位 2、 1 和 0 。如 Table18 所示,这些位用于选 ...
分类:    2015-5-28 00:12
ATmega168 定时器/计时器振荡器
ATmega168可通过外部 32.768 kHz 表用振荡器或外部时钟源对定时器 计数器2 进行操作 。 定时器/计数器引脚 TOSC1/TOSC2 和 XTAL1/XTAL2 是共用的。这意味着只有当内部 标定RC振荡器作为系统时钟源时定时器计数器振荡 ...
分类:    2015-5-28 00:12
ATmega168 外部时钟
ATmega168可用外部时钟源驱动,如Figure 15所示的进行连接。此时CKSEL熔丝位必须按照Table15编程。选择了这个振荡源之后,启动时间由熔丝位 SUT确定,如 Table16 所示。为了保证MCU 能够稳定工作,不能突然改变外部 ...
分类:    2015-5-28 00:12
ATmega168 标定的片内RC振荡器
校准的ATmega168片内 RC 振荡器提供了固定的 8.0 MHz 的时钟 这是在 3V、25 C 下的标称数值。 器件出厂时CKDIV8熔丝位已经被编程,请参见 P31”系统时钟预分频器” 。按照Table11 对熔丝位 CKSEL 进行编程即可将其作 ...
分类:    2015-5-28 00:12
ATmega168 外部RC振荡器
芯片可用外部时钟源驱动,如Figure15所示。此时CKSEL熔丝位必须按照Table15编程。选择了这个振荡源之后,启动时间由熔丝位 SUT确定,如 Table16 所示。为了保证 MCU 能够稳定工作,不能突然改变外部时钟源的振荡频率 ...
分类:    2015-5-28 00:11
ATmega168 低频晶体振荡器
为了使用32.768 kHz 钟表晶体作为器件的时钟源,必须将熔丝位CKSEL 设置为“1001”以选择低频晶体振荡器。晶体的连接方式如Figure 13 所示。通过对熔丝位CKOPT 的编程,用户可以使能XTAL1 和XTAL2 的内部电容,从而 ...
分类:    2015-5-28 00:11
ATmega168 晶体振荡器
XTAL1 与XTAL2 分别为用作片内振荡器的反向放大器的输入和输出,如Figure 13 所示,这个振荡器可以使用石英晶体,也可以使用陶瓷谐振器。该振荡器为满振幅振荡器, XTAL2 引脚的输出为满幅振荡信号。可用来驱动其它 ...
分类:    2015-5-28 00:11
ATmega168 时钟源
ATmega168芯片有如下几种通过Flash熔丝位进行选择的时钟源。时钟输入到AVR时钟发生器,再分配到相应的模块。不同的时钟选项将在后续部分进行介绍。任何时钟源都需要足够高的Vcc来启动振荡器,并且还要有一个最小振荡 ...
分类:    2015-5-28 00:11
内核剖析
    01Atmega16
    深入剖析Atmega16芯片内核
    02Atmega48
    深入剖析Atmega48芯片内核
    03ATmega8
    深入剖析ATmega8芯片内核
    04ATmega128
    深入剖析ATmega128芯片内核
    05ATmega64
    深入剖析ATmega64芯片内核
    06ATmega32
    深入剖析ATmega32芯片内核
    07ATmega168
    深入剖析ATmega168芯片内核
    08ATtiny13
    深入剖析ATtiny13芯片内核
    09ATmega88
    深入剖析ATmega88芯片内核
    010ATtiny2313
    深入剖析ATtiny2313芯片内核
AVR

微雪官网|产品资料|手机版|小黑屋|微雪课堂. ( 粤ICP备05067009号 )

GMT+8, 2024-4-19 17:28 , Processed in 0.022834 second(s), 9 queries .

返回顶部