单片机要自动完成计算,它应该具有哪些最重要的部分呢?

点击:1741次    发布时间:2021-03-22     数据来源:东莞艾迪科

单片机要自动完成计算,它应该具有哪些最重要的部分呢?

在自动化工作中,我们常常听到过单片机,但是不进入这个领域的人并不清楚什么是单片机,今日群艾迪科技烧录器小编就为我们讲解下,这个常识。

我们以打算盘为例核算一道算术题。例:36+163×156——166÷34。现在要进行运算,首要需求一把算盘,其次是纸和笔。我们把要核算的问题记录下来,然后第一步先算163×156,把它与36相加的作用记在纸上,然后核算166÷34,再把它从上一次作用中减去,就得到终究的作用。

现在,我们用单片机来结束上述进程,明显,它首要要有代替算盘进行运算的部件,这就是“运算器”;其次,要有能起到纸和笔作用的器件,即能回想原始标题、原始数据和中心作用,还要记住使单片机能自动进行运算而编制的各种指令。这类器件就称为“存贮器”。此外,还需求有能代替人作用的控制器,它能依据事前给定的指令宣布各种控制信号,使整个核算进程能一步步地进行。但是光有这三部分还不可,原始的数据与指令要输入,核算的作用要输出,都需求按先后次第进行,有时还需等候。

如上例中,当在核算163×156时,数字36就不能一同进入运算器。因此就需求在单片机上设置按控制器的指令进行动作的“门”,当运算器需求时,就让新数据进入。或许,当运算器得到终究作用时,再将此作用输出,而中心作用不能随意“溜出”单片机。这种对输入、输出数据进行必定处理的“门”电路在单片机中称为“口”(Port)。在单片机中,根柢上有三类信息在活动,一类是数据,即各种原始数据(如上例中的36、163等)、中心作用(如166÷34所得的商4、余数30等)、程序(指令的集结)等。这样要由外部设备通过“口”进入单片机,再存放在存贮器中,在运算处理进程中,数据从存贮器读入运算器进行运算,运算的中心作用要存入存贮器中,或终究由运算器经“出入口”输出。

用户要单片机施行的各种指令(程序)也以数据的办法由存贮器送入控制器,由控制器解读(译码)后变为各种控制信号,以便施行如加、减、乘、除等功用的各种指令。所以,这一类信息就称为控制指令,即由控制器去控制运算器一步步地进行运算和处理,又控制存贮器的读(取出数据)和写(存入数据)等。第三类信息是地址信息,其作用是告诉运算器和控制器在何处去取指令取数据,将作用存放到什么当地,通过哪个口输入和输出信息等。

存贮器又分为只读存贮器和读写存贮器两种,前者存放调试好的固定程序和常数,后者存放一些随时有可能改动的数据。断章取义,只读存贮器一旦将数据存入,就只能读出,不能更改(EPROM、E2PROM等类型的ROM可通过必定的办法来更改、写入数据——编者注)。而读写存贮器可随时存入或读出数据。深圳群艾迪科技主要从事各类IC编程器研发、烧录机、烧录器、自动烧录机、芯片自动烧录机、全自动烧录机、烧录编程器生产与销售,针对半导体工厂、芯片通路商、手机制造商、汽车电子、消费数码电子生产商及EMS代工厂等提供集成电路烧录、测试、返修服务提供商。

实践上,人们往往把运算器和控制器吞并称为中央处理单元——CPU。单片机除了进行运算外,还要结束控制功用。所以离不开计数和守时。因此,在单片机中就设置有守时器兼计数器,其根柢结构与本连载之(二)中的举例相似。到这儿间断,我们现已知道了单片机的根柢组成,即单片机是由中央处理器(即CPU中的运算器和控制器)、只读存贮器(一般标明为ROM)、读写存贮器(又称随机存贮器一般标明为RAM)、输入/输出口(又分为并行口和串行口,标明为I/O口)等等组成。实践上单片机里边还有一个时钟电路,使单片机在进行运算和控制时,都能有节奏地进行。其他,还有所谓的“接连系统”,这个系统有“传达室”的作用,当单片机控制方针的参数抵达某个需求加以干涉的情况时,就可经此“传达室”通报给CPU,使CPU依据外部事态的轻重缓急来选用恰当的唐塞办法。

现在,我们现已知道了单片机的组成,余下的问题是如何将它们的各部分连接成互相相关的整体呢?实践上,单片机内部有一条将它们连接起来的“枢纽”,即所谓的“内部总线”。此总线有如大城市的“干道”,而CPU、ROM、RAM、I/O口、接连系统等就散布在此“总线”的两旁,并和它连通。然后,全部指令、数据都可经内部总线传送,有如大城市内各种物品的传送都通过干道进行。

单片机指令系统与汇编语言程序

前面现已叙说了单片机的几个首要组成部分,这些部分构成了单片机的硬件。所谓硬件(Hardware),就是看得到,摸得到的实体。但是,光有这样的硬件,还仅仅有了结束核算和控制功用的可能性。单片机要实在地能进行核算和控制,还有必要有软件(Software)的协作。软件首要指的是各种程序。只需将各种正确的程序“灌入”(存入)单片机,它才调有效地作业。单片机所以能自动地进行运算和控制,正是因为人把结束核算和控制的进程一步步地用指令的办法,即一条条指令(Instruction)预先存入到存贮器中,单片机在CPU的控制下,将指令一条条地取出来,并加以翻译和施行。就以两个数相加这一简略的运算来说,当需求运算的数已存入存贮器后,还需求进行以下几步:

第一步:把第一个数从它的存贮单元(Location)中取出来,送至运算器。第二步:把第二个数从它地址的存贮单元中取出来,送至运算器;第三步:相加;第四步:把相加完的作用,送至存贮器中指定的单元。

全部这些取数、送数、相加、存数等等都是一种操作(Operation),我们把要求核算机施行的各种操作用指令的办法写下来,这就是指令。但是怎样才调差异和施行这些操作呢?这是在规划单片机时由规划人员赋予它的指令系统所选择的。一条指令,对应着一种根柢操作;单片机所能施行的全部指令,就是该单片机的指令系统(IustructionSet),不同品种的单片机,其指令系统亦不同。

运用单片机时,事前应当把要处理的问题编成一系列指令。这些指令有必要是选定的单片机能辨认和施行的指令。单片机用户为处理自己的问题所编的指令程序,称为源程序(SourceProgram)。指令一般分为操作码(Opcode)和操作数(Operand)两大部分。操作码标明核算机施行什么操作,即指令的功用;操作数标明参与操作的数或操作数地址的地址(即操作数所存放的当地编号)。因为单片机是一种可编程器件,只“认得”二进码(0、1)。要单片机运作,单片机系统中的全部指令,都有必要以二进制编码的办法来标明。例如,在Intel公司的MCS——51系列单片机中,从存贮器中取出一数到CPU中的累加器(在运算器中,参与运算、存放运算作用的专用存放器)的指令代码为74H,累加器内容加当即数的代码为24H,再加上当即数代码,累加器送数到内部RAM存贮器的代码为F6H——F7H等。这些指令是用十六进制标明二进制的机器码。

MCS——51单片机的字长为8位,有时,要结束某些操作用一个字节尚不能充分表达。所以,在指令系统中有单字节指令,也有多字节指令。机器码是由一连串的0和1组成,没有明显的特征,欠好回想,不易了解,易犯错。所以,直接用它来编写程序十分困难。因此,人们就用一些助记符(Muemonic)——一般是指令功用的英文缩写来代替操作码,如MCS——51中数的传送常用MOV(Move的缩写)、加法用Add(Addition的缩写)来作为助记符。这样,每条指令有明显的动作特征,易于回想和了解,也不简略犯错。用助记符来编写的程序称为汇编语言程序。但是,助记符编写的程序便于人了解,可单片机却只知道二进制机器代码,因此,为了让单片机能“读懂”汇编语言程序有必要再转换成由二进制机器码构成的程序,这种转换进程,就称为“汇编”。汇编可仰仗于人工查表法来结束,也可仰仗PC机通过所谓“穿插汇编程序”来结束。由机器码构成的用户程序一旦“进入”了单片机,再“发起”单片机,就可让它施行输入程序所规矩的任务。深圳群艾迪科技主要从事各类IC编程器研发、烧录机、烧录器、自动烧录机、芯片自动烧录机、全自动烧录机、烧录编程器生产与销售。

MCU--51CPU和存储器

单片机8051的CPU由运算器和控制器组成。

一、运算器

运算器以结束二进制的算术/逻辑运算部件ALU为中心,再加上暂存器TMP、累加器ACC、存放器B、程序情况标志存放器PSW及布尔处理器。累加器ACC是一个八位存放器,它是CPU中作业最再三的存放器。在进行算术、逻辑运算时,累加器ACC往往在运算前暂存一个操作数(如被加数),而运算后又保存其作用(如代数和)。存放器B首要用于乘法和除法操作。标志存放器PSW也是一个八位存放器,用来存放运算作用的一些特征,如有无进位、借位等。其每位的详细意义如下所示。PSWCYACFORS1RS0OV——P对用户来讲,最关心的是以下四位。

1进位标志CY(PSW7)。它标清楚运算是否有进位(或借位)。假定操作作用在最高位有进位(加法)或许借位(减法),则该位为1,不然为0。

2辅佐进位标志AC。又称半进位标志,它反映了两个八位数运算低四位是否有半进位,即低四位相加(或减)有否进位(或借位),如有则AC为1情况,不然为0。

3溢出标志位OV。MCS——51反映带符号数的运算作用是否有溢出,有溢出时,此位为1,不然为0。

4奇偶标志P。反映累加器ACC内容的奇偶性,假定ACC中的运算作用有偶数个1(如11001100B,其间有4个1),则P为0,不然,P=1。PSW的其它位,将在往后再介绍。因为PSW存放程序施行中的情况,故又名程序情况字?运算器中还有一个按位(bit)进行逻辑运算的逻辑处理机(又称布尔处理机)。其功用在介绍位指令时再说明。

二、控制器

控制器是CPU的神经中枢,它包括守时控制逻辑电路、指令存放器、译码器、地址指针DPTR及程序计数器PC、库房指针SP等。这儿程序计数器PC是由16位存放器构成的计数器。要单片机施行一个程序,就有必要把该程序按次第预先装入存储器ROM的某个区域。单片机动作时应按次第一条条取出指令来

东莞市艾迪科智能科技有限公司

深圳市艾迪科电子科技有限公司

咨询热线

陈海宇:131 4498 9178  

陈总:158 7691 2981   

微信扫一扫

东莞总公司:广东省东莞市塘厦镇鹿苑路162号7栋     深圳分公司:深圳市宝安区兴裕路与宝源路裕兴创谷A栋5楼513     

苏州办事处:苏州市相城区聚元街开元银座A座611室      

粤ICP备19038255号    网站管理