300 likes | 463 Views
计算机硬件技术基础. 主讲:焦明海 东北大学计算中心. 第十章 单片微型机. §10.1 单片机及其特点 §10.2 单片机的发展和应用 §10.3 Intel 单片机系列简介 §10.4 MCS-51 单片机. §10.1 单片机及其特点.
E N D
计算机硬件技术基础 主讲:焦明海 东北大学计算中心
第十章 单片微型机 §10.1 单片机及其特点 §10.2 单片机的发展和应用 §10.3 Intel单片机系列简介 §10.4 MCS-51单片机
§10.1 单片机及其特点 单片机全称单片微型计算机(Single-Chip Microcomputer)。它是将组成一台计算机所需的基本部件,包括中央处理单元(CPU)、存储器(RAM、ROM或EPROM)、定时器/计数器和一些输入输出接口集成在1个芯片上的一种计算机芯片。由于1个芯片就包含了1台计算机的基本组成,因而得名单片机。
§10.1 单片机及其特点 典型单片机基本结构
§10.2 单片机的发展和应用 被公认为第一代单片机的代表产品是Intel公司1976年推出的8位单片机804(MCS-48系列产品)。第一代单片机功能较弱,片内含CPU、存储器、并行I/O接口、8位定时/记数器,但无串行I/O接口。 1982年Mostek公司推出了16位单片机68200,1984年Intel公司推出16位单片机8096。有人把16位单片机称为第三代产品。 在国内,形成主流的也是Intel公司的三大系列,MCS-48、MCS-51和MCS-96。其中MCS-51系列单片机,尤为受到我国广大工程技术人员所推崇,应用势头正旺。
§10.3 Intel单片机系列简介 10.3.1 MCS-48系列单片机 一片8048包括如下部分:8位CPU,1k字节ROM程序存储器,64字节RAM数据存储器,27根I/O口线和一个8位定时/计数器。 其它产品有8049、8050、8035、8039、8748、8749、8750、8040、8041、8741等单片机。它们的引脚和指令系统与8048完全兼容,所不同是主要是片内的RAM和ROM供应情况。
§10.3 Intel单片机系列简介 10.3.1 MCS-48系列单片机
§10.3 Intel单片机系列简介 10.3.2 MCS-51系列单片机 MCS-51系列单片机有8051、8751、8031、8052、8032、8044、8744、8344等。它们的引脚和指令系统完全兼容。与MCS-48系列相比,MCS-51系列单片机扩大了片内存储器容量和外部存储器寻址空间,增强了并行I/O接口和定时/计数器等功能,增加了一个全双工串行I/O接口.
§10.3 Intel单片机系列简介 10.3.2 MCS-51系列单片机
§10.3 Intel单片机系列简介 10.3.3 MCS-96系列单片机 MCS-96系列是16位高性能单片机,包括8094、8095、8096、8097、8098、8394、8395、8396、8397、8398、8795、8796、8797等产品。典型产品是8096。这类单片机能胜任更高要求的实时控制和数字处理场合,特别是需要进行复杂运算和高速控制的场合。与MCS-48、MCS-51系列相比,MCS-96单片机除了扩大了片内存储器容量,加强了中断功能外,还增加了高速输入输出接口、4路或8路A/D转换器、脉冲宽度调制输出(可作D/A转换)以及监视定时器。
§10.3 Intel单片机系列简介 10.3.3 MCS-96系列单片机
§10.4 MCS-51单片机 8051的基本组成如下: (1) 一个8位的CPU; (2) 21个特殊功能寄存器; (3) 32线并行I/O口; (4) 1个全双工串行I/O口; (5) 2个16位计数器/定时器; (6) 5个外部中断输入端,分为2个中断优先级; (7) 128字节片内数据存储器RAM,另有128字节特殊寄存器(统称256字节RAM); (8) 4K字节片内程序存储器ROM; (9) 外部可扩展64K RAM; (10) 外部可扩展64K ROM; (11) 外接时钟/振荡器,频率范围为1.2MHz~12MHz
§10.4 MCS-51单片机 8051功能部件图
§10.4 MCS-51单片机 8051引脚
§10.4 MCS-51单片机 10.4.3 MCS-51功能部件 1. 中央处理器(CPU) MCS-51的中央处理器由算术逻辑部件ALU、一系列的专用寄存器和定时控制逻辑等组成。 (1) 算术逻辑部件ALU 8051的ALU与典型微处理器的ALU相似,它对传送到CPU的数据执行算术/逻辑操作,具体说就是完成8位二进制加、减、乘、除、比较等算术运算以及与、或、非、异或、置位/清0、取反等逻辑运算。此外ALU还具有很强的位处理功能,可按位置1/清0、取反、逻辑与、逻辑或等,这使8051广泛应用于控制领域。
§10.4 MCS-51单片机 (2) 专用寄存器 ① 累加器A 累加器A是8051的核心,许多指令都是围绕累加器设计的。它在算术、逻辑运算中存取操作数和运算结果,在数据传送中作为源或目的操作数。 ② 寄存器B 寄存器B配合累加器执行乘除运算指令操作。一般在寄存器B中存放第二操作数、乘积的高位字节和除法的余数。在执行其它指令时,也可用作一般暂存寄存器。 ③ 位累加器C 8051还有一个位累加器C,用以进行位操作。任何一个可寻址的位都可与位累加器C进行与、或等逻辑操作,结果存放于位累加器C中。也可通过位累加器C进行位的传送操作。
§10.4 MCS-51单片机 ④ 程序状态字PSW 程序状态字PSW是一个8位寄存器,它存放状态标志,状态标志中一部分是运算过程中产生的,另一部分可由用户通过软件进行设置。 ⑤ 堆栈指针寄存器SP 8051的堆栈可以位于RAM中任何一个连续区域,用户通过对SP编程便可定义堆栈区。在CPU响应中断或调用子程序时,程序计数器PC值入栈,入栈前SP先自动加1。当复位或刚刚加电时,SP总是指向07H,这样如用户未定义SP,则第一个推入堆栈的数放在08H单元。 ⑥ 数据指针寄存器DPTR DPTR是一个16位地址寄存器,通常作间址寄存器用,也可拆成DPH和DPL两个独立的8位寄存器。
§10.4 MCS-51单片机 (3) 定时控制部分 8051通过XTAL1和XTAL2跨接到外部晶体振荡器的两端就得到了振荡信号,此信号由片内反相放大器放大整形后,便得到时钟信号。时钟频率为1.2MHz~12MHz。在使用多个8051的系统中,为了芯片之间的同步,可采用外部时钟信号,外部时钟由XTAL2端输入,XTAL1端则接地,外部时钟频率一般低于12MHz。 8051的机器周期由12个时钟信号组成,被分为6个状态,称为S1~S6;每个状态分为两个相位,称为相位1(P1)和相位2(P2),所以,可对一个机器周期的12个时钟周期编号为S1P1~S6P1、S1P2~S6P2。8051执行大多数指令都只用一个机器周期,只有少数指令用2个机器周期执行,而乘、除指令要用2个以上的机器周期。
§10.4 MCS-51单片机 2. 存储器结构 MCS-51系列单片机的存储器结构与典型的微处理器结构(冯·诺依曼结构)不同,它的程序存储器和数据存储器是完全分开的,属于Harvard结构。通常,单片机的存储器从物理上分为片内程序存储器、片外程序存储器、片内数据存储器和片外数据存储器。对8051来说,可以将这四个物理部分归为三个逻辑存储空间: 64k字节程序存储器地址空间,包括片内和片外; 64k字节片外数据存储器; 256字节片内数据存储器; 为了编程方便,MCS-51系列也把累加器A、寄存器B和状态寄存器PSW等各寄存器和数据存储器统一编址。
§10.4 MCS-51单片机 8051存储器组织
§10.4 MCS-51单片机 2. 存储器结构 (1) 程序存储器 MCS-51单片机的程序存储器可达64K字节,对于8051/8751片内有4K字节的ROM/EPROM,地址空间为0000H~0FFFH。若程序存储器容量不够,可以扩展外部存储器。8031无内部程序存储器,需要用EPROM在外部扩展。 (2) 数据存储器 8051的数据存储器分为内部数据存储器和外部数据存储器两大部分。前者为256字节,后者达64K字节。
§10.4 MCS-51单片机 8051的片内数据存储器
§10.4 MCS-51单片机 2. 存储器结构 (3) 特殊功能寄存器区SFR 8051具有20多个特殊功能寄存器(Special Function Register),除了四个工作寄存器组和程序寄存器PC外,其它寄存器都在此区。 3. 并行I/O口 8051有4个8位双向并行I/O口,即P0、P1、P2和P3,共32位。每位都有独立的锁存器、输入缓冲器和输出驱动器。 4. 定时/计数器 8051内部有两个可编程的16位定时/计数器,即定时计数器0和定时/计数器1。它们既可以工作在定时方式,也可以工作在计数方式。
§10.4 MCS-51单片机 5.串行I/O口 8051内部有一个全双工的串行I/O口,大大方便了与外界的数据交换。 所谓全双工,就是可以同时进行数据的发送和接收。8051的全双工I/O口可做通用异步接收/发送器(UART)用,也可做同步移位寄存器用。串行口的发送和接收是通过对2个串行口缓冲器SBUF的访问进行的。发送时,将数据写入发送SBUF;接收时,从接收SBUF中读取数据。 6.中断系统 8051允许5个中断请求源,提供2个中断优先级,可实现二级中断服务嵌套。每个中断源均可由用户编程选择为高优先级或低优先级中断。
§10.4 MCS-51单片机 8051串行口的结构原理
§10.4 MCS-51单片机 10.4.4 MCS-51寻址方式和指令系统 1. 寻址方式 MCS-51单片机指令操作数的寻址方式有寄存器寻址、直接寻址、寄存器间接寻址、立即寻址、基址加变址寻址、位寻址和相对寻址等7种方式。 (1) 寄存器寻址 例如: MOV A,R3;把寄存器R3的内容送累加器A (2) 直接寻址 例如: ADD A,30H (3) 寄存器间接寻址 8051规定工作寄存器R0或R1可作为间接寻址寄存器。例如:MOV A,@R0
§10.4 MCS-51单片机 10.4.4 MCS-51寻址方式和指令系统 (4) 立即数寻址 立即数数有一字节和两字节两种。“#”为立即数标记。例如: MOV A,#64H (5) 基址加变址寻址 例如:MOVC A,@A+DPTR (6) 位寻址 位地址范围从00H~7FH。例如: CPL 08H (7) 相对寻址 相对寻址是以程序计数器PC的内容为基址,加上指令中给定的偏移量后所得结果作为有效地址。 例如:JC 55H
§10.4 MCS-51单片机 10.4.4 MCS-51寻址方式和指令系统 2.指令系统 (1)数据传送指令 (2) 算术运算指令 (3) 逻辑运算指令 (4) 控制转移指令 (5) 空操作指令 (6) 位操作指令
§10.4 MCS-51单片机 10.4.5 MCS-51系统扩展与开发 1.存储器扩展 单片机内部的程序存储器容量、数据存储器容量、I/O端口数目、计数器/定时器数目和中断请求端数目都是有限的,所以,常常需要进行功能扩展,尤其是前三者的扩展更为常用。 2. 单片机的开发 (1) 单片机开发步骤 单片机的开发,就是单片机应用系统(目标机)的研制,它包括四大部分:总体设计、硬件开发、软件开发和目标机测试。
§10.4 MCS-51单片机 10.4.5 MCS-51系统扩展与开发 (2) 单片机开发工具 开发工具(开发系统)是指为开发目标机而设计的计算机系统。 微机开发系统MDS(Microcomputer Development System)是开发微机的重要工具。开发系统有通用开发系统、专用开发系统以及由在线仿真器与个人计算机结合使用的简易开发系统等等。通用开发系统能开发多种微机机型,专用开发系统则只能开发个别机型。