Atmel ATtiny25/45/85汽车级8位AVR微控制器深度解析

电子说

1.4w人已加入

描述

Atmel ATtiny25/45/85汽车级8位AVR微控制器深度解析

在当今复杂的电子系统设计领域,选择性能卓越且稳定可靠的微控制器至关重要。Atmel的ATtiny25/45/85汽车级8位AVR微控制器凭借其高性能、低功耗以及丰富的外设功能,成为众多汽车电子应用的理想选择。下面我们就来深入了解这款微控制器的特点和应用要点。

文件下载:ATTINY85-15MT1.pdf

一、器件概述

ATtiny25/45/85基于AVR增强型RISC架构,是低功耗CMOS 8位微控制器。它能够在单时钟周期内执行强大指令,实现接近每兆赫兹1MIPS的吞吐量,让系统设计师在功耗与处理速度之间实现优化平衡。该系列微控制器提供2/4/8K字节的系统内可编程闪存、128/256/512字节EEPROM和128/256/512字节SRAM。工作电压范围为2.7 - 5.5V,速度等级在2.7 - 5.5V下可达0 - 8MHz,4.5 - 5.5V下可达 0 – 16MHz,并且能在-40°C至+125°C的汽车级温度范围内稳定工作。

二、AVR CPU核心架构

1. 哈佛架构优势

AVR采用哈佛架构,为程序和数据使用独立的存储器和总线。在指令执行方面,采用单级流水线技术,在执行一条指令的同时,从程序存储器预取下一条指令,使得每时钟周期都能执行指令,大大提高了执行效率。同时,程序存储器采用系统内可重编程闪存,方便开发和更新。

2. 快速访问寄存器文件

寄存器文件包含32个8位通用工作寄存器,可在单时钟周期内访问。这使得单周期算术逻辑单元(ALU)操作成为可能,在典型的ALU操作中,两个操作数从寄存器文件输出,执行操作并将结果存储回寄存器文件仅需一个时钟周期。此外,32个寄存器中的6个可作为三个16位间接地址寄存器指针,用于数据空间寻址,提高了地址计算的效率。其中,16位的X、Y和Z寄存器还可作为闪存程序存储器中查找表的地址指针。

3. 状态寄存器

状态寄存器(SREG)包含最近执行的算术指令的结果信息,可用于改变程序流程以执行条件操作。例如,全局中断使能位(I)控制中断是否启用,若该位清零,无论各个中断使能设置如何,所有中断都将禁用。在中断和子程序调用时,返回地址程序计数器(PC)会存储在堆栈中,堆栈有效分配在通用数据SRAM中,其大小仅受总SRAM大小和使用情况的限制。

三、存储架构

1. 闪存程序存储器

ATtiny25/45/85配备2/4/8K字节的系统内可重编程闪存用于程序存储。由于AVR指令为16或32位宽,闪存组织为1024/2048/4096 × 16。闪存具有至少10,000次的写入/擦除周期耐力,程序计数器(PC)为10/11/12位宽,可寻址相应的程序存储器位置。

2. SRAM数据存储器

SRAM数据存储器的组织方式为:较低的224/352/607个数据存储器位置用于寻址寄存器文件、I/O存储器和内部数据SRAM。其中,前32个位置用于寄存器文件,接下来的64个位置用于标准I/O存储器,最后的128/256/512个位置用于内部数据SRAM。数据存储器支持直接、带位移的间接、间接、带预减量的间接和带后增量的间接这五种不同的寻址模式,方便灵活地访问数据。

3. EEPROM数据存储器

EEPROM数据存储器为128/256/512字节,作为独立的数据空间组织,可进行单字节的读写操作。它具有至少100,000次的写入/擦除周期耐力。在访问EEPROM时,需要通过特定的控制寄存器进行操作,如EEPROM地址寄存器、数据寄存器和控制寄存器。读写操作时,CPU会有相应的时钟周期延迟,并且在写入操作时需要遵循特定的程序以防止意外写入。

四、时钟系统

1. 多样化的时钟源选项

该微控制器提供多种时钟源选项,可通过闪存熔丝位进行选择,包括外部时钟、PLL时钟、校准内部RC振荡器、看门狗振荡器、外部低频晶体、外部晶体/陶瓷谐振器等。在不同的应用场景中,可以根据需求选择合适的时钟源,以满足系统对时钟频率和稳定性的要求。

2. 系统时钟预分频器

系统时钟可以通过设置时钟预分频寄存器(CLKPR)进行分频,这一特性在处理能力要求较低时可降低功耗。预分频器适用于所有时钟源选项,并会影响CPU和所有同步外设的时钟频率。在更改预分频设置时,需要遵循特殊的写入程序,并且为了确保操作不被中断,需要禁用中断。

五、电源管理与睡眠模式

1. 丰富的睡眠模式

提供空闲模式、ADC降噪模式和掉电模式三种睡眠模式。在空闲模式下,CPU停止运行,但模拟比较器、ADC、定时器/计数器、看门狗和中断系统继续工作;ADC降噪模式可改善ADC的噪声环境,提高测量分辨率;掉电模式则停止振荡器,仅允许外部中断和看门狗继续工作(如果启用)。

2. 电源降低寄存器

电源降低寄存器(PRR)可停止各个外设的时钟,以降低功耗。在空闲模式和活动模式下,通过关闭不需要的外设模块,可以显著降低整体功耗。

六、外设功能

1. 定时器/计数器

具有8位定时器/计数器0和1,其中定时器/计数器0具有两个独立的输出比较单元和PWM支持,可实现精确的程序执行定时和波形生成。定时器/计数器1支持同步和异步时钟模式,可提供高达64MHz(或低功耗模式下32MHz)的时钟速度,适用于高速PWM应用。

2. 通用串行接口(USI)

USI提供两线和三线同步数据传输功能,支持主从模式,具有较高的数据传输速率,并且使用较少的代码空间。同时,还具备数据接收中断和从空闲模式唤醒的功能,在两线模式下还能从所有睡眠模式(包括掉电模式)唤醒。

3. 模拟比较器和ADC

模拟比较器可比较正引脚AIN0和负引脚AIN1的输入值,并可触发独立的中断。ADC具有10位分辨率,可进行单端和差分输入转换,支持多种电压参考选项和转换模式,还具备噪声消除器功能,可在睡眠模式下进行转换以减少噪声干扰。

七、调试与编程

1. debugWIRE片上调试系统

debugWIRE片上调试系统使用一线双向接口,可控制程序流程、执行AVR指令以及对不同的非易失性存储器进行编程。通过该系统,可实现完整的程序流控制、实时操作、符号调试支持等功能,但在使用时需要注意一些限制,如调试时外部复位源不可用,DWEN熔丝启用会增加睡眠模式下的功耗等。

2. 自编程功能

该微控制器提供自编程机制,可通过MCU本身下载和上传程序代码。闪存的更新以页为单位进行,在编程前需要先擦除页面,然后将临时页面缓冲区内的数据写入闪存。

八、总结与应用建议

ATtiny25/45/85汽车级8位AVR微控制器以其高性能、低功耗、丰富的外设功能和可靠的稳定性,在汽车电子、工业控制、消费电子等领域都有着广泛的应用前景。在实际设计中,设计师需要根据具体的应用场景,合理选择时钟源、电源管理模式和外设功能,以充分发挥该微控制器的优势。同时,在调试和编程过程中,需要注意遵循相关的操作规范和注意事项,确保系统的稳定性和可靠性。

你是否在项目中使用过类似的微控制器呢?在使用过程中遇到过哪些挑战?欢迎在评论区分享你的经验和见解。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分