打印

使用stc芯片的内部扩展ram后,复位不正常了

[复制链接]
5216|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
apt|  楼主 | 2008-10-27 13:22 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
硬件:
stc89c516rd+;
P2输出到8位dac;
WD,RD脚作dac的触发和片选;
10uF和10k电阻按手册的范例做的复位电路.
40M有源晶振(6分频工作方式,即相当80M)

软件:
原来没使用扩展RAM的程序很正常,从来没发现过复位不正常.
由于要提高速度,在芯片内部扩展RAM区建立了一个输出缓冲区.

问题:
在芯片内部扩展RAM区建立了一个输出缓冲区后,有时可以正常工作,但有时候一通电程序就乱飞,dac不停输出乱码.特别是断电3秒钟内重新通电的话,几乎没一次可以正常复位.
没使用内置扩展RAM的旧程序也可以正常工作.使用内置扩展RAM后用UV2做软仿真是正常的.现在基本上可以判断为没正常复位.

请问:
还有为什么是使用了内置扩展RAM后,就不能正常复位了呢?咋办?

请指教,谢谢!

相关帖子

沙发
apt|  楼主 | 2008-10-27 14:52 | 显示全部楼层

先谢过楼上

DAC是并行的.
我查过手册,查到与XRAM有关的寄存器,只有 AUXR寄存器 的 EXTRAM位 和 ALEOFF位 有关.只使用外部扩展RAM时 EXTRAM位 才应设1,ALEOFF只是关闭ALE输出避免系统干扰的.AUXR按手册其默认值为0x00,所以我没进行设置.

还有,如果系统能正常复位的时候,是可以正常工作的,问题是十次通电,起码有7次不正常.
而且,当系统刚通电,还没有输入的时候,软件是没有涉及到XRAM的操作的.所以我觉得不应该是地址有冲突.

使用特权

评论回复
板凳
apt|  楼主 | 2008-10-29 14:05 | 显示全部楼层

问题已经解决,谢谢关注!

原因:
系统断电后,短时间内重新上电,XRAM不能复0,所以默认值不为0x00.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

apt

23

主题

92

帖子

0

粉丝