
引用单词
AT91FR40162是美国Atmel公司生产的AT91系列微控制器中的一员。它有一个ARM7TDMI内核、一个大容量闪存、一个片内SRAM和外设。这款微控制器的特点是高性能-32位RISC架构,高密度-16位指令集,低功耗和实时性,扩展的闪存也增加了开发者的灵活性。此外,大量的内部分组寄存器加快了异常处理的过程,这使得它更适合于实时控制应用。基于八级向量的优先级中断控制器和外设数据控制器PDC大大增强了实时设备的性能。该器件适用于开发工业自动化系统、MP3、销售终端、GPS接收机、无线网络产品等对功耗敏感、要求实时性的产品。AT91FR40162微控制器的特点是在121球BGA封装中集成了256 KB片内SRAM和16 Mbit Flash存储器。它为许多计算密集型嵌入式控制应用提供了强大、灵活和高性价比的解决方案,还可以帮助用户减小PCB尺寸和系统成本。闪存可以通过JTAG/ICE接口或制造商编写的Flash Uploader软件进行编程,从而使AT91FR40162适合系统可编程应用。
1功能框图和产品特性
AT91FR40162的功能框图如图1所示。
AT91FR40162的主要特性包括:ARM7TDMI处理器内核、256 KB片内SRAM和1024k字16位闪存、完全可编程的外部总线接口EBI、具有8个优先级和独立屏蔽的矢量中断控制器、32个可编程I/O端口线、3个16位定时器/计数器通道和2个通用同步/异步收发器USART、可编程看门狗定时器、高级省电特性、完全静态操作、2.7”3.6V的I/O工作范围和1.60V的内核工作范围#215;10mm &;#215;1.2 mm BGA封装(球径0.8 mm)。
2架构
AT91FR40162是由Atmel公司的AT91R40008 ARM/Thumb微控制器和AT49BV1604A/1614A 16Mbit闪存集成的121引脚BGA封装器件。除了闪存使能信号之外,所有地址、数据和控制信号都在内部互连。
AT91R40008的架构包括两条主要总线:高级系统总线ASB和高级外设总线APB。ASB旨在获得最佳性能,并由存储控制器控制。ARM7TDMI通过ASB与片内32位存储器、外部总线接口EBI和AMBA桥接口。AMBA桥驱动APB,该APB用于访问片内外设,并针对低功耗进行了优化。
AT91FR40162将ARM7TDMI处理器的ICE端口连接到一些特殊的引脚上,从而为目标调试提供了一个完整的、低成本的、易于使用的调试解决方案。
2.1内存
AT91FR40162内置256 KB。这个内部存储器被访问一次,并且它直接连接到32位数据总线。这样,通过使用微控制器的ARM指令集,可以在66 MHz下提供60 MIPS的最高性能,并降低系统功耗。AT91FR40162的特点是有一个外部总线接口EBI,用来连接外部存储器和特殊的外围设备。EBI支持8位或16位设备,可以用2个8位设备模拟1个16位设备。EBI实现了早期读取协议,与标准内存接口相比,它可以提供更快的内存访问速度。AT91FR40162嵌入了一个由1024K 16位字组成的Flash存储器,可以通过EBI访问。闪存的主要功能是作为程序存储器。16位Thumb指令可以在一个访问周期内从闪存中加载。独立的MCU和Flash复位输入(NRST和NRSTF)可实现最大的系统灵活性,方便用户根据应用自由选择复位操作。AT91FR40162集成了一个名为AT91 Flash Uploader的常驻引导软件。AT91闪存上传软件可以将应用软件加载到闪存中。
2.2外圆周
AT91FR40162集成了多种外设,分为系统外设和用户外设两大类。所有片内外设都可以通过AMBA桥接收32位访问。外设寄存器由控制寄存器、模式寄存器、数据寄存器、状态寄存器和启用/禁用/状态寄存器组成。外设数据控制器PDC在片内USART和片内或片外存储器之间传输数据,无需处理器干预。最重要的一点是,PDC消除了数据传输中断的额外开销,使得高达64 KB的数据可以连续传输,而无需重新编程起始地址。这不仅提高了微控制器的性能,还降低了功耗。
(1)系统外围
外部总线接口(EBI)通过8位或16位数据总线控制外部存储器或外部设备,数据总线通过APB编程。每条片选端口线都有自己的编程寄存器。省电模块(PS)实现空闲模式(ARM7TDMI内核的时钟停止,直到下一次中断),并允许用户根据应用要求调整微控制器的功耗(由独立的外设时钟控制)。高级中断控制器AIC从内部外围和四个外部中断端口线(包括FIQ)控制中断源,从而为ARM7TDMI提供中断或/和外部中断请求。它通过集成一个8优先级中断控制器和使用自动矢量功能来减少中断延迟时间。并行输入/输出控制器PIO控制多达32个I/O端口。它允许用户选择特定引脚作为片内外设的输入/输出,或者作为通用输入/输出信号。PIO控制器可以被编程为检测每条线路上信号变化引起的中断。看门狗定时器WD用于在软件进入死锁陷阱时防止系统锁定。特殊功能SF模块集成了芯片ID、复位状态和保护寄存器。
(2)用户周边
两个独立配置的USART可以以高波特率同步或异步通信。每个USART还包含一个超时寄存器和一个时间保护寄存器,因此便于使用两个专用外设数据控制器PDC通道。
3通道16位定时器/计数器TC高度可编程,支持捕捉或波形模式。每个TC通道都可以通过编程来测量或产生不同类型的波形,并且可以检测和控制两个输入/输出信号。TC有三个外部时钟信号。
3 AT91FR40162的性能概述
AT91FR40162主要由AT91R40008和16 Mbit闪存组成。所以AT91FR40162的很多性能和AT91R40008是一样的。
(1)电源
AT91R40008微控制器有两种类型的电源引脚: VDDCORE引脚,为内核(包括ARM7TDMI、嵌入式存储器和外设)提供电源;Vddio引脚,为I/O线供电。独立的I/O电源允许灵活调整,以适应外部元件的信号电平。
(2)输入/输出
AT91FR40162的I/O引脚接受的电平受VDDIO电源的限制。复位后,微控制器的外设I/O被初始化为输入,为用户提供最大的灵活性。在每个应用阶段,微控制器的输入应保持在有效的逻辑电平,以降低功耗。
(3)主时钟
如果MCKI引脚由外部源提供,则AT91FR40162是完全静态设计,在主时钟(MCK)下工作。
主时钟也用作引脚MCKO上的器件输出,它与通用I/O线路多路复用。当NRST有效且发生复位时,MCKO有效并输出MCK信号的图像。PIO控制器必须编程为将此引脚用作标准I/O线。
(4)复位
复位操作会将用户接口寄存器恢复到默认状态(在每个外设用户接口中定义),并强制ARM7TDMI从地址0获取下一条指令。除程序计数器外,其他ARM7TDMI寄存器未定义复位状态。
(5)NRST别针
NRST是低电平有效的输入引脚。它被异步激活,但从reset退出与MCK内部同步。出现在MCKI上的信号必须在NRST上升沿之前至少10个时钟周期有效,以确保正确操作。第一次提取操作发生在NRST上升沿之后的80个时钟周期。
(6)看门狗定时器复位
看门狗定时器可以设置为产生内部复位。这种情况下的复位操作与激活NRST引脚具有相同的效果,但引脚BMS和NTRI不会被采样。引导模式和三态模式不更新。如果NRST引脚被激活且看门狗定时器触发内部复位,则NRST引脚具有优先权。
(7)模拟功能
三态模式
AT91FR40162微控制器提供三态模式用于调试。它使模拟探针能够连接到目标板,而无需首先从目标板焊接器件。在三态模式下,AT91R40008微控制器的所有输出引脚驱动器均被禁用。在三态模式下,通过外部引脚可以直接访问Flash。这使得在组装电路板之前,可以使用传统的Flash编程器对Flash进行编程。为了进入三态模式,在NRST上升沿之前的最后10个时钟周期,NTRI引脚必须保持低电平。正常工作时,NTRI引脚必须通过一个高达400k的电阻复位到高电平。NTRI与I/O线P21和USART1串行数据传输线TXD1多路复用。
JTAG/ICE调试
JTAG/冰港
支持ARM标准的嵌入式在线仿真。管脚TDI、TDO、TCK和TMS专门用于该调试功能,并且可以通过外部ICE接口连接到主机。在ICE调试模式下,ARM7TDMI内核使用非JTAG芯片ID进行响应,以识别微控制器。这并不完全符合IEEE1149.1标准。(8)存储控制器ARM7TDMI处理器的地址空间为4 GB。存储器控制器对内部32位地址总线进行解码,并定义三个地址空间:
内存空间位于最低的4mb;
中间地址空间是为EBI控制的外部设备(存储器或外设)预留的;
位于高达4 MB的内部外围空间。无论哪个地址空间,ARM7TDMI都只运行在小端模式。
内存储器
AT91FR40162微控制器集成了内部SRAM。所有内部存储器都是32位宽,支持字节(8位)、半字(16位)和字(32位)访问,并且这些访问都是单周期的。内部SRAM支持Thumb和ARM指令提取方法,内部存储器可以存储两倍于ARM指令的Thumb指令。微控制器AT91FR40162集成了一个256 KB的SRAM库。该存储体映射到地址0x0(在重新映射命令之后),并且0x0和0x20之间的ARM7TDMI异常向量允许由软件修改。将SRAM放在芯片上,使用32位数据总线带宽,提高了微控制器的性能,降低了系统功耗。与16位总线相比,32位总线的带宽增加,从而提高了使用ARM指令集和数据处理的效率,是对ARM7TDMI先进性能的最好利用。AT91FR40162的另一个特性是能够动态更新256 KB SRAM中的应用软件。
引导模式选择
ARM复位向量位于地址0x0。释放NRST端口线后,ARM7TDMI执行存储在该地址的指令。这意味着该地址必须在复位后映射到非易失性存储器。在NRST上升沿之前的10个时钟周期内,BMS引脚上的输入用于选择启动存储器的类型,如表1所示。如果嵌入式闪存用作引导存储器,则必须从外部拉低BMS输入,并且NCS0必须从外部与NCS7相连。表1引导模式选择BMS引导存储器1 NCS0外部8位存储器0 NCS0上的外部16位寄存器
引脚BMS与I/O线路P24复用。复位后,P24可以像任何标准PIO线编程。
闪存
16 Mbit闪存由1 048 576个16位字组成。闪存通过EBI用16位字寻址。它使用地址线a1”a20。
除了闪存使能信号之外,所有地址、数据和控制信号都在内部互连。用户应将闪存使能信号(NCSF)与EBI上的低电平有效片选信号相连。如果使用闪存作为引导存储器,必须使用NCS0同时,BMS必须从外部拉低,以便处理器可以在复位后执行正确的16位读取操作。
引导时,EBI必须配置正确数量的标准等待状态。例如,当微控制器以66 Hz运行时,需要五种标准等待状态。
用户必须确保所有VDDIO、VDDCORE和所有GND引脚通过最短路径连接到各自的电源。闪存在读取模式下通电。命令序列用于将设备置于其他操作模式,例如编程和擦除。提供独立的Flash存储器复位输入引脚(NRSTF)以提高灵活性,使复位操作适应特定应用。当该输入处于逻辑高电平时,存储器处于其标准操作模式;当该输入处于逻辑低电平时,当前存储器操作暂停,其输出处于高阻态。
闪存的一个特点是它使用数据查询来检测编程周期的结束。在编程周期中,试图读取最后写入的字的操作会返回I/O7上写入数据的补码值。开漏NBUSY输出引脚提供了另一种检测编程周期或擦除周期是否结束的方法。当处于编程或擦除周期时,该引脚被拉低,并且在该周期之后,该引脚返回到高电平。使用1个翻转位提供了检测编程或擦除周期是否结束的第三种方法。闪存分为两个平面。当从一个存储区域执行读取操作时,可以在另一个存储区域同时执行编程或擦除功能。此特征使得系统在执行读取操作之前不必等待编程或擦除循环的完成,因此增强了系统的性能。
为了便于擦除操作,闪速存储器被分成39个扇区。为了进一步提高器件的灵活性,还提供了擦除挂起功能。此功能使擦除周期无限期暂停,并允许用户从同一存储区域中的任何其他扇区读取数据或向其写入数据。如果读取的数据在另一个存储区域中,则不需要暂停擦除周期。
这个设备有能力保护存储在任何扇区的数据不被破坏。一旦一个扇区的数据保护被使能,当输入电平在地和VDDIO之间时,该扇区的数据不能被改变。可选的VPP引脚用于增加编程/擦除时间。
在6字节命令序列中输入的单脉冲编程模式允许使用写控制线路上的单个脉冲直接写入器件。退出单脉冲编程模式,方法是关断器件或将NRSTF引脚保持低电平至少50 ns,然后将其恢复为VDDIO。以下硬件功能可防止闪存被意外编程:
VDDIO敏感-如果VDDIO低于1.8 V(典型情况),禁止编程功能;
VDDIO上电延时——一旦VDDior达到VDDior的敏感水平,器件会自动超时10 ms后再编程(典型情况);
编程禁止——保持OE低,CE高或者WE高会禁止编程循环;
噪声过滤——WE或CE输入端出现的小于15 ns(典型值)的脉冲不会启动编程周期。
4 AT91闪存上传软件
所有基于闪存的AT91设备都配备了一个名为AT91 Flash Uploader的预编程软件,该软件位于嵌入式闪存的第一个扇区。Flash Uploader允许通过串行端口编程嵌入式Flash。Flash Uploader可以使用任何片上USART。Flash Uploader的运行环境如图2所示。
(1)闪存上传操作
Flash Uploader软件需要使用嵌入式闪存作为引导内存,还需要为MCKI提供有效的时钟。复位后,Flash Uploader立即将软件本身复制到内部SRAM并跳转到那里。后续操作将只需要这个内存资源。所执行的外部访问只是对嵌入式闪存进行编程。
启动后,处理器初始化两个USART的RXD引脚的PIO输入变化中断。当中断发生时,启动一个定时器/计数器通道;当在RXD线上检测到下一个输入变化时,定时器/计数器通道停止。这解释了如何测量第一个字符的长度,以及如何通过计算实际通信过程中器件主时钟和波特率之间的比率来初始化USART。然后,编程系统可以根据编程闪存设备指定的协议发送命令和数据。为了最小化闪存上传器被擦除和电源关闭的风险,闪存的第一个扇区被擦除并由编程系统编程。当从第一个扇区擦除Flash Uploader时,如果新的最终应用程序没有被编程并且目标系统的电源被关闭,将导致不可恢复的错误,并且AT91FR40162不能再通过使用Flash Uploader被重新编程。
(2)编程系统
Atmel公司提供了一个免费的Host Loader软件,该软件运行在IBM PC兼容计算机的Windows 95或Windows 98操作系统下。这个软件可以从Atmel网站下载,连接主机和目标机只需要一根串口电缆。您可以选择使用COM1或COM2进行通信,串行链路的速度限制为115 200波特。因为串口链接的速度是配置的瓶颈,所以Flash编程每1 MB需要持续110 s。
使用快速编程系统可以减少编程时间。AT91评估板可使串行链路运行至500 K bit /s,并可匹配Flash允许的最快编程速度。比如字编程成为瓶颈时,编程速度可以达到40 s/MB。
结束语
随着后PC时代的到来,嵌入式系统变得无处不在。在手机、汽车、航空航天、军事装备等各个领域都可以看到嵌入式系统的身影。微控制器是嵌入式系统的核心部件。AT91FR40162是Atmel公司的AT91系列微控制器之一,是低功耗、32位性能和16位系统价格的最佳结合。在AT91FR40162的基础上增加了一个16 Mbit的Flash存储器。闪存的可编程性为用户使用芯片提供了更大的灵活性。AT91FR40162为嵌入式应用提供了一种高性价比的替代微控制器。










