注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
mcuaijun9801的个人空间 https://home.eeworld.com.cn/space-uid-79555.html [收藏] [复制] [分享] [RSS]
日志

关于51单片机的存储器分析

已有 833 次阅读2008-12-29 13:23

每次讲到51的内RAM空间与地址时,感觉非常费力,也在不断尝试用新的手段或方法来不断地改善效果,以使上课的同学们能更好知道里面关键的东西,减少在以后使用时候的迷惑性。

       上课所依托的单片机是AT89C51/AT89S51。单片机与台式机(微机)相比,其显著的功能特点就是控制功能,所以单片机广泛地应用于工业控制领域。《单片机》课程要解决的问题也就是你通过单片机怎样构建你所想要的系统(这包括根据功能要求确定系统的电路以及在这个硬件平台的基础上如何编程使单片机正常工作并能有效发出各种控制信号)。另外,单片机的个头很小,它的存储空间也小,自带ROM4K、RAM128字节,对初学者来说,最不好理解的(主要是受应用的限制)内容,也就是教学的难点。如何有效解决这个问题,希望能于大家一起探讨(Email:aijun9801@163.com)。内部RAM大小为128B,可以分为三部分:

       第一部分:地址从00H~1FH,共4个字节,每个字节的位各代表一个寄存器从D0到D7位分别是寄存器R0~R7,也就有4组R0~R7(每组都有R0~R7),到底在编程是使用哪组寄存器由编程者自己决定(这点初学者可能根本体会不到具体含义),单片机上电后默认的是第0组寄存器组。

      第二部分:地址从20H~2FH,共16个字节,总共16x8=128位,重点就是这128个位,每个位都有明确的唯一的地址以此从00H~7FH。这里的00H~7FH叫做位地址。位地址00~7FH和字节地址00H~7FH地址值一样会出现访问错误吗?不会可以通过不同的指令解决,这个问题初学者也可能理解不倒,这里也不大好引入具体的实例,所以容易造成学习和教学的矛盾。

     第三部分呢:地址从30H~7FH,用户使用区域。

     当然,这三部分区域不是绝对的分离的,在没有被特定使用的时候,都可以做普通的寄存器使用,就像30H~7FH一样。所以先能大致对内RAM三个区域的主要特点高清以后,对整个的RAM的理解就容易的多了,如果有其它的辅助手段结合的效果会更好,至于什么样的辅助手段就是也是我非常关心的!

       个人意见,欢迎交流!

发表评论 评论 (1 个评论)
回复 xu__changhua 2009-4-8 10:46
同样的困惑

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章