jpl1978
驱动小牛
驱动小牛
  • 注册日期2002-03-31
  • 最后登录2008-01-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1189回复:2

关于双口RAM

楼主#
更多 发布于:2002-06-28 15:39
我的单片机用的是ADUC812,IDT7005双口RAM(8K,13根地址线)锁存器是用cpld做的74LS373,vhdl语句为:
  process(ale)
begin
if(ale\'event and ale=\'1\')then
    ar<=p2(4 downto 0)&p0;
end if;
   end process;
单片机的程序为:
MAIN: MOV DPTR,#0000H
MOV R1,#5FH
MOV A,#41H
AGAIN:
MOVX @DPTR,A
INC DPTR
DJNZ R1,AGAIN
一执行MOVX @DPTR,A,用在线调试器里看双口ram的值00-FF,不知为何都有新值写入,并且有规律,(如下所示),不知为何?
ADDRESS 0000 41 FB A9 68 00 41 FB A9 68 00 41 FB A9 68 00 41
        0010 FB A9 68 00 41 FB A9 68 00 41 FB A9 68 00 41 FB
...............
  敬请指教(最好能提供锁存器的VHDL程序)
之前我用AT89C51和74LS373锁存器,访问双口ram,读写都没问题。
很可能用cpld做的74LS373有问题。
满意的话,请给分! 互相学习,互相前进
jst7792
论坛版主
论坛版主
  • 注册日期2001-12-10
  • 最后登录2006-11-16
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-06-28 16:18
vhdl的语法我不是很熟,但希望注意锁存器和寄存器的区别.
兄弟们,给点分吧
jpl1978
驱动小牛
驱动小牛
  • 注册日期2002-03-31
  • 最后登录2008-01-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-06-28 16:58
我已找到问题的所在了,谢谢版主
满意的话,请给分! 互相学习,互相前进
游客

返回顶部