电子说
在电子工程师的日常设计中,选择一款合适的微控制器至关重要。ATtiny261/461/861作为Atmel推出的低功耗CMOS 8位微控制器,凭借其独特的性能和丰富的功能,在众多应用场景中展现出了强大的竞争力。今天,我们就来深入剖析这款微控制器的各项特性。
文件下载:ATTINY261-20MU.pdf
ATtiny261/461/861采用AVR增强型RISC架构,拥有123条强大指令,多数指令可在单时钟周期内执行,具备32个8位通用工作寄存器,支持全静态操作。这种架构使得微控制器在实现高性能的同时,还能有效降低功耗。例如,在1MHz系统时钟的活跃模式下,1.8V时仅消耗300µA电流;在掉电模式下,1.8V时电流仅为0.1µA。
它配备了2/4/8K字节的系统内可编程闪存(Flash),具有至少10,000次的写入/擦除循环耐力;128/256/512字节的系统内可编程EEPROM,耐力高达100,000次写入/擦除循环;以及128/256/512字节的内部SRAM。数据在85°C下可保留20年,在25°C下可保留100年,同时还具备编程锁,保障闪存程序和EEPROM数据的安全。
它拥有16个可编程I/O线,提供20引脚PDIP、20引脚SOIC和32焊盘MLF等多种封装形式,满足不同应用的需求。
ATtiny261/461/861和ATtiny261V/461V/861V的引脚配置有其特定要求,例如,为确保QFN/MLF封装的机械稳定性,其下方的中心焊盘应焊接到电路板的地线上。
AVR采用哈佛架构,程序和数据拥有独立的存储器和总线,指令执行采用单级流水线。在执行一条指令的同时,从程序存储器预取下一条指令,实现每个时钟周期执行一条指令。程序存储器为系统内可重编程闪存。
快速访问的寄存器文件包含32个8位通用工作寄存器,访问时间为单时钟周期,支持单周期ALU操作。其中6个寄存器可作为3个16位间接地址寄存器指针,用于数据空间寻址,还可作为闪存程序存储器中查找表的地址指针。
高性能AVR ALU与32个通用工作寄存器直接连接,可在单时钟周期内执行通用寄存器之间或寄存器与立即数之间的算术运算。其操作分为算术、逻辑和位功能三大类,部分架构还提供支持有符号/无符号乘法和分数格式的强大乘法器。
状态寄存器包含最近执行的算术指令的结果信息,可用于改变程序流程以执行条件操作。该寄存器在所有ALU操作后更新,能减少对专用比较指令的使用,使代码更快速、紧凑。但需注意,进入中断例程时不会自动存储,从中断返回时也不会自动恢复,需软件处理。
寄存器文件针对AVR增强型RISC指令集进行了优化,支持多种输入/输出方案,多数操作寄存器文件的指令可直接访问所有寄存器,且大多为单周期指令。每个寄存器还被分配了数据存储器地址,可通过X、Y和Z指针寄存器进行灵活访问。
堆栈主要用于存储临时数据、局部变量和中断及子程序调用后的返回地址。堆栈指针寄存器始终指向堆栈顶部,堆栈从高内存地址向低内存地址增长。在使用堆栈时,需在程序中定义数据SRAM中的堆栈空间,并将堆栈指针设置在0x60以上。
AVR CPU由CPU时钟驱动,无内部时钟分频。哈佛架构和快速访问寄存器文件概念实现了并行指令预取和执行,基本流水线概念可实现每MHz高达1 MIPS的性能。
AVR提供多种中断源,每个中断和复位向量在程序存储器空间中都有单独的程序向量。所有中断都有单独的使能位,需与状态寄存器中的全局中断使能位一起设置为逻辑1才能启用中断。中断发生时,全局中断使能I位被清除,所有中断被禁用,可通过软件设置I位启用嵌套中断。中断响应时间至少为四个时钟周期,从中断处理例程返回也需四个时钟周期。
ATtiny261/461/861包含2/4/8K字节的片上系统内可重编程闪存,用于程序存储。由于AVR指令为16或32位宽,闪存组织为1024/2048/4096 x 16。闪存具有至少10,000次的写入/擦除循环耐力,程序计数器可寻址相应的程序存储器位置。
SRAM数据存储器的低地址部分分别寻址寄存器文件、I/O存储器和内部数据SRAM。支持五种不同的寻址模式,包括直接寻址、带位移的间接寻址、间接寻址、带预递减的间接寻址和带后递增的间接寻址,可通过这些模式访问32个通用工作寄存器、64个I/O寄存器和128/256/512字节的内部数据SRAM。
ATtiny261/461/861包含128/256/512字节的EEPROM数据存储器,可单独读写字节,具有至少100,000次的写入/擦除循环耐力。EEPROM访问寄存器可在I/O空间中访问,读写操作时CPU会有相应的暂停时间。为防止意外写入,需遵循特定的写入程序。
综上所述,ATtiny261/461/861微控制器以其高性能、低功耗、丰富的外设功能和灵活的存储器系统,为电子工程师提供了一个强大的设计平台。在实际应用中,我们可以根据具体需求,充分发挥其优势,设计出更加高效、可靠的电子系统。大家在使用这款微控制器的过程中,有没有遇到过什么有趣的问题或者独特的应用场景呢?欢迎在评论区分享交流。
全部0条评论
快来发表一下你的评论吧 !