描述
探索AT91SAM7XC512/256/128:高性能微控制器的全方位解析
在嵌入式系统设计领域,选择一款合适的微控制器往往是项目成功的关键。Atmel的AT91SAM7XC512/256/128系列微控制器凭借其出色的性能和丰富的外设,成为众多工程师的首选。今天,我们就来深入了解一下这款微控制器的各个特性。
文件下载:AT91SAM7XC128-CU.pdf
一、芯片概述
AT91SAM7XC512/256/128是基于32位ARM RISC处理器的高度集成Flash微控制器,有512KB、256KB和128KB三种Flash容量可选,分别对应不同的SRAM容量。它集成了大量外设,包括以太网MAC、CAN控制器、AES加密加速器和三重数据加密系统等。其内置的Flash可以通过JTAG - ICE接口进行系统内编程,还内置了锁定位和安全位来保护固件。
二、芯片特性
(一)处理器和架构
- ARM7TDMI处理器:采用ARMv4T冯·诺依曼架构,最高运行速度可达55MHz,每MHz能提供0.9 MIPS,具备ARM和Thumb两种指令集,采用三级流水线架构。比如在需要快速处理数据的应用中,ARM的32位高性能指令集能发挥强大的计算能力;而对于代码空间要求高的场景,Thumb的16位高代码密度指令集则更具优势。
- 调试和测试功能:集成了嵌入式在线仿真器,有两个观察点单元,可通过JTAG协议访问测试端口,具备调试通信通道。Debug Unit有两引脚UART,能处理调试通信通道中断,还有芯片ID寄存器。所有数字引脚支持IEEE1149.1 JTAG边界扫描,方便我们进行调试和测试。
- 内存控制器:可编程总线仲裁器能处理ARM7TDMI、以太网MAC和外设DMA控制器的请求。地址解码器为内部1MB存储区域和256MB嵌入式外设区域提供选择信号。具备中止状态寄存器,能保存访问中止的相关信息,便于调试;还能检测数据访问的对齐情况,发生未对齐时会产生中止。可将SRAM重新映射到嵌入式非易失性内存的位置,便于处理动态异常向量。嵌入式Flash控制器可设置最多三个可编程等待状态,有预取缓冲区,减少等待状态;具备密钥保护的编程、擦除和锁定序列,可通过单个命令进行操作,禁止操作时会产生中断。
- 外设DMA控制器:负责外设和内存之间的数据传输,有17个通道,分别对应不同的外设。总线仲裁开销低,从内存到外设的传输只需一个主时钟周期,从外设到内存的传输需两个主时钟周期。还具备下一个指针管理功能,降低中断延迟。
(二)内存
该系列芯片的不同型号在Flash和SRAM容量上有所差异。
- AT91SAM7XC512:拥有512KB双平面闪存,有2个连续的1024页(每页256字节)的存储体,在最坏情况下可实现30MHz单周期访问;页面编程时间为6ms(含自动擦除),无自动擦除为3ms,全芯片擦除时间为15ms;具备10,000次写入周期和10年数据保留能力;有32个锁定位,保护32个64页的扇区;还有保护模式确保闪存内容安全。同时,它有128KB的高速SRAM,可实现全速单周期访问。
- AT91SAM7XC256:具备256KB闪存,1024页(每页256字节),同样能在30MHz下实现单周期访问,页面编程和擦除时间与AT91SAM7XC512相同;有16个锁定位,保护16个64页的扇区;64KB的高速SRAM可实现全速单周期访问。
- AT91SAM7XC128:拥有128KB闪存,512页(每页256字节),访问时间和编程擦除时间一致;有8个锁定位,保护8个64页的扇区;32KB的高速SRAM可实现全速单周期访问。
(三)系统控制器
系统控制器管理微控制器的中断、时钟、电源、时间、调试和复位等关键功能。其外设映射在地址空间的最高4KB(0xFFFF F000 - 0xFFFF FFFF)。
- 复位控制器:基于上电复位单元和欠压检测器,能记录最后一次复位的类型,如上电复位、软件复位、用户复位、看门狗复位和欠压复位。可控制内部复位和NRST引脚输出,能对NRST线上的信号进行整形。欠压检测器和上电复位单元能防止电源变化时代码损坏,欠压检测器可通过GPNVM位0进行禁用以节省静态电流。
- 时钟发生器:内置低功耗RC振荡器(范围22kHz - 42kHz)、主振荡器(范围3 - 20MHz)和PLL(输出范围80 - 200MHz),可提供SLCK、MAINCK和PLLCK。
- 电源管理控制器:利用时钟发生器的输出来提供处理器时钟PCK、主时钟MCK、USB时钟UDPCK和所有外设时钟(可独立控制),以及四个可编程时钟输出。主时钟MCK可在几百Hz到设备最大工作频率之间进行编程,处理器时钟PCK在进入处理器空闲模式时会关闭,以降低功耗。
- 高级中断控制器:控制ARM处理器的中断线(nIRQ和nFIQ),中断源可单独屏蔽和向量处理,有8级优先级控制器,能实现中断向量优化和保护模式、快速强制模式等功能。
- 调试单元:包括两引脚UART、调试通信通道接口、芯片ID寄存器和ICE访问预防接口。两引脚UART具备可编程波特率发生器,支持多种模式;调试通信通道可查看ARM处理器的信号;芯片ID寄存器可识别设备的版本、内存大小和外设集。
- 其他定时器:周期间隔定时器有20位可编程计数器和12位间隔计数器;看门狗定时器是12位密钥保护的可编程计数器,可提供复位或中断信号,在处理器处于调试或空闲状态时计数器可停止;实时定时器是带有警报的32位自由运行计数器,有可编程的16位预分频器。
- PIO控制器:有两个PIO控制器,每个控制31个I/O线,可通过设置/清除寄存器进行完全编程。I/O线可进行两种外设功能的复用,具备输入变化中断、半时钟周期毛刺滤波、开漏驱动、可编程上拉电阻和同步输出等功能。
- 电压调节器控制器:用于选择电压调节器的工作模式,包括正常模式(位0清零)和待机模式(位0置位)。
(四)外设
该系列芯片集成了丰富的外设,以满足不同的应用需求。
- 以太网MAC:支持IEEE 802.3标准,可实现10和100Mbit/s的全双工和半双工操作,具备统计计数器寄存器、MII/RMII接口、中断生成、自动填充和CRC生成、帧错误处理、地址检查、混杂模式、哈希匹配、VLAN标签支持、多缓冲区和巨帧支持等功能。
- 串行外设接口(SPI):支持与外部串行设备通信,有四个片选信号,可与多达15个外设通信,支持主从模式,数据长度、相位、极性、传输延迟等均可编程。
- 两线接口(TWI):仅支持主模式,与I2C兼容设备兼容,有内部地址寄存器,支持7位或10位从地址,可进行顺序读写操作。
- 通用同步/异步收发器(USART):具备可编程波特率发生器,支持5 - 9位的全双工同步或异步串行通信,有多种停止位、奇偶校验、错误检测、硬件握手、调制解调器信号管理、IrDA调制解调等功能,还支持RS485、ISO7816协议和多种测试模式。
- 串行同步控制器(SSC):用于音频和电信应用的串行同步通信,有独立的接收器和发射器以及公共时钟分频器,可配置帧同步和数据长度,接收器和发射器可根据不同事件自动启动。
- 定时器计数器(TC):有三个16位定时器计数器通道,每个通道可进行两个输出比较或一个输入捕获,具备频率测量、事件计数、间隔测量、脉冲生成、延迟定时、脉宽调制等功能,有多种内部和外部时钟输入,还有两个多功能输入/输出信号和两个全局寄存器。
- 脉宽调制控制器(PWMC):有四个通道,每个通道有一个16位计数器,有共同的时钟发生器,可提供十三种不同的时钟,每个通道可独立编程,包括使能/禁用、时钟选择、周期和占空比设置、输出波形极性和对齐方式等。
- USB设备端口:符合USB V2.0全速标准(12Mbit/s),内置USB V2.0全速收发器和1352字节的双端口RAM用于端点,有六个端点,支持挂起/恢复逻辑。
- CAN控制器:完全符合CAN 2.0A和2.0B标准,位速率可达1Mbit/s,有八个面向对象的邮箱,可进行接收和发送操作,具备本地标签和掩码过滤、16位时间戳、优先级管理、自动波特率和监听模式、低功耗和可编程唤醒等功能。
- 128位高级加密标准(AES):符合FIPS Publication 197标准,不同型号支持不同长度的加密密钥,支持五种标准操作模式,具备硬件对抗差分功耗分析攻击的措施,可连接PDC通道优化数据传输。
- 三重数据加密标准(TDES):支持单数据加密标准(DES)和三重数据加密算法(TDEA或TDES),符合FIPS Publication 46 - 3标准,支持四种标准操作模式,可连接PDC通道优化数据传输。
- 模数转换器(ADC):有8个通道,10位分辨率,采样率为384K samples/sec,具备±2 LSB积分非线性和±1 LSB差分非线性,有集成的8 - 1多路复用器,可提供八个独立的3.3V模拟输入,有外部电压参考,可单独启用和禁用每个通道,有多种触发源,支持睡眠模式和转换序列器,四个模拟输入与数字信号共享。
三、电源和引脚考虑
(一)电源
芯片有六种电源引脚类型,集成了电压调节器。VDDIN为电压调节器和ADC供电,范围3.0V - 3.6V;VDDOUT是1.8V电压调节器的输出;VDDIO为I/O线供电,范围3.0V - 3.6V;VDDFLASH为USB收发器和部分Flash供电,范围3.0V - 3.6V;VDDCORE为设备逻辑供电,范围1.65V - 1.95V;VDDPLL为振荡器和PLL供电,可直接连接VDDOUT。不同电源没有单独的接地引脚,GND应尽可能短地连接到系统接地平面。芯片静态电流小,VDDCORE在25°C且欠压检测器禁用时小于60µA,启用欠压检测器会增加28µA。电压调节器有正常模式和低功耗模式,输出和输入都需要适当的去耦电容。
(二)引脚
不同引脚有不同的功能和特点。JTAG端口引脚中,TMS、TDI和TCK是施密特触发输入,不支持5V耐压,且没有上拉电阻;TDO是输出,最高驱动到VDDIO,也没有上拉电阻;JTAGSEL引脚用于选择JTAG边界扫描,有15kΩ的下拉电阻。TST引脚用于制造测试或快速编程模式,有15kΩ的下拉电阻,使用时需注意避免误触发。NRST引脚是双向的,有开漏输出缓冲器,由片上复位控制器处理,有上拉电阻。ERASE引脚用于重新初始化Flash内容和部分NVM位,有15kΩ的下拉电阻,可防止误擦除,且经过RC振荡器去抖。PIO控制器的I/O线都是5V耐压的,集成了可编程上拉电阻,但需要注意当驱动电压超过VDDIO且上拉电阻启用时会产生电流路径。部分PIO线(PA0 - PA3)可提供高达16mA的驱动电流,其余I/O线只能提供8mA,所有I/O线的总电流不能超过200mA。
四、封装和订购信息
该系列芯片提供100引脚LQFP绿色封装和100球TFBGA符合RoHS标准的封装。不同型号有相应的订购代码,工作温度范围为工业级(-40°C - 85°C)。
通过对AT91SAM7XC512/256/128的全面了解,我们可以看到它在性能、功能和易用性方面都有着出色的表现。无论是工业控制、通信设备还是消费电子等领域,这款微控制器都能提供一个灵活、经济高效的解决方案。在实际应用中,我们需要根据具体的需求来选择合适的型号和配置,合理设计电源和引脚布局,以充分发挥其优势。在使用过程中,你是否也遇到过一些与该芯片相关的挑战呢?欢迎在评论区分享你的经验和见解。
打开APP阅读更多精彩内容