没有ADI论坛,在此咨询个ADI的吧
在用一款ADI的ADUC7061芯片,ADC+ARM7的老芯片。
有DAC和ADC。正常来说ADC和DAC是互不相干扰的两个独立模块,但是,在特定的配置条件下,会出错。
就是:P0口配置成ADC输入的时候,DAC的输出不正确,非线性。如果P0口配置成GPIO或者SPI,则输出正确。
不正确还有几个特点:
1. 如果用ULINK,则下载后,自动运行的,DAC输出不正确;
2. 如果用ULINK, 点击DEBUG,然后RUN或者STEP BY STEP,则DAC输出是正确的。
3. 如果用JLINK,则下载后,自动运行,DAC输出正确。
4. 如果是把代码下载到FLASH,电源关闭后再开,运行的DAC输出不正确;
5. 考虑是否是复位问题,用镊子短路复位RC电容,正常复位,DAC输出不正确。
这看上去,我的理解是:如果使用过JTAG,JTAG可能把内部某些BUG寄存器,巧合地复位了,所以运行正常。
如果不用JTAG,直接开机运行,等于没有JTAG的访问过程,系统应该初始化的某个寄存器可能异常,导致输出不正确。
不知道大家的理解是怎么样的?可以提醒一下,谢谢。
ADI的产品说明书太少,没几页,技术支持也很差劲,没人回复。我个人认为,这个可能是个厂家BUG,厂家可以通过告诉用户配置未公开的寄存器,即可修复BUG.当然现在美国佬收入也不好,消极怠工也有可能。都不理的多。 |