单片机原理概念

参考:单片机原理概念
作者:爱学习的小王呀
发布时间:2020-11-27 08:58:08
网址:https://blog.csdn.net/hongliwong/article/details/110219821?spm=1001.2014.3001.5501

单片机原理概念

  • 单片机执行指令
  • 单片机数的本质和物理现象
  • 单片机数位的含义
  • 单片机字节的含义
  • 单片机存储器的构造
  • 单片机存储器的译码
  • 单片机存储器的选片概念
  • 单片机的总线概念

单片机执行指令

我们来思考一个问题,当我们在编程器中把一条指令写进单片机内部,然后取下单片机,单片机就可以执行这条指令。

那么这条指令一定保存在单片机的某个地方,并且这个地方在单片机掉电后依然可以保持这条指令不会丢失,这是个什么地方呢?

这个地方就是单片机内部的只读存储器即ROM(READ ONLY MEMORY)。

为什么称它为只读存储器呢?刚才我们不是明明把两个数字写进去了吗?原来在89C51中的ROM是一种电可擦除的ROM,称为FLASH ROM,刚才我们是用的编程器,在特殊的条件下由外部设备对ROM进行写的操作,在单片机正常工作条件下,只能从那面读,不能把数据写进去,所以我们还是把它称为ROM。

单片机数的本质和物理现象

我们知道,计算机可以进行数学运算,这令我们非常难以理解,它们只是一些电子元器件,怎么可以进行数学运算呢?

我们人类做数学题如37+45是这样做的,先在纸上写37,然后在下面写45,然后大脑运算最后写出结果,运算的原材料是37和45,结果是82都是写在纸上的,计算机中又是放在什么地方呢?

为了解决这个问题,先让我们做一个实验:这里有一盏灯,我们知道灯要么亮,要么不亮,就有两种状态,我们可以用‘0’和‘1’来代替这两种状态:规定亮为‘1’、不亮为‘0’。

现在放上三盏灯,一共有几种状态呢?我们列表来看一下:000 / 001 / 010 / 011 / 100 / 101 / 110 / 111。我们来看,这个000 / 001 / 101 不就是我们学过的的二进制数吗?本来,灯的亮和灭只是一种物理现象,可当我们把它们按一定的顺序排好后,灯的亮和灭就代表了数字了。

让我们再抽象一步,灯为什么会亮呢?是因为输出电路输出高电平,给灯通了电。因此,灯亮和灭就可以用电路的输出是高电平还是低电平来替代了。这样,数字就和电平的高、低联系上了。

单片机数位的含义

通过上面的实验我们已经知道:一盏灯亮或者说一根线的电平的高低,可以代表两种状态:0和1,实际上这就是一个二进制位。
因此我们就把一根线称之为一“位”,用BIT表示。

单片机字节的含义

一根线可以表示0和1,两根线可以表达00 / 01 / 10 / 11四种状态,也就是可以表达03,而三根可以表达07,计算机中通常用8根线放在一起,同时计数,就可以表示0~255一共256种状态。

这8根线或者8位就称之为一个字节(BYTE)。

单片机存储器的构造

存储器就是用来存放数据的地方。它是利用电平的高低来存放数据的,也就是说,它存放的实际上是电平的高、低,而不是我们所习惯认为的1234这样的数字,这样,我们的一个谜团就解开了。

一个存储器就象一个个的小抽屉,一个小抽屉里有八个小格子,每个小格子就是用来存放“电荷”的,电荷通过与它相连的电线传进来或释放掉。至于电荷在小格子里是怎样存的,就不用我们操心了,你可以把电线想象成水管,小格子里的电荷就象是水,那就好理解了。存储器中的每个小抽屉就是一个放数据的地方,我们称之为一个“单元”。

有了这么一个构造,我们就可以开始存放数据了,想要放进一个数据12,也就是00001100,我们只要把第二号和第三号小格子里存满电荷,而其它小格子里的电荷给放掉就行了。

可是问题出来了,一个存储器有好多单元,线是并联的,在放入电荷的时候,会将电荷放入所有的单元中,而释放电荷的时候,会把每个单元中的电荷都放掉。这样的话,不管存储器有多少个单元,都只能放同一个数,这当然不是我们所希望的。因此,要在结构上稍作变化。

需要在每个单元上有个控制线,想要把数据放进哪个单元,就把一个信号给这个单元的控制线,这个控制线就把开关打开,这样电荷就可以自由流动了。而其它单元控制线上没有信号,所以开关不打开,不会受到影响。

这样,只要控制不同单元的控制线,就可以向各单元写入不同的数据了。同样,如果要从某个单元中取数据,也只要打开相应的控制开关就行了。

单片机存储器的译码

那么,我们怎样来控制各个单元的控制线呢?这个还不简单,把每个单元的控制线都引到集成电路的外面不就行了吗?

事情可没那么简单,一片27512存储器中有65536个单元,把每根线都引出来,这个集成电路就得有6万多个脚?不行,怎么办?要想法减少线的数量。

有一种方法称这为译码,简单介绍一下:一根线可以代表2种状态,2根线可以代表4种状态,3根线可以代表8种,256种状态又需要几根线代表?8根线,所以65536种状态我们只需要16根线就可以代表了。

单片机存储器的选片概念

至此,译码的问题解决了,让我们再来关注另外一个问题。送入每个单元的八根线是用从什么地方来的呢?它就是从计算机上接过来的,一般地,这八根线除了接一个存储器之外,还要接其它的器件。

这样问题就出来了,这八根线既然不是存储器和计算机之间专用的,如果总是将某个单元接在这八根线上,就有问题出现了:比如这个存储器单元中的数值是0FFH另一个存储器的单元是00H,那么这根线到底是处于高电平,还是低电平?怎样分辩?

办法很简单,当外面的线接到集成电路的引脚进来后,不直接接到各单元去,中间再加一组开关就行了。平时我们让开关打开着,如果确实是要向这个存储器中写入数据,或要从存储器中读出数据,再让开关接通就行了。

这组开关由三根引线选择:读控制端、写控制端和片选端。要将数据写入片中,先选中该片,然后发出写信号,开关就合上了,并将传过来的数据(电荷)写入片中。如果要读,先选中该片,然后发出读信号,开关合上,数据就被送出去了。

读和写信号同时还接入到另一个存储器,但是由于片选端不同,所以虽有读或写信号,但没有片选信号,所以另一个存储器不会“误会”而开门,造成冲突。那么会不同时选中两片芯片呢?

只要是设计好的系统就不会,因为它是由计算控制的,而不是我们人来控制的,如果真的出现同时出现选中两片的情况,那就是电路出了故障了,这不在我们的讨论之列。

单片机的总线概念

从上面的介绍中我们已经看到,用来传递数据的八根线并不是专用的,而是很多器件大家共用的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/266689.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

rsync+inotify一键安装脚本

一、环境描述 server:192.168.122.54 client:192.168.122.55,192.168.122.56 同步目录:/data/html server端有任何数据更新,即将同步到client端,实时同步 二、采用方法:rsyncinotify 三、关于in…

neo4j python 算法_python操作neo4j简单实例

一:neo4j是什么neo4j:Neo4j是一个高性能的,NOSQL图形数据库,有关于更多neo4j的资料出门右拐二:python操作neo4j的实现python中neo4j的操作可以利用驱动包或者py2neo包,我采用py2neo第三方包实现以下简单功能,先建立一个neo4j的链接对于neo4j的…

尚硅谷的 ediary 笔记_干货分享 | 硅谷创新加速营第五讲教您合理规划融资需求 降低投资风险...

5月26日上午,康佳之星携手青岛蓝谷管理局、斯坦福青岛研究院、海尔海创汇联合举办的第二届硅谷创新加速营第五讲顺利完成。斯坦福青岛研究院董事长的Claude Leglise先生做客直播间,为现场创业者、企业家讲授创业之路必修课:企业财务规划。本讲…

虚拟机的服务器黑屏,VMware Workstation 14运行虚拟机黑屏解决办法

VMware Workstation 14运行虚拟机黑屏解决办法升级到VMware workstation 14 pro后所有虚拟系统全部黑屏,VMware 14 黑屏,VMware Workstation 14运行虚拟机黑屏是什么原因步骤如下,步骤如下,1、以管理员身份运行命令提示符(cmd.exe…

c++ 冒泡排序_干货|python笔记1-冒泡排序

面试的时候经常有面试官喜欢问如何进行冒泡排序?这个问题相信可以难倒一批的同学,本篇就详细讲解如何用python进行冒泡排序。基本原理01概念:冒泡排序是一种交换排序,它的基本思想是:两两比较相邻记录的关键字&#xf…

异常mongodb:Invalid BSON field name XXXXXX:YYYYY.zz

1.本周遇到这个问题。 定位到发现一个很神奇的现象上面的结构无法顺利以map的key值存入mongodb里面。 而且到线上才发现这个问题。 而且是部分用户才会出现这样的情况 大部分人的该数据是这样的 XXXXXX:YYYYYY-zz 另外一些用户的该数据是XXXXXXX:YYYYYY.zz然后就出现上面的问题…

双链表嵌套的简单学生信息管理系统

参考:实现双链表嵌套的简单学生信息管理 作者:三速何时sub20 发布时间: 2020-07-20 10:44:40 网址:https://blog.csdn.net/weixin_44234294/article/details/107458155?spm1001.2014.3001.5501 参考:双链表嵌套实现简…

XHTML重构(一)

XHTML 规则概要  将传统的 HTML 转换为 XHTML 1.0 是快捷且无痛的,只要你遵守一些简单的规则和容易的方针。不管是否使用过 HTML,都不会妨碍你使用 XHTML。    使用恰当的文档类型声明和命名空间。    使用 meta 元素声明你的内容类型。   …

scrapy如何指定生成python3的项目_如何把阿里图标库的图标生成代码并应用于自己的项目...

有时候需要用很多图标去完成一定的页面效果和工作展现,框架内置的图标可能满足不了我们的需求,有个很好的图标库想必大家都知道-----就是阿里图标库。那么我们如何才能够把阿狸图标库的图标引用到自己的项目中呢?耐着性子往下看吧&#xff01…

win10系统无线服务器出错,win10系统中Wi-Fi证书错误的解决方法

wifi想必大家都很熟悉吧,这是很多用户们喜欢的无线网络,但是有时候会碰到一些wifi错误,比如有不少win10系统用户遇到wifi证书错误的情况,这样就会导致用户无法连接到网络或访问某个网站,该怎么处理呢,现在就…

subprocess模块

subprocess模块 subprocess可以根据命令的结果,正确的或者错误的分开存放 存放正确的结果 # import subprocess # objsubprocess.Popen(tasklist,shellTrue, # stdoutsubprocess.PIPE, # stderrsubprocess.PIPE, # …

mysql语录错误1300_mysql 语句常见错误 汇总(持续更新中)

1. 表名和属性名 按照 规范 应该加反引号(就是键盘上esc键下面,"1"键左边的那一个), 否则如果字段中出现某些关键字, 会引起歧义并报错。例如:insert into onlineshop_transferorder( from, to, relateId, total, productId, skuname, createTime, status…

通过EIGRP的 variance 参数实现非等价负载均衡

实验拓扑如上图所示我们使用EIGRP协议做通全网实现R1 的1.1.1.1 可以和 R4的4.4.4.4 进行通信 此时我们查看R1的路由表,查看去往4.4.4.4 的路由条目 通过拓扑图我们看到 R1去往4.4.4.4 是有两条路径的也就是 R1-R2-R4 和 R1-R3-R4 ,但是在路由表中&…

echarts 获取点击的y轴数值_用 Python 自动获取NBA现役球员的职业生涯数据曲线

前言作为一个看了多年篮球的 NBA球迷,一直在想用 python 和篮球一起来写点什么加上最近在学习 pyecharts ,所以就有了下面这篇文章:根据输入的球队和球员名字,自动生成该球员职业生涯数据曲线图!✨ 效果火箭哈登勇士格…

重装系统后dns服务器未响应,dns服务器未响应,小编教你dns服务器未响应怎么解决...

连网时,出现连不上网络,用Windows网络诊断,诊断出的结果是“DNS服务器未响应”,遇到这样情况该怎样解决?在使用window系统的电脑上网过程中,常常会遇到DNS服务器未响应的问题,怎么办&#xff1f…

VMware虚拟机启动错误(正在被占用、内部错误)等问题

参考:VMware虚拟机启动错误(正在被占用、内部错误)等问题 作者:扫地僧- 发布时间:2019-09-20 15:02:55 网址:https://blog.csdn.net/weixin_42119153/article/details/101060183?spm1001.2014.3001.5501 目…

Ubuntu 16.04 安装网易云音乐

从官网下载安装包后,需要重新配置一下依赖。(sudo apt-get -f install) 注意:软件源换成国内阿里的转载于:https://www.cnblogs.com/Sayno/p/9300442.html

xampp mysql 备份_Linux Xampp计划任务自动备份Mysql数据库和所有网站

[inlosc_lg_title]1、备份[/inlosc_lg_title]使用XAMPP的PHP网站集成环境,不仅轻松的解决网站所需环境,他的备份功能也非常强大。下面让我们输入几句命令来完成数据库和网站的自动备份:/opt/lampp/lampp backup **** #命令后面跟着的是MySQL …

mt4 指标 涨跌幅 颜色k线_通达信指标公式源码阴线买股+黄金K线指标+源码

源码:TT2:DMA((((HIGH LOW) (CLOSE * 2)) / 4.15),0.9);TT1:REF(EMA(TT2,3),1);RSV:(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;K:SMA(RSV,3,1);D:SMA(K,3,1);J:3*K-2*D;LC:REF(CLOSE,1);RSI:((SMA(MAX((CLOSE - LC),0),3,1) / SMA(ABS((CLOSE - LC)),3,1)…

Windows Server 2008 R2 遗忘管理员密码后的解决方法-by iLync

思路是这样的:修改登录界面其他功能的链接,使之成为CMD的链接,在CMD命令里面定位到C:\\Windows\System32下,用net user 去修改账号和密码具体操作如下:一、使用Windows Server 2008 R2的安装光盘引导计算机启动。完成安…