几天前SRAM都已经正常调通了,但这几天,不知什么原因,SRAM就是不能正常读写,现象如下:
(1)写一个数据,相邻随机地址的数据也发生变化;
(2)仅读数据,相邻随机地址的数据也会发生变化;
(3)写0xFFFF,完全正确;写0x0000,则数据变为0x2F0F, 0x0F0F, 0x2F1F;写0x5A5A,数据则为0xFFFF。
(4)看了一下DSP数据线上写0x0000的输出,均为如下波形,即初始为‘1’;当该数据线上应该输出‘0’时,下降沿很抖,但上升沿却是类似于充放电波形,极其缓慢(整个波形时间大约为2us左右)。
----- - -- -----------------
| --
| --
|-----
(5)将SRAM某一根数据线与DSP断开后,查DSP的输出(仅DSP输出,断开后,该数据线没有外连任何器件),也是上述波形(该数据线输出为‘0’时)。
(6)查了一下CLKOUT线上,输出频率与要设的一致(如都是30MHz)。但波形不好。查晶体输出,波形完好,正常起振。查电源,幅值为3.34V,纹波为400mv左右(有些大)。
现在估计原因:
(1)DSP2812的XINF模块寄存器或其它部分的寄存器没有初始化完备;—— 但CLKOUT上频率是对的;
(2)DSP数据线上的驱动能力不够,—— 但目前将某数据线断开后,情况仍然是波形上升缓慢。
(3)电源纹波影响。
请各位帮忙一起分析一下,会是什么原因引起的这种情况?
为什么数据线上会是那样一个波形?以前读写时,都是很干净的方波脉冲。不知为什么,就成这样了。郁闷中………………
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
我遇到的是不同的地址,如果在观察窗中看到数据线上是相同的数据,我所说的是读操作,写就可以正常显示
XintfRegs.XBANK.bit.BANK = 7;
XintfRegs.XBANK.bit.BCYC = 7;
注意一下这两个中有一个是控制让谁开的(就是让哪个CS打开的)
一周热门 更多>