0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单片机的几个基本概念

GReq_mcu168 来源:玩转单片机 作者:玩转单片机 2021-05-14 11:19 次阅读

单片机执行指令

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

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

这个地方就是单片机内部的只读存储器即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四种状态,也就是可以表达0~3,而三根可以表达0~7,计算机中通常用8根线放在一起,同时计数,就可以表示0~255一共256种状态。

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

单片机存储器的构造

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

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

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

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

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

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

单片机存储器的译码

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

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

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

单片机存储器的选片概念

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

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

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

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

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

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

单片机的总线概念

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

所以我们称之为数据总线,总线英文名为BUS,总即公交车道,谁也可以走。而十六根地址线也是连在一起的,称之为地址总线。

责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6036

    文章

    44554

    浏览量

    634934
  • 电子元器件
    +关注

    关注

    133

    文章

    3339

    浏览量

    105377
  • 编程器
    +关注

    关注

    9

    文章

    395

    浏览量

    42310

原文标题:单片机的几个基本概念

文章出处:【微信号:mcu168,微信公众号:硬件攻城狮】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    MCU与单片机的区别

    在现代电子技术领域,微控制单元(MCU)和单片机是两个经常听到的术语。尽管它们在某些方面有相似之处,但它们在设计、功能和应用上存在显著差异。 一、定义与基本概念 1.1 微控制单元(MCU) 微控制
    的头像 发表于 11-11 14:50 695次阅读

    Linux应用编程的基本概念

    Linux应用编程涉及到在Linux环境下开发和运行应用程序的一系列概念。以下是一些涵盖Linux应用编程的基本概念
    的头像 发表于 10-24 17:19 227次阅读

    单片机怎么写入程序

    程序通常涉及以下几个步骤: 选择单片机和开发环境 : 确定项目需求,选择合适的单片机型号。 安装相应的开发环境,如Keil、IAR、MPLAB等。 硬件连接 : 将单片机连接到开发板或
    的头像 发表于 10-21 11:21 450次阅读

    单片机io口的四种工作状态

    单片机的I/O口工作状态是单片机编程和硬件操作中非常重要的一部分,它决定了单片机如何与外部设备进行通信。 1. 单片机I/O口的基本概念
    的头像 发表于 09-14 14:24 1490次阅读

    单片机烧录程序的基本步骤是什么

    单片机烧录程序的基础,它包含了单片机芯片、电源、接口等基本元件。在选择单片机开发板时,需要考虑以下几个方面: (1)单片机型号:根据项目需
    的头像 发表于 09-02 09:47 1023次阅读

    新手如何学单片机

    学习电子基础知识:了解电压、电流、电阻等基本概念,以及它们在电路中的作用。 学习计算机体系结构:理解计算机的基本组成和工作原理,包括CPU、内存、输入输出设备等。 学习编程语言:单片机编程通常使用C语言,因此需要先掌握C语言的基础知识,包括数据类型、变量、函数、控制结构等
    的头像 发表于 08-28 09:18 480次阅读
    新手如何学<b class='flag-5'>单片机</b>

    模电数电单片机基本概念及应用领域

    模电数电单片机是电子技术领域中的一个非常重要的分支,它涉及到模拟电路、数字电路和单片机技术。 一、模电数电单片机基本概念 模拟电路 模拟电路是指处理模拟信号的电路,它包括放大器、滤波
    的头像 发表于 07-19 09:49 881次阅读

    串口通信的基本概念

    串口通信(Serial Communications)的基本概念可以归纳为以下几个方面:
    的头像 发表于 06-12 09:28 622次阅读
    串口通信的<b class='flag-5'>基本概念</b>

    数字电路仿真软件单片机怎么用

    、调试和测试。 首先,使用单片机仿真软件前,我们需要了解一些基本概念和背景知识。单片机是一种嵌入式系统的核心部件,它集成了微处理器、存储器和各种外设输入输出接口,用于控制和执行特定的任务。单片
    的头像 发表于 04-21 10:28 1060次阅读

    fpga编程与单片机编程的区别

    FPGA编程与单片机编程的主要区别体现在以下几个方面。
    的头像 发表于 03-14 17:16 993次阅读

    单片机编程和plc编程有什么区别

    单片机编程和PLC编程是两种不同的嵌入式系统开发领域。在这篇文章中,我们将详细探讨这两种编程方式的区别。首先,我们将简要介绍单片机和PLC的基本概念,然后分析它们的不同特点和使用场景。 一、
    的头像 发表于 02-22 10:23 2720次阅读

    单片机的最小系统由什么组成 单片机的最小系统包括哪些

    单片机(Microcontroller Unit,MCU)的最小系统包括以下几个主要组成部分: 单片机芯片:单片机是整个最小系统的核心部分,它集成了中央处理器(Central Proc
    的头像 发表于 02-02 11:27 1.1w次阅读

    单片机中断功能及其应用

    事件的响应和处理。它具有实时性好、可靠性高、效率高等优点,广泛应用于各种电子设备和系统中。 一、单片机中断的基本概念 单片机中断是一种可以在程序执行的任何地方改变程序的正常执行的功能。在单片机
    的头像 发表于 01-30 14:45 5325次阅读

    什么是单片机? 单片机由哪几个主要部分组成?

    单片机是一种集成电路芯片,具有处理器核心、存储器、输入输出接口等主要部分。它可以用来控制并执行各种任务,广泛应用于电子产品中。 一、单片机的概述 单片机是指在一块集成电路中集成了中央处理器(CPU
    的头像 发表于 01-22 10:38 9232次阅读

    单片机芯片怎么写入程序

    单片机工作,我们需要向其非易失性存储器中写入程序。本文将介绍单片机芯片程序写入的过程和方法。 单片机芯片程序写入的基本概念 在开始之前,我们先来了解一些
    的头像 发表于 01-05 14:06 8309次阅读