问题一:8051单片机片外eeprom可不可以直接调用rom里的程序 问题二:要往片外eeprom写数据,该怎么确定地
另外,片外eeprom调用rom里的程序是不是需要什么特别的方式才可以调用。继续等待.........
另外,片外eeprom调用rom里的程序 是不是需要什么特别的方式才可以调用。
继续等待...... 展开
继续等待...... 展开
展开全部
片外eeprom调用rom里的程序 这种说法不准确。
正确的来说,程序都是由处理器来调用的,片内也好片外也好,它们都是统一编址的。
流程是,处理器根据程序地址即PC值读出一条指令,处理器再根据指令做相应操作。
EA如果接高的话,地址小4K是片内地址,从片内读,大于4K的就是片外地址了,从片外读。
EA接地,就完全从片外来读。
调用及跳转,都是通过改变PC地来实现的,PC值改到哪里,处理器下一次就从哪里读指令。
片外eeprom可不可以直接调用rom里的程序 ,就是片外中的指令中,CALL 或JMP 这条执行后,PC改成rom里的地址了。下一次,处理器就用这个PC去读取片内的指令了。
写片外EEPROM,看线怎么接的,地址都是跟接线有关的。你按一般的片外 RAM来接,它的地址就跟一般的RAM一样。不过,它写入数据是需要写入时间的,写完一个,再写下一个都等待一定的时间。
正确的来说,程序都是由处理器来调用的,片内也好片外也好,它们都是统一编址的。
流程是,处理器根据程序地址即PC值读出一条指令,处理器再根据指令做相应操作。
EA如果接高的话,地址小4K是片内地址,从片内读,大于4K的就是片外地址了,从片外读。
EA接地,就完全从片外来读。
调用及跳转,都是通过改变PC地来实现的,PC值改到哪里,处理器下一次就从哪里读指令。
片外eeprom可不可以直接调用rom里的程序 ,就是片外中的指令中,CALL 或JMP 这条执行后,PC改成rom里的地址了。下一次,处理器就用这个PC去读取片内的指令了。
写片外EEPROM,看线怎么接的,地址都是跟接线有关的。你按一般的片外 RAM来接,它的地址就跟一般的RAM一样。不过,它写入数据是需要写入时间的,写完一个,再写下一个都等待一定的时间。
更多追问追答
追问
非常感谢!我也知道那种说法不准确,不过我就是想强调我的情况,我存在eeprom里的程序调用了存在ROM里面的程序,编译连接什么的没问题,就是在硬件上跑时出问题;当我把ROM里面涉及的那个子程序抄到eeprom里面以后,就OK了,您看这是怎么回事呀?谢谢~期待您的回答
追答
我现在很想知道,你是怎么把程序分成两块烧的。是两个文件各自编译?还是统一编译?
分成两个文件编译,你的两个文件的函数地址又怎么关联起来。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |