阅读:1189回复:2
关于双口RAM
我的单片机用的是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有问题。 |
|
|
沙发#
发布于:2002-06-28 16:18
vhdl的语法我不是很熟,但希望注意锁存器和寄存器的区别.
|
|
|
板凳#
发布于:2002-06-28 16:58
我已找到问题的所在了,谢谢版主
|
|
|