MicroConverter®的一般性问题
布局和设计考虑
问:MicroConverter®有独立的模拟地和数字地引脚,在我的电路板上,应该把它们分别连到两个独立接地面上吗?
答:不。除非这两个接地面在离芯片很近的地方被连在一起。在所有其他情况下,最好把MicroConverter®安装在单一的接地面上。如果在你的电路板上有两个独立接地面, 那末就把MicroConverter®装到两个地中噪声较小的地上(通常是模拟地) 来获得ADC和DAC的最佳性能。
问:我有一些快速逻辑脉冲边沿的数字电路, 我想把他们接到MicroConverter®上, 这些信号会影响芯片的模拟性能吗?
答:当上升和下降时间少于5ns的信号直接连到MicroConverter®的数字输入引脚上时,会产生潜在的馈通并降低模拟性能。一个简单的解决办法是串联一个电阻,一个200W左右的串联电阻能有效地减慢脉冲边沿,使MicroConverter®的模拟性能不受影响。
其他问题
问:当MicroConverter®的DAC被禁止时,它的输出会怎样?DAC有“三态” 特性吗?
答:在芯片上电时,MicroConverter的 DAC被默认为禁止状态。在这种状态下,对于外界来说输出表现为一个高阻抗节点,与数字逻辑术语中的“三态”输出类似。不论什么时候,如果你想把DAC输出置为高阻抗状态,只要把DAC设置为禁止就可以了。
问:我听说MicroConverter®能够对16M字节的外部数据存储区寻址,这是真的吗?它是怎样做到的?
答:是的。MicroConverter®能够对16M字节的外部存储区寻址。如果想要对超过64K字节的RAM寻址,只要在端口2的地址总线上简单地加一个额外的锁存器就可以了,这是MicroConverter®独有的特性,允许对16M字节的外部RAM寻址。MicroConverter®和标准的8051一样,端口O(P0)是复用的地址/数据总线,它发出数据指针的低字节(DPL)作为地址,并在MicroConverter®(写操作)或SRAM(读操作)把数据送到总线之前,该地址被ALE脉冲锁存。端口2(P2)提供数据指针的页字节
(DPP),并被ALE 锁存,紧接着的是数据指针高字节(DPH)。如果没有锁存器连接到端口P2,DPP就被SRAM忽略,从而保持8051标准的64K字节外部数据存储空间。
问:我想用主机把新代码串行下载到MicroConverter®,用于MicroConverter®重新编程的串行下载协议是什么?
答:使用基于“模拟器件窗口” 的下载程序(WSD.exe)与芯片的串行口(UART)通信,MicroConverter®能够在你的系统中被串行重新编程。另外,还可以通过任何其他主处理器,用WSD应用程序所使用的同样的串行下载协议对MicroConverter®在系统重编程。请参阅网上应用技术笔记mC004或QuickStart开发系统的部分内容。
问:我听说过“上电配置程序”,这是什么意思?
答:每一个MicroConverter®产品都有一个“上电配置程序” ,每次芯片上电或复位时,它就运行。实质上,这是一小段程序代码,在执行你的程序代码之前先执行它。它是用来配置某些片内外设的,例如ADC和Flash/EE存储器,用于出厂时优化的自校准和定时参数。其中一些你可以看到(例如,不同芯片缺省的ADC失调和增益校准寄存器会不同的),其他一些你看不到(例如,ADC线性误差﹑PTAT系数对于你的程序代码来说是不可见的)。对于那些晶振频率变化超过32kHz的
MicroConverter®器件,上电配置也会等待直到这部分“锁定”,然后才开始运行用户程序代码。
上电配置程序存储在程序ROM的隐藏区域内,程序的起始地址是FF00H。尽管上电配置程序“映射”到地址FF00H到FFFFH,但是却不影响外部程序存储器使用这些地址。64K字节的用户程序可以从一个外部PROM芯片上(或8K程序从内部的Flash/EE和56K程序从外部的PROM)执行。
在上电配置程序执行期间,ALE输出自动无效,以便你可以确定你的程序什么时候开始执行。当你的程序代码第一行被执行时,ALE才开始工作。
问:在8051中PSEN引脚总是作为输出,那么它怎样用作进入串行下载模式的输入呢?应该用什么下拉电阻来确保进入串行下载模式呢?会影响PSEN引脚的标准功能吗?
答:在8051中PSEN引脚总是输出,它用于访问外部程序存储器。在MicroConverter®中PSEN引脚用来访问外部程序存储器和用作输入来决定运行用户程序还是运行片内的串行下载程序。
通常PSEN被配置为输出引脚,但当RESET引脚被拉高时,PSEN引脚变为数字输入,
并且每一个机器周期都对PSEN引脚的电压进行采样。一旦RESET变为低,PSEN引脚上最终被采样到的逻辑电平被用来决定运行用户程序还是运行片内的串行下载程序.
为了确保PSEN引脚为逻辑低电平,应该通过一个1k电阻接地拉到低电平。为了确保PSEN引脚为逻辑高电平,你可以把它浮空, 因为该引脚有一个内部上拉电阻。
因为MicroConverter®的PSEN引脚与8051的PSEN引脚功能仅在RESET拉高时有区别(在这种情况下8051的PSEN引脚没有用处),因此MicroConverter®的PSEN引脚功能不受它附加功能的影响。
问: 我必须要输入“NOP” 指令来等待Flash/EE擦除和编程时间过去后才执行下一次数据Flash/EE操作吗?
答: 完全不必,硬件上已经考虑了访问Flash/EE数据存储器的所有定时。当你执行Flash/EE擦除和编程命令时,MCU会等Flash/EE操作完成以后, 才移到下一个机器周期。这意味着Flash/EE擦除或编程指令仅占用一个机器周期, 但对于ADmC812的Flash/EE擦除/编程命令,该机器周期会延长20ms/250ms ,对于ADmC824的Flash/EE擦除/编程命令,该机器周期将延长2ms/250ms 。
问: 如果在Flash/EE数据存储器编程或擦除时,电源降低会有怎样结果?
答: 如果在执行Flash/EE擦除或编程指令期间电源降到2.7V以下, 不能保证指令被正确执行。
此外,由于Flash/EE编程或擦除指令所占用的时间比典型的指令时间长得多[编程250ms,擦除2ms/20ms(ADmC824 /ADmC812)], 如果中断发生在Flash/EE编程或擦除指令期间, 中断响应时间被大大增加了。
举例说, 如果在执行Flash/EE编程或擦除指令期间,电源监视器(PSM)产生中断, 只有在该指令完成以后中断才被处理。这样, PSM能够被用来指示在Flash/EE编程或擦除指令期间电源已经降至规定阈值以下,从而说明该编程或擦除指令可能没有被正确执行。
问:有现成的52PQFP插座吗?
答:有, 但只是为测试或评估用的。由于这类插座是ZIF类型的,价格比MicroConverter®产品本身高很多倍,因此不适用于生产。然而,它们对于测试/编程头,或在某些情况下对于调试/样机试制是有用的。几种不同类型的插头如下:
工程塑料:
OTQ-52-0.65-01 “敝开”型
FPQ-52-0.65-01A “外壳夹紧”型
(插座安装在通孔模板上, 用于测试/编程头)
硬质电工胶木:
CA-QFE52SB-L-Z-T-01
插座型
SF-QFE52SB-L-01 印刷板插头
(印刷板插头焊到52PQFP引脚上,
MicroConverter®芯片经转接插座插入,这种插座还提供了与52个引脚连接的测试点,适用于调试/样机试制)。
(吴星明 译,华正权,高 工 审校)