深入解析Atmel ATtiny24/44/84 8位AVR微控制器

电子说

1.4w人已加入

描述

深入解析Atmel ATtiny24/44/84 8位AVR微控制器

在电子设计领域,选择一款合适的微控制器对于项目的成功至关重要。Atmel ATtiny24/44/84 8位AVR微控制器凭借其高性能、低功耗等特性,成为众多工程师的首选之一。今天,我们就来深入了解这款微控制器。

文件下载:ATTINY24-15SSZ.pdf

一、特性概览

高性能与低功耗

ATtiny24/44/84采用先进的AVR® 8位微控制器架构,具备120条强大指令,多数指令可在单时钟周期内执行,同时拥有32 x 8通用工作寄存器,支持全静态操作。这种架构使得它在处理任务时高效且节能,能满足不同应用场景对性能和功耗的要求。例如,在一些对功耗敏感的便携式设备中,它能以较低的功耗完成数据处理任务。

非易失性存储器

该微控制器拥有2/4/8K字节的系统内可编程闪存、128/256/512字节的系统内可编程EEPROM以及128/256/512字节的内部SRAM。闪存的写入/擦除周期可达10,000次,EEPROM更是高达100,000次,为数据存储提供了可靠的保障。同时,编程锁可确保闪存程序和EEPROM数据的安全,防止数据被非法篡改。

丰富的外设功能

  • 定时器/计数器:具备两个定时器/计数器,分别为8位和16位,且都带有两个PWM通道,可用于控制电机、灯光等设备的转速和亮度。
  • ADC:拥有10位ADC,包含8个单端通道和12个差分ADC通道对,可编程增益为1x或20x,还支持温度测量功能,可广泛应用于传感器数据采集等领域。
  • 看门狗定时器:可编程的看门狗定时器带有独立的片上振荡器,能在系统出现异常时及时复位,提高系统的稳定性。
  • 模拟比较器:片上模拟比较器可用于比较两个模拟信号的大小,在一些需要精确控制的电路中发挥重要作用。
  • 通用串行接口:方便与其他设备进行数据通信,实现系统的扩展和互联。

特殊功能

  • debugWIRE片上调试系统:便于工程师进行代码调试和故障排查,提高开发效率。
  • 系统内可编程:可通过SPI端口进行系统内编程,无需额外的编程设备,降低了开发成本。
  • 多种中断源:包括外部和内部中断源,以及12个引脚的引脚变化中断,能及时响应外部事件,增强系统的实时性。
  • 低功耗模式:具备低功耗空闲、ADC降噪、待机和掉电等多种模式,可根据不同的工作场景选择合适的模式,进一步降低功耗。
  • 其他特性:如增强型上电复位电路、可编程欠压检测电路、内部校准振荡器和片上温度传感器等,为系统的稳定运行提供了保障。

二、引脚配置与电气特性

引脚配置

ATtiny24/44/84有14引脚SOIC和20引脚QFN/MLF两种封装形式,提供12个可编程I/O线。不同的引脚具有不同的功能,例如VCC为电源引脚,GND为接地引脚,Port B和Port A为双向I/O端口,其中PB3还具备复位功能。

电气特性

  • 工作电压:工作电压范围为2.7 - 5.5V,适用于多种电源环境。
  • 速度等级:在2.7 - 5.5V电压下,工作频率范围为0 - 8MHz;在4.5 - 5.5V电压下,工作频率范围为0 - 16MHz。
  • 功耗:在1MHz、2.7V的活动模式下,功耗仅为800µA;在掉电模式下,2.7V时功耗为2.0µA,展现出了出色的低功耗特性。

三、CPU核心架构

架构概述

AVR采用哈佛架构,拥有独立的程序和数据存储器及总线,指令执行采用单级流水线。在执行一条指令的同时,会从程序存储器中预取下一条指令,实现了每个时钟周期都能执行指令,大大提高了执行效率。

寄存器文件

  • 通用工作寄存器:包含32个8位通用工作寄存器,可在单时钟周期内完成访问,支持单周期算术逻辑单元(ALU)操作。其中,R26 - R31可作为三个16位间接地址寄存器指针,用于数据空间寻址,方便进行高效的地址计算。
  • 状态寄存器:存储最近执行的算术指令的结果信息,可用于改变程序流程,实现条件操作。需要注意的是,进入中断例程时状态寄存器不会自动保存,返回时也不会自动恢复,需通过软件进行处理。

栈指针

栈主要用于存储临时数据、局部变量以及中断和子程序调用后的返回地址。栈指针寄存器始终指向栈顶,栈的增长方向是从高内存地址向低内存地址。在使用时,程序需在执行子程序调用或启用中断之前定义栈空间,并将栈指针设置在0x60以上。

指令执行与中断处理

  • 指令执行:指令执行采用流水线技术,通过哈佛架构和快速访问寄存器文件,实现了每MHz高达1MIPS的处理能力。
  • 中断处理:AVR提供多种中断源,每个中断和复位向量在程序存储器空间都有独立的程序向量。中断优先级由中断向量地址决定,地址越低,优先级越高。中断发生时,全局中断使能I位会被清除,所有中断将被禁用。用户软件可通过设置I位来启用嵌套中断。中断执行响应时间至少为四个时钟周期,返回中断处理例程也需要四个时钟周期。

四、存储器结构

系统内可重编程闪存程序存储器

ATtiny24/44/84包含2/4/8K字节的片上系统内可重编程闪存,用于程序存储。由于AVR指令为16或32位宽,闪存被组织为1024/2048/4096 x 16。闪存的写入/擦除周期至少为10,000次,程序计数器(PC)为10/11/12位宽,可寻址相应的程序存储器位置。

SRAM数据存储器

SRAM数据存储器的低160个数据存储位置分别对应寄存器文件、I/O存储器和内部数据SRAM。数据存储器支持直接、间接带位移、间接、间接预递减和间接后递增五种寻址模式,方便对不同类型的数据进行访问。

EEPROM数据存储器

ATtiny24/44/84包含128/256/512字节的EEPROM数据存储器,可单独进行字节的读写操作。EEPROM的写入/擦除周期至少为100,000次,其访问寄存器可在I/O空间中进行访问。

五、开发资源与注意事项

开发资源

Atmel为ATtiny24/44/84提供了一套完整的程序和系统开发工具,包括C编译器、宏汇编器、程序调试器/模拟器、在线仿真器和评估套件等,方便工程师进行开发和调试。

注意事项

在使用代码示例时,需确保包含特定部件的头文件。不同的C编译器供应商可能在头文件中不包含位定义,且C语言中的中断处理依赖于编译器,因此需参考C编译器文档以获取更多详细信息。对于位于扩展I/O映射中的I/O寄存器,部分指令需替换为支持扩展I/O访问的指令。

总之,Atmel ATtiny24/44/84 8位AVR微控制器以其丰富的功能、低功耗和高性能等特点,在电子设计领域具有广泛的应用前景。工程师们在实际应用中,可根据项目需求充分发挥其优势,实现高效、稳定的系统设计。你在使用这款微控制器的过程中遇到过哪些问题呢?欢迎在评论区分享你的经验和见解。

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

全部0条评论

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

×
20
完善资料,
赚取积分