打印

单片机外扩RAM五个数据不对怎么办

[复制链接]
1975|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

上图为单片机扩展的RAM,IS61C256AL-12JLI是32KCMOS的RAM,程序中只用2K左右。我程序中用uchar xdata Data_Table[304]定义了一个大数组(全局变量),对这个数组的操作完全由单片机自动控制(就是汇编的MOVX,由单片机自动产生读写信号),现在这个数组中连续有5个数据不正常。我做了如下测试:1、扫了RAM,RAM没问题;2、用_at_指定这个数组的地址,这5个异常数据跑到其他地方去了。
***********************************************我是分割*******************************************************
由于时序是由单片机自动完成的,我现在不知道如何下手,请大家指点迷津啊。。。


相关帖子

沙发
ayb_ice| | 2014-1-2 11:21 | 只看该作者
感觉PSEN信号不太对,要确保仅仅在读写时使能相关信号,
好久不用这种方式了,
仔细检查一下吧

使用特权

评论回复
板凳
ningling_21| | 2014-1-2 11:33 | 只看该作者
本帖最后由 ningling_21 于 2014-1-2 11:37 编辑

模拟一下时序试试这个片外的RAM...
另,STC89XXXX 芯片本身就有片外RAM,你又外扩了片外RAM,要设置寄存器先禁止51内部的片外RAM。

使用特权

评论回复
地板
cjseng| | 2014-1-2 12:03 | 只看该作者
有一种可能就是你的程序在无意中改变了这5个字节的内容。

使用特权

评论回复
5
youimiss|  楼主 | 2014-1-2 12:48 | 只看该作者
ayb_ice 发表于 2014-1-2 11:21
感觉PSEN信号不太对,要确保仅仅在读写时使能相关信号,
好久不用这种方式了,
仔细检查一下吧 ...

PSEN是扩展ROM时要用,扩展的RAM不需要用到吧

使用特权

评论回复
6
youimiss|  楼主 | 2014-1-2 12:48 | 只看该作者
ningling_21 发表于 2014-1-2 11:33
模拟一下时序试试这个片外的RAM...
另,STC89XXXX 芯片本身就有片外RAM,你又外扩了片外RAM,要设置寄存器先 ...

已禁用

使用特权

评论回复
7
youimiss|  楼主 | 2014-1-2 12:50 | 只看该作者
cjseng 发表于 2014-1-2 12:03
有一种可能就是你的程序在无意中改变了这5个字节的内容。

2、用_at_指定这个数组的地址,这5个异常数据跑到其他地方去了。
*************************************************************************
从这里可以得出没误操作吧

使用特权

评论回复
8
youimiss|  楼主 | 2014-1-2 16:36 | 只看该作者
ayb_ice 发表于 2014-1-2 11:21
感觉PSEN信号不太对,要确保仅仅在读写时使能相关信号,
好久不用这种方式了,
仔细检查一下吧 ...

请问为什么不用这种方式了呢?

使用特权

评论回复
9
ayb_ice| | 2014-1-3 08:22 | 只看该作者
硬件好象没有问题,
检查程序吧,
关掉中断,在程序最开始测试XRAM

估计是指针指乱了

使用特权

评论回复
10
wangxihu| | 2016-5-2 18:36 | 只看该作者
你好,有关计算机外扩ram的程序请假,拜托了,帮忙有惊喜

使用特权

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

本版积分规则

个人签名:不卖开发板! http://minifairyfly.taobao.com/

43

主题

1097

帖子

1

粉丝