科百科
当前位置: 首页 范文大全

单片机外部ram是什么(单片机的RAM和ROM到底是什么)

时间:2023-07-21 作者: 小编 阅读量: 3 栏目名: 范文大全

对于51单片机而言,其片载的内部存储器分为RAM和存储程序的ROM。所以ROM又被称为程序存储器。对于古董单片机而言,其上电运行时,ROM内的数据只能被读取而不能实时写入,即“只读”。20H代表十六进制的20,等于十进制的32,即:编号32的坑。在单片机运行过程中,一些中间变量就暂存在这些“坑”中。因为硬件是已经设计好的,它是死的,它只能响应芯片公司规定的这些指令。

对于51单片机而言,其片载的内部存储器分为RAM和存储程序的ROM。

我们以AT89c51为例,它作为经典51单片机,片载128字节RAM和4K字节ROM,注意这里古典ROM和现代计算机ROM的差别。

我们把ROM和RAM分开讨论。

1. ROM

什么是4K字节的ROM(只读存储器)呢?

有过基本51单片机开发经历的童鞋应该记得,我们使用C语言编写单片机程序后,会点击开发环境(比如Keil)的编译(compile)按钮进行编译。

此时Keil这个IDE(集成开发环境)就把C语言“译”成相应的二进制机器码。

然后我们通过烧录工具,把二进制机器码“灌输”至单片机。

灌输进单片机的程序去哪了?

没错,就储存在ROM中。所以ROM又被称为程序存储器。

对于古董单片机而言,其上电运行时,ROM内的数据只能被读取而不能实时写入,即“只读”。

因为,最初的单片机限于闪存技术,在程序运行时,ROM存储器只可以被读取,无法在线写入。但是,它可以被反复离线擦除并写入新程序。

所以,只读存储器ROM的Read-only Memory的名称就从这儿来的。

现代单片机的ROM一般采用FLASH闪存技术,不仅可以离线通过烧录器写入,也可以在线通过自身的代码来修改FLASH数据,达到类似“硬盘”的疗效。

比如,单片机算出了1 2 3等于6。

如果我们需要关机重启后单片机依然保留6这个结果,那么我们可以事先在程序中添加一段代码,让单片机把结果存入FLASH的某一存储单元中。

然后,即使断电重新开机,该数据也不会消失,下次再从这个地址读取,数据即是上次算好的结果,6。

我们以典型的ST单片机为例,其FLASH擦写次数高达一万次,而且该技术现在并不是什么高端货,一两块钱的单片机都能做到。

ST某款数据手册

一两块钱的电脑自带硬盘,是不是很划算,很好用!

2. RAM

再说说128字节的RAM,RAM又被称为数据存储器。

单片机上电之后是怎么运行的呢?我们把关键节点简要地勾勒一下。

首先,单片机上电后,复位电路触发单片机复位,使单片机所有状态处于复位状态,所有寄存器处于默认值,使得一切都在预料之中。

然后单片机按照设计时的“安排”,开始加载ROM中相应位置的数据,这些数据就是“程序”。

比如指令MOV 20H, A;

就是将累加寄存器A中的值送入RAM的20H这个“坑”中,20H就是这个“坑”的地址。

20H代表十六进制的20,等于十进制的32,即:编号32的坑。

128字节的RAM就有128个“坑”,分别编号00H到7FH(0到127)每个“坑”可以存一个8位的二进制数,即“坑”的大小是一个字节。

这样一条一条指令执行下去,有的MOV,有的JUMP,单片机就开始“有条不紊地”运行了。

在单片机运行过程中,一些中间变量就暂存在这些“坑”中。

当然,程序也能从这些“坑”中读取已存的数据,所以它又被称为数据存储器,它里面只暂存了“纯粹的数据”,没有程序(虽然程序也是二进制数)。

它的写入读出速度都比FLASH快,但掉电即丢失,相当于计算机的内存。

我们观察MSC-51指令集就知道,只有对RAM区操作得数据移动指令,没有对ROM的操作指令。

现代单片机对片载Flash的擦写,往往是通过对寄存器的操作来实现的。

3. 指令

那我们能否自行发明指令呢?

不行!

开发单片机的公司的工程师在设计单片机芯片时,不仅要设计CPU,还要同时设计内部存储和内部总线等“外设”,这样单片机才能运作,才叫“单片机”,而不仅仅是一个CPU。

每一个指令在这个小系统中到底产生什么效果,是这些工程师已经设计好的。

在没有C语言的年代,你想做具体的数学计算,就得把计算过程分解为一条一条的指令,然后通过指令来实现计算任务。

我们在使用芯片时,不能超过芯片公司规定的指令范围,去随意发明指令。

因为硬件是已经设计好的,它是死的,它只能响应芯片公司规定的这些指令。

这也就是为什么我们在开发时,需要datasheet和数据手册,因为芯片的指令是人做出来的,所以我们在开发时,需要遵守开发者的规定。

这就是传统51中内部ROM和RAM的根本区别。


版权归属珂学原理,转载请获授权。

,
    推荐阅读
  • 澳毛大衣可以用洗衣机洗吗(能不能用洗衣机清洗澳毛大衣)

    跟着小编一起来看一看吧!澳毛大衣可以用洗衣机洗吗澳毛大衣不建议用洗衣机洗,因为澳毛大衣用洗衣机或水洗容易掉毛、缩水和变形,建议送去干洗店清洗。另外,清洗时要清除口袋内杂物,澳毛大衣比较容易变形,口袋装东西时间长了就会变形,所以晚上把大衣挂起来的时候要取出口袋里的东西。

  • 为什么少林寺被称为中国第一大寺(少林寺简单介绍)

    为什么少林寺被称为中国第一大寺少林寺被称为中国第一大寺是因为禅宗和武术并称于世而有天下第一名刹的美誉。少林寺属于中国SA级旅游景区,联合国教科文组织还将少林寺、天地之中等8处11项历史建筑列为世界文化遗产。少林寺致力于将佛教教义推陈出新,把禅宗发扬光大。佛教传到中国后,少林寺坚持达摩释迎牟尼的第28代人人皆具佛性的观点,认为普通人坐定冥思即可悟得佛性。

  • 量子力学未解决难题(新发明触发了量子力学中最奇怪和最有用的现象之一)

    最近发表在《科学》杂志上的一项新研究对该设备进行了描述。据美国桑迪亚国家实验室和马克斯-普朗克光科学研究所的科学家们称,这种装置可以取代一屋子的设备,在一种被称为纠缠的奇异量子效应中把光子联系起来。“它扰乱了所有的光场,”桑迪亚高级科学家IgalBrener说。桑迪亚国家实验室是世界上进行超表面和超材料研究的领先机构之一。

  • 秋天的主题环创简笔画(幼儿园环创创意简笔画图片)

    秋天的主题环创简笔画怎么画?画秋天有的简笔画秋天的风景图画简笔画,下面我们就来选几个秋天的主题环创简笔画?我们一起去看看这些简笔画吧!秋天的主题环创简笔画画秋天有的简笔画秋天的风景图画简笔画秋天主题风景简笔画幼儿儿童简笔画绘画教程以秋天为主题的儿童画画毛毛简笔画以秋天为主题的简笔画有哪些

  • 奶枣属于什么产品(奶枣是什么)

    奶枣属于什么产品奶枣是一种即食食品,主要由大枣、杏仁、棉花糖、奶粉制成,手感绵软、口感酥脆,营养丰富。制作奶枣时,要将大枣去核并塞入杏仁,然后将棉花糖高温熔化后,加入奶粉搅拌均匀,最后放入大枣混合即可。奶枣中含有大枣,而大枣不能和螃蟹、鱼类、黄瓜等食物一起吃,否则会刺激肠胃,出现腹痛腹胀的现象,因此食用奶枣时,不宜食用上述食物。而且奶枣有补血的作用,不适合处于月经期的女性食用。

  • 饭店餐具五件套怎么用 饭店餐具三件套

    2、汤匙:主要是在就餐活动中,用来喝汤汁使用的,盛取汤汁时候,要用公勺,这一点要注意。

  • 酵母粉一般发多长时间(酵母粉多久能发好)

    为了达到这个温度,根据气候的变化,发面用水的温度可作适当调整:夏季用冷水;春秋季用40度左右的温水;冬季可用60~70度热水和面,盖上湿布,放置在比较暖和的地方。

  • 王少强是什么电视剧(是谁来出演的呢)

    跟着小编一起来看一看吧!王少强是什么电视剧出自电视剧《星座爱情牡羊女》,王少强扮演者修杰楷。32岁,建筑事务所合伙人,有个论及婚嫁的明星女友萧静。《星座爱情牡羊女》是由柯翰辰、隋爱明执导的电视剧,修杰楷等参加演出。于2015年2月8日晚上10点在民视首播。本剧由萝琳亚塑身衣冠名赞助,更名为《萝琳亚塑身衣星座爱情牡羊女》。

  • 巨型帝王蟹腿怎么做(巨型帝王蟹腿的做法)

    接下来我们就一起去研究一下吧!巨型帝王蟹腿怎么做帝王蟹腿230g、黑胡椒碎2g、咸味黄油15g、芝士碎10g、水70g、香菜3g、葱3g、姜2g。将帝王蟹腿清洗干净。取下帝王蟹蟹腿,靠近身体的那截,用剪刀剪开没有刺的那一面。用小刀抹上咸味黄油。烤箱220度预热5分钟,烤10分钟就可以了。

  • 芥菜叶子的腌制方法(芥菜叶子的腌制方法有步骤)

    下面更多详细答案一起来看看吧!芥菜叶子的腌制方法将新鲜的芥菜叶清洗干净以后,沥干水分,放在阳光下稍稍晒干。将晒好的芥菜叶放入到坛子内,注意每放一层芥菜叶就需要撒上适量的食盐,直到坛子全部装满。压出水分的芥菜叶取出以后,在坛子中加入适量的清水、食盐、白糖和干活辣椒。再加入准备好的料包以及芥菜叶,在常温下腌制48小时以后就可以食用了。