收藏 分享(赏)

单片机的基本组成.doc

上传人:精品资料 文档编号:7929461 上传时间:2019-05-30 格式:DOC 页数:9 大小:101KB
下载 相关 举报
单片机的基本组成.doc_第1页
第1页 / 共9页
单片机的基本组成.doc_第2页
第2页 / 共9页
单片机的基本组成.doc_第3页
第3页 / 共9页
单片机的基本组成.doc_第4页
第4页 / 共9页
单片机的基本组成.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

1、单片机的基本组成在讲单片机的组成之前我们先来说一下大家都熟知的计算机一、计算机的经典结构在设计计算机时匈牙利籍数学家冯.诺依曼提出的“程序存储”和“二进制运算”的思想。1、二进制运算决定了计算机的硬件结构。二进制运算包括二进制算术运算和逻辑运算(逻辑运算的基础是逻辑代数,又称布尔代数) 。逻辑量只表示两种不同的状态,可以对应电子线路中的电阻高低、二极管、三极管的通断等。因此,二进制运算决定了计算机可以由电子元器件,特别是集成电路组成。2、 程序存储决定了软件控制硬件工作。因此,计算机的基本结构包括硬件和软件两部分。计算机的工作原理:由输入设备将软件送入存储器,然后由控制器逐条取出存储器中的控制

2、软件,并运行,再将运行结果送到输出设备。3、计算机的经典结构根据以上思路,计算机由运算器、控制器、存储器和输入设备、输出设备组成。图 1.1.1 计算机经典结构图对经典结构中各部分有机组合,就构成了微型计算机。由于各部分的具体电路(元器件及元器件的组合方式)不同,又形成了各种应用形态。二、微型计算机(Microcomputer)组成及应用形态1、 微型计算机组成将经典结构中的运算器、控制器组合在一起,再增加一些寄存器等,集成为一个芯片,这个芯片称为微处理器(Microcontroller) ,即 CPU(Center Processing Unit )。这样微型计算机就由 CPU、存储器、输入

3、/输出(I/O)接口组成。再配以输入/输出(I/O)设备和软件,就构成了微型计算机应用系统,简称微型计算机。图 1.1.2 微型计算机系统结构图2、 应用形态(1)系统机(多版机)微处理器 CPU、存储器、I/O 端口电路和总线接口等组装在一块主板上,再通过系统总线和外设适配卡连接键盘、显示器、打印机等,再配上系统软件就构成了一个完整的计算机系统。图 1.1.3 微型计算机结构图这就是办公室、家庭使用的 PC 机的典型形态。由于较大的存储容量(存储器、硬盘、软盘、光盘等) ,输入、输出设备齐全,而且软件丰富(系统软件和应用软件) ,能够进行海量计算和应用系统开发。(2)单板机将 CPU、存储器

4、、 I/O 接口芯片和简单的 I/O 设备等装配在一块线路板上,再配上监控程序(固化在 ROM 中)就构成了单板机。图 1.1.4 单板机结构图实验开发系统就是单板机的典型形态:由于有硬件和软件,能独立运行,但 I/O 设备简单,特别是软件资源少(只有监控程序) ,不能应用于海量计算和大型应用程序的开发,主要用于计算机原理教学和简单的测试(调试)系统。三 单片机 将 CPU、存储器、 I/O 接口电路集成到一块芯片上,这个芯片称为单片机。图 1.1.5 单片机结构图单片机作为一片集成了微型计算机基本部件的集成电路芯片,与通用计算机相比,自身不带软件,不能独立运行;存储容量小,没有输入、输出设备

5、,不能将系统软件和应用软件存储到自身的存储器中并加以运行,它自身没有开发功能。所以,必须借助开发机(一种特殊的计算机系统)来完成开发任务。即相应的软、硬件设计和调试以及将调试好的程序固化到自身的存储器中。完成单片机的硬件和软件设计、调试,把软件固化(下载)到单片机应用系统中,是单片机原理与应用课程的主要学习任务,也是检查这门课程学习效果的基本标准。1、 单片机开发系统和单片机应用系统开发单片机开发系统又称为开发机或仿真机。单片机的实质仍然是计算机,其工作的基本条件就是软件配合硬件才能正常工作。但单片机自身没有开发能力。即不能用自身系统检查硬件故障和软件错误;也不能用自身的系统将软件程序写入自己

6、的存储器中。在设计计算机应用系统时,完成软件、硬件设计后,必须使用开发系统(其它设备)完成软件、硬件的测试和程序写入。完成这一目标的过程,称为单片机应用系统的开发。完成开发的设备,称开发系统(仿真器)2、 单片机应用系统开发方式 (1) 、仿真:利用开发机的资源(CPU、存储器、I/O 设备等)来模拟欲开发的单片机应用系统(即目标机)的 CPU、存储器和 I/O 操作,并跟踪目标机的运行情况。然后再将调试好的程序固化到目标机中。即把开发机上的单片机出借给目标机,因为开发机本身具有开发能力,通过开发机调试目标机,调试完成后,再把程序固化到目标机,目标机就可以独立运行了。1) 、独立型仿真机开发独

7、立型仿真器采用与单片机应用系统相同类型的单片机做成单板机形式,板上配有 LED 显示器和简单键盘, ,可以进行源程序的编辑、汇编、运行调试。2)利用非独立型仿真器开发独立式仿真器还配有串行按口,能与普通微机系统连接,利用普通微机系统配备的组合软件进行源程序的编辑、汇编和联机仿真器,用仿真器进行程序固化。(2)在系统与在应用仿真将单片机先安装到印制线路板上,然后通过 PC 机将程序下载到目标系统,实现在系统和在应用编程功能。具有这种功能的单片机内部必须具有 EPROM 或 FLAS 侦测逻辑电路,调试器和烧写器。如:SST 公司的 SST89E54, 89E58;MICROCHIP 公司PIC1

8、6F87X;ATMEL 公司的 AT89S5X 等单片机芯片均有此功能。3)MCS51 是美国 INTEL 公司生产的一个高档 8 位单片机系统的总称。属于这一系列,即以 51 为核心的单片机芯片主要有:8031/8051,8751;8032/8052;80C51/87C51/80C31;还有 ATMEL 公司的AT89S51,AT89S51 等品种,它们的工作原理和内部构架相同,引脚和指令系统相互兼容,主要在内部功能单元数量,存储器类型和容量以及应用上有些区别。一、单片机内部结构从功能上划分,MCS51 内部结构可以分为 5 个部分:CPU、存储器、I/O 端口、定时/ 计时器、中断系统。概

9、述:MCS51 结构图1、 CPU 结构8051 内部 CPU 是一个字长为 8 位的中央处理单元(center processing unit)它对数据的处理是按资字节为单位的。CPU 包括三部分:运算器、控制器和专用寄存器。(1) 运算器:由一个算术逻辑单元 ALL、一个布尔处理器和两个 8 位暂存器组成。能给实现数据的四则运算(加、减、乘、除) ,逻辑运算(与、或、非、异或等) ,数据传递,移位,判断,程序转移等功能。(2) 控制器:由指令寄存器 IR,指令译码器 ID,定时及控制逻辑电路等组成。指令寄存器 IR 保存当前正在执行的一条指令。指令的内容含指令操作码和地址码。操作码送往指令

10、译码器 ID,经译码后形成相应的微操作信号,地址码送往操作数地址形成电路,以形成实际的操作数地址。定时与控制部件完成取指令、执行指令、存取操作数和运算结果,向其它部件发出各种控制信号,协调各部件的工作。(3)专用寄存器:主要用来指示当前要执行指令的内存地址,存放操作数和指示指令执行后的状态。包括程序计数器 PC、累加器 A、程序状态字 PSW 寄存器,堆栈指示器 SP。数据指针 DPTR 寄存器和通用寄存器 B。1)程序计数器 PC( program counter)a)定义:程序计数器 PC 是一个二进制 16 位的程序地址寄存器,是由 16 个触发器构成的计数器。寻址范围 21664K 。

11、是 MCS-51 单片机中唯一一个 16 位寄存器。b)功能:用来存放将要执行指令的内存地址,CPU 既可以对它并行存取,又可自动加“1” 。迄今为止,世界上的所有电子计算机仍然是冯.诺依曼式的。这就是说,计算机的程序是以二进制形式存放在内存储器中,CPU 的任务是自动逐条执行已放入内存中的指令,以完成某项任务。为了确保 CPU 能自动连续执行程序,芯片设计师专门在CPU 中集成了一个程序计数器 PC,在程序执行前用来存放程序在内存中的起始地址。CPU 根据 PC 中的地址就可以到内存中取出第一条指令的第一个字节, PC 随后加“1” ,自动指向第一条指令的第二个字节;CPU 再根据 PC 就

12、可以取出第一个指令的第二个字节;PC 再次自动加“1”指向第一个指令的下一个字节或第二条指令的第一个字节。以此类推。这样,CPU 在执行完第一条指令时,PC 实际上已得到了第二条指令的起始地址。因此,人们只要在程序执行前预先把要执行的程序的指令码按照顺序放到程序存储器中,并把要执行的程序的起始地址放入程序计数器PC,CPU 就能让程序自动执行。PC 的自动加“1”功能确保了存储器中程序的连续执行。在单片机设计中,在电路结构上设计成单片机复位时 PC0000h,故,程序的首起始地址通常 0000h 开始。2)累加器(accumulator)a)定义:累加器 A 又记作 ACC,是一个具有特殊用途

13、的二进制 8 位寄存器。b)功能:专门用来存放操作数和运算结果。最初的计算机,其操作数包括四部分地址。操作码 第一操作数 第二操作数 结果操作数 下条指令地址操作码字段用于指示机器执行何种操作。第一操作数用于指示两个操作数中第一个操作数在内存中的地址;第二操作数可以使机器找到参加运算的第二个操作数;结果操作数用于存放操作结果。下一条指令地址,指示机器按此地址取出下一条要执行指令的指令码。这种指令格式的特点是层次、概念清楚,逻辑关系简单明了。缺点是指令码太长,严重影响了指令的执行速度。MCS-51 单片机采用了地址压缩技术,把四字段地址压缩到一个,故称单地址指令格式。其中“操作数”相当与四地址中

14、的“第一操作数” 。 “第二操作数”和“结果操作数”合二为一,由累加器 A 充任。物理地址为 E0H,且在操作码中隐含。在助记符中写有 A 等,只是为了便于理解,它的二进制代码是隐含在操作码中的。 “下一条指令地址由程序计数器 PC 充当。PC 自动加“1” ,就能使 MCS-51 连续按顺序执行程序。因此在指令执行前,用户通常必须要安排一条传送指令,预先把第二操作数传送到操作码 操作数累加器 A。3)通用寄存器 B(General Purpose Register)a)定义:通用寄存器 B 也是一个 8 位二进制的寄存器,是专门为乘法和除法设置的寄存器,但也是可以作为普通寄存器使用。b)功能

15、:在做乘法和除法之前,用来存放乘数和除数,在乘法和除法完成后,用来存放积的高八位和除法的余数。4)程序状态字 PSW(program status word)a)定义:程序状态字 PSW 也是八位二进制寄存器b)功能:用来存放指令执行后的状态(程序设计中,可以根据状态来控制程序执行) 。PSW 中有的位的值(状态) ,通常是在执行指令的过程中由硬件电路自动形成的,如:CY,AC,OV,P 位,有的也可以根据需要采用位送指令加以改变,如:FO,RSI,RSO 位。各位的定义如下:PSWCY AC FO RSI RSO OV _ P其中:CY(carry):进位标志位,用于表示加减运算过程中最高位

16、(累加器 A7)有无进位或借位。有进位或借位 CY=1,否则 CY=0。AC(auxiliary carry):辅助进位标志位,用于表示加减运算中累加器低四位(A 3)有无向高四位(A 4)进位或借位,有:AC=1,无:AC=0。F0(FLAG ZERO):用户标志位。它是用户根据需要通过传送指令确定的,用于决定用户程序的流向。RS1,RS0:寄存器组选择位,即它控制(选择)了当前使用的寄存器组,也就是它确定了当前使用寄存器组的物理地址。在 MCS-51 的片内存储器中,有 32 个 8 位寄存器,但这 32 位寄存器只给出了 8 个寄存器的地址。R 0-R7(通常用 Rn 表示) 。为了用这

17、 8 个地址表示 32 个寄存器(存储空间) ,只能将这 32 个寄存器进行分组,即分成 4 组。这样,用 R0-R7,即 Rn 就可以表示这 4 组中的任意一组中的一个寄存器(均是 8 位的) 。也就是说通过分组后,从逻辑上能用 Rn 把它们区分开来。如 R0-代表(第 0 组的)第一个寄存器,则 R5 就表示(第 0 组的)第六个寄存器。故将 Rn 称为这 32 个工作寄存器的逻辑地址。 “逻辑”概念的实质就是各组之间相互区分与屏蔽,达到方便保护其中数据的目的。但是,用 Rn只能区分某一组中的 8 个寄存器,具体使用了哪一组,还要其他条件,即 RS1 RS0。既然共有四组,可用 22 表达

18、。故可以通过改变 RS1 和 RS0 的值决定哪一组的 R0-R7。这对我们进行程序设计是非常有利的。OV(overflow)溢出标志位:提示运算结果是否发生了溢出,即累加器 A 中运算结果是否超出了其能表示的数的范围,即128127,由机器执行过程中自动形成。溢出OV=1,否则 OV=0。人们可以根据 OV 的状态判断结果是否正确。计算公式为:OVCP CSCP* *CSCSP其中 CP 为最高进位位,CS 是次高进位位。P(Pority):奇偶标志位。用于指示运算结果中“1”的个数的奇偶行。机器执行中自动形成。若“1”的个数为奇数,则 P=1 ,为偶,P=0。5)堆栈指针 SP(STACK

19、 POINTER)a)定义: SP 是一个 8 位寄存器,能自动加“1”或减“1”b)功能:专门用来寄放堆栈的栈顶地址。MCS51 中,在片内 RAM 中设置了一个特殊的存储区。CPU 对这个区域的数据存取时必须按照“先进后出”或“后进先出”的原则进行。这样的特殊存储区域称为堆栈。为了实现对堆栈中数据的操作,芯片设计者在 CPU 中设计了一个堆栈指示器 SP,存放堆栈元顶地址。SP 具有自动加“1”或减“1”功能,使得 SP 中的数据始终是栈顶地址。CPU 根据 SP 中的地址对堆栈中的数据进行存取。在 SP 中地址的变化方向上,MCS-51 采用的是上推堆栈的设计方案,即数据入栈时 SP 中

20、地址增长,故当堆栈中没有数据时,栈顶与栈底地址必定重合。8051 的片内共有 128B 的 RAM 存储单位,地址范围为 00HFFH,原则上,这个区域中的任何子域都可以作为堆栈区。实际应用中,常使用 30H-7FH 中的部分空间作为堆栈区。堆栈在片内 RAM 中的具体物理位置,由堆底决定。可以用下列指令定义:mov sp,#data这样就定义了从 data+17FH 为堆栈区6)数据指针 DPTR(DATA POINTER)a)定义: DPTR 是一个 16 位寄存器,由两个 8 位寄存器 DPH 和 DPL 拼接而成。b)功能:用来存放片内 ROM 的地址,也可用来存放片内外 RAM 和

21、ROM 的地址。2、 存储器MCS-51 的存储器不仅有 ROM 和 RAM 之分,而且有片内和片外之分。 MCS-51 片内存储器集成在芯片内部,是 MCS-51 的一个组成部分;片外存储器是外按的专用存储器芯片。MCS-51 只提供地址和控制命令,需要通过印刷电路板上三总线才能联机工作。在物理上设有 4 个存储空间片内程序存储器程序存储空间 ROM片外程序存储器片内数据存储器数据存储空间 RAM片外数据存储器MCS-51 对这些空间的存取(访问)是通过不同的控制信号和不同的指令进行的。故这 4 个物理空间在逻辑上,又可以划分为 3 个逻辑空间,即:片内,片外统一编址的 64KROM片内 1

22、28B 数据存储空间, SFR片外,64K 数据存储空间MCS-51 存储器的地址分配是教材 P24,图 2.12 和图 2.13片内 RAM:80C51 片内 RAM 共有 128B 存储单元,分为工作寄存器区 (00H 1FH ),位寻地址(20H2FH )和通用寄存器区(30H 7FH) 。工作寄存器用 Rn(R0-R7) 进行逻辑区分,再配合 RS1,RS0位寻地址(P 27 表 2.3)的 16 个单元具有双重功能,它们既可以进行字节存取,又可以进行位存取。进行位存取时,位地址的表示方法有两种,一种就是直接分配给每一位一个特定的地址(168128 位)故其地址范围为 00H7FH,见

23、 P27 表 2.3;另一种方法是采用字节地址和位数相结合的方法表示某一位地址,如 09H 这个位可以表示成21H.1。在 MCS-51 单片机中,还设置 21 个特殊功能寄存器(SFR)。特殊功能寄存器(SPECIAL FUNETIN REGIDTER)是 MCS-51 的各功能部件的状态及控制寄存器。SFR 综合的,实际的反映了整个单片机的基本系统内部的工作状态及工作方式。它们与片内 RAM 统一编址,它们离散地分布在 80H-FFH 的地址空间中,字节地址能被 8整除的(即十六进制的地址码尾数为 0 或 8 的)单元 可以进行字节寻址或位寻址。访问 SFR 只允许用直接寻址方式,而且地址

24、的表示方法也只能用符号地址或物理地址(即要用寄存器的名称符号,而不是寄存器号。如累加器的名称符号为 ACC,它的寄存器号为 A) 。P 28 表 2.4。3、 I/O 端口I/O 端口,也称为 I/O 接口或 I/O 通路功能:是 MCS-51 与外部实现控制和交换的通道,分为并行端口和串行端口。(1)并行 I/O 端口80C51 有 4 个 I/O 端口,分别为 P0P3,它们都有双向功能 每个端口都有一个 8 位数据输出锁存器和一个 8 位的数据输入缓冲器。4 个锁存器与端口名称相同,皆为 SFR 中的一个。由于 4 个端口的结构不同,它们的功能和作用也不同,通常 P0 口作为低 8 位地

25、址输出口,同时又可以用作数据输入/输出口,故其后一般跟一个地址锁存器对低位地址锁存。P 2 口作为高 8 位地址输出口,还可以用作译码控制信号。P 1 口常用作通用 I/O 口,为 CPU 传送用户数据。P 3 口除作为通用 I/O 端口外,还具有第二功能。P 29 表 25当 4 个口作为通用的 I/O 口是,共有三种操作方式,其含义为:写端口:即写到端口,就是把 CPU 中的 A 或其它寄存器中的数据传送到端口锁存器中,然后由端口自动输出到引脚线上。读端口:即读出端口,就是把端口锁存器中的数据输送到累加器 A 中。读引脚:即读出引脚,就是把引脚上的外部数据输送到内部。读引脚时一定要先关断端

26、口,即先将端口锁存器置位,这样锁存器的输出使驱动器 T3 截止,引脚上的信号就可以通过三态缓冲器输入到内部总线上。故读引脚时,必须同时有两条指令:ORL P1,#0FFHMOV A,P1(2)串行 I/O 端口80C51 是具有一个全双工可编程串行 I/O 端口。故可以由 TXD 串行发出,又可以由 RXD 串行接收。它们都利用了 P3 口的第二功能:RXD(P3.0),TXD(P3.1)。注:串行通信的三种方式:1) 、单工方式:数据只能向一个方向传输。 2) 、半双工方式:允许数据向两个方向传输,但不能同时传输,只能交替进行。因此,可以利用一条传输线进行两个反方向的数据传送。发射器 接收器发射器 接收器3) 、全双 工方式:数据可以同时向两个相反方向 传输,因此,需要两条独立的数据通道分别传送两个相反方向数据。4、 定时/计数器:80C51 中有 2 个 16 位的定时 /计数器 T0,T1,它们有定时和计数两种模式。具体内容在以后章节中专门讨论。5、 中断系统80C51 可以处理 5 个中断源发出的中断请求,其中 2 个外部中断请求 INT0,INT1,2 个内部定时/计数器中断请求 T0,T1,一个内部串行口中断请求。具体内容在以后章节中专门讨论。接收器 发射器发射器 接收器接收器 发射器

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报