导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→初学者:小女请教为何扩展的2864不能用?[danpj]

 *第7743篇: 初学者:小女请教为何扩展的2864不能用?

  
楼 主:danpj 2003年1月17日02:30
 初学者:小女请教为何扩展的2864不能用?
各位大侠,请教如下:
89c52单片机,DQ2864A-250芯片,简单的扩展电路。即将RD口和PSEN口相与后接入2864的OE
口。
问题是能正常读出2864中的数据,但不能运行2864中的程序。
软件很简单,在单片机内rom中只有这样的语句,《org 0000h  main:ljmp 1e00 sjmp $ 
end》  2864中只有《 mov a,#01H   mov p1,a sjmp $》,以《7401 F590 80FE》的形式存
在以1e00为起始地址的空间里。 
盼大侠不吝赐教,万分感激。谢谢!!  wzj_hx@163.com   
  
2楼:wolfzyx 2003年1月17日10:22
 不對阿
52的rom是2k喔
小妹,就是說在52裡面rom的最後的地址是1fff
你跳來跳去還在裡面喔.
還有你的ale不接麼?
  
3楼:danpj 2003年1月17日16:29
 谢谢wolfzyx的回复!
哈,看到你说“你跳来跳去还在里面哟”,我不禁茅塞顿开,也哑然失笑,想想自己确实像
小丑一样跳来跳去,还不知为什么?那就是说我想要用2864还得把p2口高位地址线向上移才
行是吧?
ale当然接了ls373的G。因为我用movx 命令读取2864中的数据是成功的,那也就是说当执行
程序时,由于不是movx命令,所以在片内有足够的空间就在片内寻找命令执行,而movx命令
强迫读取外部数据是吧!
  
4楼:danpj 2003年1月17日16:44
 呀,wolfzyx,好像不对哟!
如果是2k地址最多到07ff巴。1fff可是表示的是8k,不过你说的是一个方向,我查查89c52
资料再说。谢谢!
  
5楼:danpj 2003年1月17日17:01
 我查了,52是8k,地址重合,你说的没错,谢谢!
  
6楼:红心J 2003年1月17日10:43
 参考
您设定89c52为执行片内程序方式,
因此不可能执行片外程序。
  
7楼:danpj 2003年1月17日16:15
 没有,我的EA接的是高电平!谢谢你的回复!
  
8楼:红心J 2003年1月17日18:16
 EA接高电平就是选择执行片内程序,不会执行片外程序。
  
9楼:danpj 2003年1月18日02:37
 ea接高是为了利用两部分地址空间
书上不是说EA接高电平,地址为低于片内的执行片内程序,高于的则执行片外。若EA接低,
则只执行片外程序。我之所以EA接高,是想两个地址空间都用上!
  
10楼:a12345678 2003年1月18日07:00
 回复初学者
估计是你的程序设计不合理.
  
11楼:jy 2003年1月18日10:31
 EA=1
当EA=1时,片内要有ORG OOH LJMP 2000H,如果只做为程序,RD可不与,(还要写入另论)

>>>>>>对该主题发表你的看法

本主题贴数11,分页: [第1页]


[上一篇主题]:硬件:请问那位知道QTC 6N137是什么芯片,干什么用的?我在分析电路,被它卡住了,快帮

[下一篇主题]:初学者:LED显示问题