• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

51单片机可以和外部rom接线,调整cpu分配基本地址范围?

泰国看星星 2017-04-26 浏览量:715

对于8kb容量的外部rom,需要13条地址线。一般选用p0 p2的部分端口,例如p0全部端口接地址锁存器,p2.0 1 2 3 4直接接外部rom相应端口,5接cs片选,其他悬空,请问片选如何工作?

如何控制基本地址,重复地址范围?

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 嗨,老問題囉,51定址詳細觀念圖如下

    記憶體種類

    typeSDCCinstructionsizeaddressing
    (A) program__codeMOVC64Kindex direct
    (B) external__xdataMOVX64Kindirect
    (C) internal(80~FF)__idataMOV128indirect
    (C) SFR(80~FF)__sfrMOV128direct
    (C) internal(0~7F)__dataMOV128direct/indirect

    記憶體定址

    typereadwriteregister
    directMOV Rn,direct
    MOV direct,direct
    MOV direct,Rn
    MOV direct,@DPTR
    MOV direct,#data
    R0~R7,A
    indirectMOV direct,@Ri
    MOVX A,@DPTR
    MOV @Ri,direct
    MOVX @DPTR,A
    MOV @Ri,#data
    R0,R1,DPTR,A
    index directMOV A,#30h
    MOV DPTR,#300H
    MOVC A,@A+DPTR
    XA,DPTR
    1. Ri=R0,R1,Rn=R0~R7。
    2. 索引定址法 (index direct) 只能用在程式記憶體,而且不能寫入,只能讀取到 A。
    3. 外部記憶體只能使用間接定址法 (indirect),而且只能透過 Ri/DPTR/A 三者傳遞數值,如果要寫入數值,只能把值先存入 A,再由 A 寫入 DPTR/Ri。
    4. 內部記憶體不論間接或直接都可以直接把數值寫入,不需要透過 A,當然要經由 A 也是可以。
    以上供您參考

    • 发布于 2017-04-26
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:1
  • 51单片机同时外扩RAM,ROM的具体实现及Keil的具体设置
    http://www.51hei.com/bbs/dpj-29346-1.html

    • 发布于2017-04-26
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

51单片机可以和外部rom接线,调整cpu分配基本地址范围?