深度解析Atmel SAM7S系列ARM微控制器:从特性到应用

电子说

1.4w人已加入

描述

深度解析Atmel SAM7S系列ARM微控制器:从特性到应用

在嵌入式系统设计领域,微控制器是核心组成部分,而Atmel的SAM7S系列ARM微控制器凭借其高性能、低功耗和丰富的外设集成,在众多应用场景中展现出卓越的优势。本文将深入剖析SAM7S系列微控制器的特性、架构、内存管理、系统控制以及外设功能,为电子工程师在设计过程中提供全面的参考。

文件下载:AT91SAM7S64-MU.pdf

1. 概述

Atmel的SAM7S系列是基于32位ARM RISC处理器的低引脚数闪存微控制器。它集成了高速闪存和SRAM,以及丰富的外设,如USB 2.0设备(除SAM7S32和SAM7S16外),并具备完整的系统功能,可减少外部组件的使用。该系列非常适合8位微控制器用户向更高性能和更大内存的迁移。

2. 处理器与架构

2.1 ARM7TDMI处理器

SAM7S系列采用基于ARMv4T冯·诺依曼架构的RISC处理器,最高运行频率可达55 MHz,每MHz可提供0.9 MIPS的性能。它支持两种指令集:32位的ARM高性能指令集和16位的Thumb高代码密度指令集,采用三级流水线架构(指令获取、指令解码、执行),提高了指令执行效率。

2.2 调试与测试特性

  • 嵌入式ICE:集成了EmbeddedICE(嵌入式在线仿真器),方便进行调试和测试。
  • JTAG接口:通过JTAG协议可访问测试访问端口,支持调试通信通道和调试单元,提供两引脚UART和调试通信通道中断处理功能。
  • 芯片ID寄存器:每个芯片都有唯一的ID寄存器,方便识别设备版本、嵌入式内存大小和外设集。

2.3 内存控制器

内存控制器负责管理ARM7TDMI和外设DMA控制器的请求,包括总线仲裁、地址解码、异常状态记录、对齐检测和重映射等功能。嵌入式闪存控制器支持最多三个可编程等待状态,预取缓冲区可优化16位请求,减少等待状态。

2.4 外设DMA控制器

外设DMA控制器负责处理外设和内存之间的数据传输,不同型号的SAM7S系列芯片具有不同数量的通道(SAM7S512/256/128/64/321/161为11个通道,SAM7S32/16为9个通道),可提高数据传输效率,降低总线仲裁开销。

3. 内存管理

3.1 闪存

SAM7S系列的不同型号具有不同容量的闪存,如SAM7S512为512 Kbytes(双平面),SAM7S256为256 Kbytes(单平面)等。闪存具有快速访问时间,在最坏情况下可实现30 MHz单周期访问,页面编程时间包括自动擦除为6 ms,全芯片擦除时间为15 ms,具有10,000次写入周期和10年数据保留能力。部分型号还支持锁定位和安全位,保护闪存内容。

3.2 SRAM

不同型号的SRAM容量也有所不同,如SAM7S512/256为64 Kbytes,SAM7S128为32 Kbytes等。SRAM可在全速下实现单周期访问,提高数据处理速度。

3.3 内存映射

内部SRAM、ROM和闪存具有特定的内存映射地址,复位后SRAM初始地址为0x0020 0000,重映射后也可在地址0x0访问。闪存始终映射到地址0x0010 0000,复位后和重映射命令前也可在地址0x0访问。

4. 系统控制器

系统控制器负责管理微控制器的所有关键模块,包括中断、时钟、电源、时间、调试和复位等。其外设映射在地址空间的最高4 Kbytes(0xFFFF F000 - 0xFFFF FFFF)。

4.1 复位控制器

基于上电复位单元和欠压检测器,可提供复位状态信息,控制内部复位和NRST引脚输出,确保系统在各种情况下的稳定运行。

4.2 时钟发生器

集成了低功耗RC振荡器、主振荡器和PLL,可提供SLCK、MAINCK和PLLCK时钟信号,满足不同外设的时钟需求。

4.3 电源管理控制器

利用时钟发生器的输出提供处理器时钟PCK、主时钟MCK、USB时钟UDPCK(SAM7S32/16除外)和所有外设时钟,可独立控制每个时钟,支持多种功率模式,降低功耗。

4.4 高级中断控制器

可控制ARM处理器的中断线,支持独立屏蔽和向量中断源,具有8级优先级控制,优化中断服务程序的分支和执行。

4.5 调试单元

包括两引脚UART、调试通信通道支持、芯片ID寄存器和ICE访问预防接口,方便进行调试和设备识别。

4.6 其他定时器

  • 周期间隔定时器(PIT):20位可编程计数器加12位间隔计数器。
  • 看门狗定时器(WDT):12位密钥保护的可编程计数器,可提供复位或中断信号。
  • 实时定时器(RTT):32位自由运行计数器带闹钟功能。

4.7 PIO控制器

控制32个I/O线(SAM7S32/16为21个),可通过设置/清除寄存器进行完全编程,支持输入变化中断、半时钟周期毛刺滤波、开漏驱动和可编程上拉电阻等功能。

4.8 电压调节器控制器

可选择电压调节器的功率模式(正常模式或待机模式),优化功耗。

5. 外设功能

5.1 串行外设接口(SPI)

支持与外部串行设备通信,具有四个芯片选择,可与多达15个外设通信,支持8 - 16位可编程数据长度、可编程相位和极性等。

5.2 两线接口(TWI)

部分型号支持主模式、多主模式和从模式,兼容I2C设备,方便与串行存储器和其他I2C设备通信。

5.3 USART

支持可编程波特率发生器,可进行5 - 9位全双工同步或异步串行通信,具有多种通信模式和错误检测功能,还支持RS485、ISO7816协议和IrDA调制解调等。

5.4 串行同步控制器(SSC)

提供用于音频和电信应用的串行同步通信链路,具有独立的接收器和发射器,可配置帧同步和数据长度。

5.5 定时器计数器(TC)

具有三个16位定时器计数器通道,可实现频率测量、事件计数、脉冲生成等多种功能,每个通道有多个时钟输入和多功能I/O信号。

5.6 PWM控制器

具有四个通道,每个通道有一个16位计数器,可独立编程,支持多种时钟选择、周期和占空比设置,可生成中心或左对齐的输出波形。

5.7 USB设备端口(SAM7S32/16除外)

支持USB V2.0全速(12 Mbits/s),集成USB V2.0全速收发器和328字节双端口RAM,有四个端点,支持暂停/恢复逻辑。

5.8 模数转换器(ADC)

8通道ADC,支持10位384 Ksamples/sec或8位583 Ksamples/sec的逐次逼近寄存器ADC,具有±2 LSB积分非线性和±1 LSB差分非线性,可提供外部电压参考,支持多种触发源和睡眠模式。

6. 封装与订购信息

SAM7S系列提供多种封装形式,如64引脚LQFP或64焊盘QFN(SAM7S512/256/128/64/321/161)和48引脚LQFP或48焊盘QFN(SAM7S32/16)。订购信息包括不同型号的订购代码、封装类型和温度工作范围等。

7. 总结

Atmel的SAM7S系列ARM微控制器以其高性能、低功耗和丰富的外设集成,为电子工程师提供了一个强大的设计平台。在实际应用中,工程师可以根据具体需求选择合适的型号,充分发挥其优势,实现各种复杂的嵌入式系统设计。同时,该系列微控制器的广泛应用也为消费电子、工业控制、通信等领域带来了更多的可能性。

电子工程师在设计过程中,需要深入理解SAM7S系列微控制器的特性和功能,结合实际应用场景进行合理的选型和配置,以确保系统的稳定性和性能。你在使用SAM7S系列微控制器时遇到过哪些挑战呢?欢迎在评论区分享你的经验和见解。

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

全部0条评论

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

×
20
完善资料,
赚取积分