第三章 计算机系统 的组成与工作原理 本章学习目标...

150
1 0 : 1 5 : 5 2 1/150 第第第 第第第第第第第第第第第第 第第第第第第 第第第第第第第第第第第第第 第第第第第第第第 第第第第第 I/O 第第第第 第第第第第第第第第 第第第第第

Upload: dyani

Post on 15-Jan-2016

185 views

Category:

Documents


0 download

DESCRIPTION

第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成. §3.1 模型机的结构及工作过程. 一、模型机的结构简介 模型机的主要构成: 三总线 ( 地址总线、数据总线和控制总线 ) 中央处理器( CPU ) 存储器 I/O 接口. 图 3-1 模型机的结构. 1 、中央处理器的组成 中央处理器( CPU )由 运算器 和 控制器 组成。 ( 1 )运算器 定义 : 运算器是计算机中加工和处理数据 的功能部件。 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 1/150

第三章 计算机系统 的组成与工作原理本章学习目标

理解模型机的结构及工作过程 掌握单片机的结构掌握单片机 I/O 口的使用掌握单片机应用系统的典型构成

Page 2: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 2/150

§3.1 模型机的结构及工作过程一、模型机的结构简介模型机的主要构成:

•三总线 ( 地址总线、数据总线和控制总线 )•中央处理器( CPU )•存储器•I/O 接口

Page 3: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 3/150

CPU 总线

标 志

地址总线AB

程序

数据

数据总线DB

控制总线CB

、、、指令1指令2指令3指令4、、、、、、

数据1数据2数据3、、、控制电路

地址寄存器

PC程序

累加器A

ALU

存储器

标志寄存器

指令寄存器

数据寄存器

控制电路

指令译码器

地址寄存器

PC程序计数器

寄存器组

累加器A

ALU

微操作信号发生器

图 3-1 模型机的结构

Page 4: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 4/150

1 、中央处理器的组成中央处理器( CPU )由运算器和控制器组成。( 1 )运算器

定义:运算器是计算机中加工和处理数据 的功能部件。

功能:对数据进行加工处理,主要包括算 术和逻辑运算,如加、减、乘、 与、或、非运算等。另外,还暂时 存放参与运算的数据和中间结果。

Page 5: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 5/150

运算器组成部分算数逻辑单元 ALU ( Arithmetic Logical Unit ):主要完成算术、逻辑运算。累加寄存器(简称累加器) A :用于存放操作数或运算结果。寄存器组:由其它寄存器组成,主要用于存放操作数或运算结果。标志寄存器 F :存放运算结果的标志(零、正负、进位、溢出等)。

Page 6: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 6/150

( 2 )控制器

功能:控制器用于控制和指挥计算机内各功能部件协调动作,完成计算机程序功能。

Page 7: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 7/150

控制器组成程序计数器 PC ( Program Counter ):用于存放将要取出的指令地址,指令取出后,其内容自动加 1 。指令寄存器 IR ( Instruction Register ):用于存放指令的操作码。指令译码器 ID ( Instruction Decode ):用于将指令的操作码翻译成机器能识别的命令信号。微操作信号发生器 MOSG ( Microoperation Signal Generator ):用于产生一系列微操作控制信号。地址寄存器 AR ( Address Register ):用于存放操作数或结果单元的地址。数据寄存器 DR ( Data Register ):用于存放操作数。

Page 8: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 8/150

控制器种类 根据产生微操作控制信号的方式不同

组合逻辑控制型存储逻辑型组合逻辑存储逻辑结合型

根本区别在于微操作信号发生器的实现方法不同 .

Page 9: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 9/150

组合逻辑型控制器优点:其微操作信号发生器是由门电路组成的复杂树状网络构成的。最大优点是速度快。缺点:微操作信号发生器结构不规整,设计、调试、维修较困难,难以实现设计自动化。一旦控制部件构成后,难以增加新的控制功能。

目前仅有一些巨型机和 RISC 机为追求高速度仍采用组合逻辑控制器。

Page 10: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 10/150

存储逻辑型控制器优点:采用存储逻辑来实现,即把微操作信号代码化,使每条机器指令转化成为一段微程序,存入控制存储器中,微操作控制信号由微指令产生。 它具有设计规整,调试、维修、更改、扩充指令都方便的优点,易于实现自动化设计,已成为当前控制器的主流。缺点:由于它增加了一级控制存储器,所以指令的执行速度比组合逻辑控制器慢。

Page 11: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 11/150

PLA 控制器组合逻辑与存储逻辑结合型的控制器称为 PLA控制器,它是吸收前两种控制器的设计思想来实现的。PLA 控制器实际上也是一种组合逻辑控制器,但它又与常规的组合逻辑控制器的硬连结构不同,它是程序可编的,某一微操作控制信号由PLA 的某一输出函数产生。PLA 控制器是组合逻辑技术和存储逻辑技术结合的产物,它克服了两者的缺点,是一种较有前途的方法。

Page 12: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 12/150

图 3-2 微操作信号发生器的基本结构示意图

Page 13: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 13/150

2 、存储器的结构功能:主要用于保存程序和数据。

组成部分:包含地址译码器、存储单元和 控制逻辑。

Page 14: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 14/150

存储器访问过程( 1 )读操作 CPU首先将地址寄存器 AR 的内容放到地

址总线 AB 上,地址总线上的内容进入地址译码器,由地址译码器进行译码,选通相应的存储单元。被选通的存储单元的内容就出现数据总线上,在控制信号的作用下,CPU从数据总线上读取数据到数据寄存器DR ,从而完成存储器的读操作。

Page 15: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 15/150

( 2 )写操作 CPU 将地址寄存器 AR 的内容送到地址总

线 AB 上,地址总线上的内容进入地址译码器,由地址译码器进行译码,以选通相应的存储单元。在控制信号的作用下, CPU将要写入的数据通过数据总线写入到被选通的存储单元,完成存储器的写操作。

Page 16: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 16/150

二、模型机的工作过程

工作过程读取指令分析指令执行指令保存结果

在进行计算之前,应做如下工作:用助记符号指令(汇编语言)编写源程序);用汇编软件(汇编程序)将源程序汇编成计算机能识别的机器语言程序;将数据和程序通过输入设备送入存储器中存放。

Page 17: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 17/150

下面举例说明计算机程序的具体执行过程。例如,计算 7+10=? ,结果在 A 中。

汇编语言语句 机器码 注释

MOV A, 07H B0H 07H ; 07送入累加器 A

ADD A, 0AH 04H 0AH ; 10与 A中内容相加,结果在 A中

HLT F4H ;暂停

Page 18: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 18/150

假设上述程序在存储器中的存储格式(设程序从 00H开始存放)如图所示。

地址 存储内容00H B0H

01H 07H

02H 04H

03H 0AH

04H F4H

图 3-3 示例程序机器码在存储器中的存储格式

Page 19: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 19/150

读取指令阶段的执行过程如下:CPU 将程序计数器 PC 的内容 00H送地址寄存器 AR 。程序计数器 PC 的内容自动加 1变为 01H ,为取下一条指令作好准备。地址寄存器 AR 将 00H通过地址总线 AB送至存储器地址译码器译码,选中 00H 单元。CPU 发出“读”命令。所选中的 00 单元的内容 B0H 由存储器送至数据总线 DB 上。

Page 20: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 20/150

经数据总线 DB , CPU 将读出的内容 B0H送至数据寄存器 DR 。数据寄存器 DR 将其内容送至指令寄存器 IR 中,经过译码, CPU“ 识别”出此操作码为两字节指令的第一个字节,再取出下一个字节后得知是“ MOV A , 07H” 指令,于是控制器发出执行这条指令的控制命令。

Page 21: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 21/150

读取第一条指令第一个字节的示意图如图所示。

PC

AR

ALU

A BDR

IR

ID

MOSG00H

1

00H

2

00 B0H01 07H02 04H03 0AH04 F4H

3

4

读命令

B0H

5 6

B0H

7

控制信号

图 3-4 读取第一条指令第一个字节的示意图

Page 22: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 22/150

执行指令阶段的执行过程如下:CPU 将程序计数器 PC 的内容送地址寄存器 AR 。程序计数器 PC 的内容自动加 1变为 02H ,为取下一条指令作好准备。地址寄存器 AR 将 01H通过地址总线送至存储器地址译码器译码,选中 01H 单元。CPU 发出“读”命令。所选中的 01H 单元的内容 07H读至数据总线 DB 上。经数据总线 DB ,读出的内容 07H送至数据寄存器 DR 。由控制码计算机确定读出的是立即数,并要求将它送入累加器 A 中,所以数据寄存器 DR通过内部总线将 07H送入累加器 A 中。

Page 23: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 23/150

执行第一条指令的示意图如图所示。

PC

AR

ALU

A B

DR

IR

ID

02H

1

01H

2

00 B0H01 07H02 04H03 0AH04 F4H

3

4

读命令

07H

5 6

7

控制信号

07H

MOSG

图 3-5 执行第一条指令示意图

Page 24: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 24/150

执行第二条指令的取指过程与第一条相同,只是指令码地址不同。经过对第二条指令操作码的分析(译码)得知第二条指令为加法指令,执行过程如下:

程序计数器 PC 的内容送 AR 。程序计数器 PC 的内容自动加 1并回送 PC 。地址寄存器 AR 的内容经地址总线 AB送到存储器地址译码器。

Page 25: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 25/150

CPU 发出“读”命令。所选中的 03H 单元的内容 0AH送到数据总线DB 。数据总线 DB 上的内容送数据寄存器 DR 。数据寄存器 DR 的内容经 B 寄存器送算术逻辑单元 ALU 的一端。累加器 A 的内容送 ALU 的另一端。ALU相加的结果输出到 A 。

Page 26: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 26/150

执行第二条指令的操作示意图如图所示。

图 3-6 执行第二条指令操作示意图

PC

AR

ALU

A B

IR

ID

MOSG04H

1

03H

2

00 B0H

01 07H

02 04H

03 0AH

04 F4H

3

4读命令

DR

0AH

5 6

7

07H 0AH

11H控制信号

9 8

Page 27: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 27/150

一、单片机的内部结构

单片微型计算机(简称单片机)在一片芯片上集成了前述微型计算机的功能结构,有些单片机不仅集成了 CPU 、存储程序和数据的存储器、 I/O 接口、定时 / 计数器等常规资源,而且还集成了工业测控系统中常用的模拟量模块。

§3.2单片机的结构

Page 28: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 28/150

单片机产品8051 内核是 Intel 8051 系列单片机的基本标准,许多参考书上将这种单片机称为 MCS-51 系列单片机。MCS-51 系列单片机的典型产品为 8051 ,它有 4K×8ROM , 128字节 RAM , 2个 16 位定时 / 计数器, 4个 8 位 I/O 口,一个串行口。二十世纪 80年代, Intel 将 8051 内核转让或出售给几家著名的 IC厂商,如 Philips , Atmel 等。这样, 8051 单片机就变成众多制造厂家支持的,发展成为上百个产品的大家族。最常用的宏晶 STC 系列单片机, Atmel公司的 AT89系列等 51 系列,等等。只要是 8051 内核的单片机,它们的最基本结构是相同的,并且,指令系统完全兼容标准 8051 单片机。

Page 29: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 29/150

以目前市场上常见的 8051 内核单片机 STC15F2K60S2 为例,说明单片机的内部结构。 STC12C5A60S2 单片机主要集成了以下资源:

增强型 8051 内核,单时钟机器周期,速度比传统 8051 内核单片机快 8~12倍60KB Flash 程序存储器 ;1KB 数据 Flash;2048字节的 SRAM3个 16 位可自动重装载的定时 / 计数器( T0 、 T1 、 T2 )可编程时钟输出功能 至多 42 根 I/O 口线 2个全双工异步串行口( UART )1个高速同步通信端口( SPI ) 8通道 10 位 ADC3通道 PWM/ 可编程计数器阵列 /捕获 / 比较单元内部高可靠上电复位电路和硬件看门狗 内部集成高精度 R/C 时钟,常温工作时,可以省去外部晶振电路。

Page 30: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 30/150

XRAM1792字节

串口1

Port1锁存器

RAM地址寄存器

ISP/IAP

程序存储器

Port1驱动器

控制单元

定时器/计数器0/1/2

RAM256字节

堆栈指针

程序计数器(PC)

看门狗(WDT)

SPI

PCA/PWM

ALU

PSW

B寄存器

ACC

TMP1

地址生成器

串口2

Port0,2,3,4,5锁存器

Port0,2,3,4,5驱动器

ADC

8P1.0~P1.7

P1.0~P1.7

P0,P2,P3,P4,P5

内部复位逻辑

内部高精度R/C振荡器

TMP2

数据Flash存储器

图 3- 7 STC15F2K60S2 单片机的内部结构图

STC15F2K60S2单片机内部结构框图

Page 31: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 31/150

STC15F2K60S2 单片机的内部资源

中央处理器( CPU ) 程序存储器( Flash )数据存储器( RAM )数据 Flash 存储器定时 / 计数器I/O 接口通用异步串行通信接口( UART )中断系统SPI 接口高速 A/D 转换模块PWM (或捕获 / 比较单元)看门狗电路电源监控片内 RC振荡器等模块

几乎包含了数据采集和控制中所需的所有单元模块, —————可称得上一个片上系统( SOC )

Page 32: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 32/150

1 、 CPU 结构 单片机的中央处理器( CPU )由运算器和

控制器组成。( 1 )运算器 以 8 位算术 / 逻辑运算部件 ALU 为核心,

加上通过内部总线而挂在其周围的暂存器 TMP1 、 TMP2 、累加器 ACC 、寄存器 B 、程序状态标志寄存器 PSW 以及布尔处理机组成了整个运算器的逻辑电路。

Page 33: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 33/150

算术逻辑单元 ALU :用来完成二进制数的四则运算和布尔代数的逻辑运算。累加器 ACC 又记作 A :是一个具有特殊用途的 8 位寄存器,在 CPU 中工作最频繁,用来存放操作数和运算结果。寄存器 B :是专门为乘、除法设置的寄存器,也是一个 8 位寄存器,用来存放乘法和除法中的操作数及运算结果,对于其他指令,它只作暂存器用。程序状态字( PSW ):又称为标志寄存器,一个 8 位寄存器,用来存放执行指令后的有关状态信息,供程序查询和判别之用。

Page 34: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 34/150

PSW 中有些位的状态是在指令执行过程中自动形成的,有些位可以由用户采用指令加以改变。PSW 的各位定义如下所示:

位号 D7 D6 D5 D4 D3 D2 D1 D0

符号 CY AC F0 RS1 RS0 OV F1 P

Page 35: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 35/150

CY( PSW.7 ):进位标志位 当执行加 / 减法指令时,如果操作结果的最高位

D7 出现进 /借位,则 CY置“ 1” ,否则清“ 0” 。执行乘除运算后, CY清零。此外, CPU 在进行移位操作时也会影响这个标志位。

位号 D7 D6 D5 D4 D3 D2 D1 D0

符号 CY AC F0 RS1 RS0 OV F1 P

Page 36: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 36/150

AC( PSW.6 ):辅助进位标志位 当执行加 / 减法指令时,如果低四位数向高四位数产生进 /借位,则 AC置“ 1” ,否则清零。

位号 D7 D6 D5 D4 D3 D2 D1 D0

符号 CY AC F0 RS1 RS0 OV F1 P

Page 37: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 37/150

F0( PSW.5 ):用户标志 0 。 该位是由用户定义的一个状态标志。可以用软件

来使它置“ 1” 或清“ 0” ,也可以由软件测试 F0控制程序的流向。F1( PSW.1 ):用户标志 1 。

该位是由用户定义的一个状态标志。与 F0 类似,可以用软件来使它置“ 1” 或清“ 0” ,也可以由软件测试 F1 控制程序的流向。

位号 D7 D6 D5 D4 D3 D2 D1 D0

符号 CY AC F0 RS1 RS0 OV F1 P

Page 38: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 38/150

RS1 , RS0 ( PSW.4 ~ PSW.3 ):工作寄存器组选择控制位,其详细介绍见后续内容。OV ( PSW.2 ):溢出标志位。指示运算过程中是否发生了溢出,在执行指令过程中自动形成。

位号 D7 D6 D5 D4 D3 D2 D1 D0

符号 CY AC F0 RS1 RS0 OV F1 P

Page 39: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 39/150

P( PSW.0 ):奇偶标志位 累加器 ACC中 1 的个数为偶数, P=0;否则 P=1 。每个指令周期都由硬件来置“ 1” 或清“ 0” 。在具有奇偶校验的串行数据通信中,可以根据 P 设置奇偶校验位。

位号 D7 D6 D5 D4 D3 D2 D1 D0

符号 CY AC F0 RS1 RS0 OV F1 P

Page 40: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 40/150

布尔处理机——是单片机 CPU 中运算器的一个重要组成部分。功能:为用户提供丰富的位操作功能,有相应的指令系统,硬件有自己的“累加器”(进位位 C ,即 CY ),和自己的位寻址 RAM和 I/O空间,是一个独立的位处理机。

大部分位操作均围绕着其累加器——进位位 C 完成。对 任何可直接寻址的位,布尔处理机可执行置位、取反、转移、位的读写等操作。在任何可寻址的位(或该位内容取反)和进位标志 C之间,可执行逻辑与、或操作,其结果送回到进位标志 C 。

Page 41: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 41/150

( 2 )控制器 控制器是 CPU 的大脑中枢,包括定时

控制逻辑、指令寄存器、译码器、地址指针 DPTR 及程序计数器 PC 、堆栈指针 SP 、RAM 地址寄存器、 16 位地址缓冲器等。

Page 42: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 42/150

程序计数器 PC是一个 16 位的程序地址寄存器,专门用来存放下一条需要执行的指令的内存地址,能自动加 1 。当 CPU 执行指令时,根据程序计数器 PC 中的地址从存储器中取出当前需要执行的指令码,并把它送给控制器分析执行,随后程序计数器中的地址自动加 1 ,以便为 CPU 取下一个需要执行的指令码做准备。当下一个指令码取出执行后, PC 又自动加 1 。这样,程序计数器 PC 一次次加 1 ,指令就被一条条执行。

Page 43: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 43/150

堆栈主要用于保存临时数据、局部变量、中断或子程序的返回地址。STC15F2K60S2 单片机的堆栈设在内部 RAM中,是一个按照“先进后出”规律存放数据的区域。堆栈指针 SP 是一个 8 位寄存器,能自动加 1 或减 1 。当数据压入堆栈时, SP 自动加 1;数据从堆栈中弹出后, SP 自动减 1 。 复位后,寄存器默认值为 07H ,堆栈区在 08H开始的区域。用户通常将堆栈区域用指令设置在内部 RAM 的 80H~ FFH之间。

Page 44: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 44/150

数据指针 DPTR一个 16 位专用寄存器,由 DPL (低 8 位)和DPH (高 8 位)组成。DPTR 可以直接进行 16 位操作,也可分别对 DPL 和 DPH按字节进行操作。STC15F2K60S2 单片机有两个 16 位的数据指针 DPRT0 和 DPTR1 ,这两个数据指针共用同一个地址,可通过设置辅助寄存器 AUXR1 中的 DPS ( AUXR1.0 )位来选择具体使用哪一个数据指针。

Page 45: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 45/150

2 、存储器的结构— STC15F2K60S2

结构特点:程序存储器和数据存储器的寻址空间是分开的。结构划分:片内集成有 4个物理上相互独立的存储器空间:程序 Flash 存储器、数据Flash 存储器( EEPROM )、内部数据存储器和外部数据存储器。

Page 46: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 46/150

图 3-8 STC15F2K60S2 单片机存储器配置示意图

À©Õ¹Êý¾Ý´æ´¢Æ÷ ÄÚ²¿Êý¾Ý´æ´¢Æ÷ ³ÌÐòFlash´æ´¢Æ÷

ÌØÊ⹦ÄܼĴæÆ÷

µÍ128×Ö½ÚÄÚ²¿RAM

FFH

80H

7FH

00H0000H

03FFH

06FFH

0000H

60KB

F000H

0000H

1KB³ÌÐòFlash

´æ´¢Æ÷Êý¾ÝFlash

´æ´¢Æ÷

1792×Ö½ÚÀ©Õ¹RAM

¸ß128×Ö½ÚÄÚ²¿RAM

Êý¾ÝFlash´æ´¢Æ÷

Page 47: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 47/150

( 1 )程序 Flash 存储器功能:存放用户程序、数据和表格等信息。空间大小: STC15F2K60S2 片内集成了 60KB 的程序 Flash 存储器,地址为 0000H~F000H 。单片机复位后,程序计数器 PC的内容为 0000H ,从 0000H 单元开始执行程序。

Page 48: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 48/150

特殊单元在程序 Flash 存储器中有些特殊的单元,这些单元

是中断服务程序的入口地址:

0003H 外部中断 0 中断服务程序的入口地址000BH 定时 / 计数器 0 中断服务程序的入口地址0013H 外部中断 1 中断服务程序的入口地址001BH 定时 / 计数器 1 中断服务程序的入口地址0023H 串行通信口 1 中断服务程序的入口地址002BH ADC 中断服务程序的入口地址0033H 低电压检测中断服务程序的入口地址003BH PCA 中断服务程序的入口地址0043H 串行通信口 2 中断服务程序的入口地址004BH SPI 中断服务程序的入口地址

Page 49: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 49/150

中断服务程序的入口地址0053H 外部中断 2 中断服务程序的入口地址005BH 外部中断 3 中断服务程序的入口地址0063H 定时 / 计数器 2 中断服务程序的入口地址0083H 外部中断 4 中断服务程序的入口地址

响应中断时,单片机自动转到相应的中断入口地址去执行程序。由于大部分相邻中断入口地址之间只有 8个地址单元,无法保存完整的中断服务程序,一般在中断入口的地址区存放一条无条件转移指令,指向真正存放中断服务程序的空间。中断响应后, CPU 执行这条转移指令,转去执行中断服务程序。

Page 50: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 50/150

使用指令 读取程序存储器中保存的表格常数等内

容时,使用 MOVC 指令。

程序 Flash 存储器的擦写次数为 10万次以上,大大提高了芯片利用率,降低了开发成本。

Page 51: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 51/150

( 2 )数据存储器— STC15F2K60S2

数据存储器也称为随机存取数据存储器。空间划分

在物理上和逻辑上都分为两个地址空间:内部数据存储区和扩展数据存储区 。

Page 52: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 52/150

1 ) 内 部 数 据 存 储 区 ( 又 称 为 内 部 RAM)

256字节内部 RAM ,存放中间结果和过程数据。内部 RAM 的地址范围是 00H~ FFH ,共 256个单元,分三部分:

① 低 128字节 RAM ( 00H~ 7FH ):也称为基本 RAM 区。基本 RAM 区又分为工作寄存器区、位寻址区、用户 RAM 和堆栈区。可以直接寻址和间接寻址。用“MOV” 和“MOV @Ri”形式的指令访问。

② 高 128字节 RAM ( 80H~ FFH ):只能间接寻址。用“MOV @Ri”形式的指令访问。

③ 特殊功能寄存器( SFR )区:地址范围为 80H~ FFH ,只可直接寻址,用“MOV”形式的指令访问。

Page 53: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 53/150

0 (R7 R0)区 ~1 (R7 R0)区 ~2 (R7 R0)区 ~3 (R7 R0)区 ~

0FH¡«08H17H¡«10H

20H

2FH30H

RAM (30H 7FH)通用用户 和堆栈区 ~[ ]可直接或间接字节寻址

80H¡«FFH[Ö»Äܼä½ÓÑ°Ö··ÃÎÊ]

(80H FFH)特殊功能寄存器区 ~[ ]只能直接寻址访问

7FH80H

FFH

1FH¡«18H

¡«

(16 128位寻址区 字节,共 位)也可以字节寻址

07H¡«00H

4个工作寄存器区RAM也可做 单元使用

¡«

¡«

图 3-9 内部数据存储器地址空间 工作寄存器区位寻址区通用 用户 RAM 和堆栈区特殊功能寄存器区

内部数据存储器地址空间分配

Page 54: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 54/150

工作寄存器区地址分配: 00H~ 1FH共 32个单元。分为四组(每一组称为一个寄存器组),每一组包括8个 8 位的工作寄存器,分别是 R0~ R7 。功能:通过使用工作寄存器,可以提高运算速度,也可以使用其中的 R0 或 R1 存放八位地址值,访问一个 256字节外部 RAM块中的单元。另外, R0~ R7 也可以用作计数器,在指令作用下加 1 或减 1 。

Page 55: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 55/150

工作寄存器组的选择: PSW 寄存器中的 RS1和 RS0 两位组合决定当前使用的工作寄存器组。可以通过位操作指令直接修改 RS1和 RS0 的内容,选择不同的工作寄存器组。

RS1( PSW.4)

RS0( PSW.

3)

工作寄存器组 工作寄存器地址

0 0 0 R7~ R0对应的地址为 07H~ 00H

0 1 1 R7~ R0对应的地址为 0FH~ 08H

1 0 2 R7~ R0对应的地址为 17H~ 10H

1 1 3 R7~ R0对应的地址为 1FH~ 18H

表 3-1 工作寄存器组选择

Page 56: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 56/150

位寻址区20H ~ 2FH之间 的 单 元既可 以按字节存 取 , 也可 以按位 存取共 128 位 ,地址范围是 00H ~ 7FH 。

图 3-10 内部 RAM 中的位地址

Page 57: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 57/150

除了 20H~ 2FH 之间 的 单 元可以位寻址外,特殊功 能 寄 存器 中 ,直接 地址 可被 8 整除的 寄 存 器 (除了 IP.7 、 IP.6和 IE.6 以外)也 可 以 进 行 位寻址。

图 3-11 特殊功能寄存器中的位地址

Page 58: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 58/150

用户 RAM 和堆栈区内部 RAM 中的 30H~ 7FH 单元是用户 RAM 和堆栈区。一个 8 位的堆栈指针 SP ,并且堆栈区只能设置在内部数据存储区。当有子程序调用和中断请求时,返回地址等信息被自动保存在堆栈内。STC15F2K60S2 单片机复位后, SP 为 07H ,使堆栈事实上由 08H 单元开始,考虑 08H~1FH 单元分别属于工作寄存器组 1~3 ,若在程序设计中用到这些工作寄存器,则在用户初始化程序中,最好把 SP 的值改变为80H 或更大的值。STC15F2K60S2 单片机的堆栈是朝着地址增大的方向生成的,即将数据压入堆栈后, SP 的值增大。

Page 59: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 59/150

高 128字节 RAM 和特殊功能寄存器对于 STC15F2K60S2 单片机, 80H~ FFH既为高 128字节 RAM 区的地址范围,又为特殊功能寄存器区 (SFR) 的地址范围,地址空间重叠,但物理上是独立的。使用时,通过不同的寻址方式加以区分:高 128字节的 RAM 区使用间接寻址访问,特殊功能寄存器使用直接寻址访问。由于堆栈操作也是间接寻址方式,所以,高 128 位数据 RAM 亦可作为堆栈区使用。

Page 60: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 60/150

除了程序计数器 PC 和 4个工作寄存器组外,其余的寄存器都在 SFR 区中。特殊功能寄存器大体分为两类

①一类与芯片的引脚有关。如 P0~ P5 ,它们实际上是 6个锁存器,每个锁存器附加上相应的输出驱动器和输入缓冲器就构成了一个并行口。 ②另一类为芯片内部功能的控制或者内部寄存器。如中断屏蔽及优先级控制、定时器、串行口、 SPI 接口等。

STC15F2K60S2 单片机的特殊功能寄存器及其复位值如表 3-2 所列。

Page 61: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 61/150

2 )扩展数据存储区 外部数据存储区也称为扩展 RAM 区(简称,

XRAM )。片内集成了 1792 字节的外部 RAM ,地址范围为 0000H ~ 06FFH ,可用于存放数据。

注意,这里的“内部”和“外部”是逻辑上的概念,不

是指芯片内部和外部。在汇编语言中, XRAM 使用“MOVX @DPTR”

或者“MOVX @Ri” 指令访问。在 C语言中,可使用 xdata声明存储类型即可。

如: unsigned char xdata i= 0;

Page 62: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 62/150

访问片内集成的外部 RAM 时,不影响 P0口、 P2 口、 P4.2 、 P4.4 和 ALE 。STC15F2K60S2 单片机还可以访问片外扩展的 64KB 外部数据存储器。STC15F2K60S2 单片机的外部扩展 I/O 端口与扩展数据存储器统一编址,因此外部 I/O端口的地址占用扩展数据存储器的地址单元,用 MOVX 指令访问。

Page 63: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 63/150

单片机内部扩展 RAM 是否可以访问受辅助寄存器 AUXR (地址为 8EH ,复位值为 01H )中的EXTRAM 位控制。

EXTRAM :0 :内部扩展 RAM 可以存取;地址小于 700H 时,访问内部扩展 RAM;地址大于或等于 700H 时,则访问单片机外部扩展的 RAM 或 I/O空间。1 :禁止访问内部扩展 RAM 。

位号 D7 D6 D5 D4 D3 D2 D1 D0

位名称 T0x12 T1x12UART_M0

x6T2R T2_C/ T2x12 EXTRAM S1ST2T

Page 64: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 64/150

( 3 )数据 Flash 存储器空间大小:集成了 1K字节的数据 Flash 存储器,与程序空间是分开的地址范围: 0000H~03FFH 。这 1K字节的数据 Flash 存储器分为 2个扇区,每个扇区包含 512字节,对应的地址范围分别为:第一扇区: 0000H~01FFH

第二扇区: 0200H~03FFH

Page 65: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 65/150

使用方法:建议同一次修改的数据放在同一个扇区,不是同一次修改的数据放在不同的扇区,不一定用满。数据 Flash 存储器的擦除操作是按扇区进行的。

数据 Flash 存储器可以作为 EEPROM 使用,擦写次数在 10万次以上,用于保存一些需要在应用过程中修改并且掉电不丢失的参数数据。在用户程中,可以对数据 Flash 区进行字节读 /字节编程 /扇区擦除操作。

Page 66: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 66/150

1 )相关特殊功能寄存器①ISP/IAP 数据寄存器 IAP_DATA

IAP_DATA 是 ISP/IAP 操作时的数据寄存器(地址为 C2H ,复位值为 FFH )。ISP/IAP 从数据 Flash 读出的数据放在 IAP_DATA 中,向 Flash写的数据也需放在 IAP_DATA 中。

Page 67: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 67/150

②ISP/IAP 地址寄存器 IAP_ADDRH 和 IAP_ADDRL

IAP_ADDRH ( 地 址 为 C3H , 复 位值为 00H )• ISP/IAP 操作时的地址寄存器高八位。

IAP_ADDRL ( 地 址 为 C4H , 复 位值为 00H )• ISP/IAP 操作时的地址寄存器低八位。

Page 68: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 68/150

③ISP/IAP 命令寄存器 IAP_CMDISP/IAP 命令寄存器 IAP_CMD (地址为 C5H ,复位值为 xxxx x000B )的各位定义如下:位号 D7 D6 D5 D4 D3 D2 D1 D0

位名称 - - - - - - MS1 MS0

Page 69: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 69/150

MS1 和 MS0 组合形成不同的命令。

MS1 MS0 命令 /操作

0 0 待机模式,无 ISP操作

0 1 “对 Data Flash/EEPROM ”区 进行字节读

1 0 “对 Data Flash/EEPROM ”区 进行字节编程

1 1 “对 Data Flash/EEPROM ”区 进行扇区擦除

位号 D7 D6 D5 D4 D3 D2 D1 D0

位名称 - - - - - - MS1 MS0

表 3-3 ISP/IAP 的命令选择

Page 70: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 70/150

特别声明ISP/IAP 数据寄存器也可以用 MOVC 指令读( MOVC访问的是程序存储器)但起始地址不再是 0000H ,而是程序存储空间结束地址的下一个地址,对于 STC15F2K60S2 单片机而言,使用 MOVC访问数据 Flash 存储器时,其地址范围为 F000H~F3FFH 。

Page 71: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 71/150

④ISP/IAP 命令触发寄存器 IAP_TRIGIAP_TRIG (地址为 C6H ,复位值为 xxxx xxxxB )为ISP/IAP 操作时的命令触发寄存器。在 IAPEN ( IAP_CONTR.7 ) = 1 时,每次 IAP操作都要对 IAP_TRIG先写入 5AH ,再写入 A5H , ISP/IAP 命令才会生效。

ISP/IAP 操作完成后, IAP 地址高 8 位寄存器 IAP_ADDRH 、 IAP 地址低 8 位寄存器 IAP_ADDRL 和 IAP 命令寄存器 IAP_CMD 的内容不变。如果接下来要对下一个地址的数据进行 ISP/IAP 操作,需手动将该地址的高 8 位和低 8 位分别写入 IAP_ADDRH 和 IAP_ADDRL 寄存器。

Page 72: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 72/150

⑤ISP/IAP 命令寄存器 IAP_CONTR

ISP/IAP 命令寄存器 IAP_CONTR (地址为 C7H ,复位值为 0000 x000B )各位的定义如下:位号 D7 D6 D5 D4 D3 D2 D1 D0

位名称 IAPENSWBS

SWRST CMD_FAIL - WT2 WT1 WT0

Page 73: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 73/150

IAPEN: ISP/IAP 功能允许位。0 :禁止 IAP读 /写 /擦除 Data Flash/EEPROM

1: 允许 IAP读 /写 /擦除 Data Flash/EEPROM

SWBS 和 SWRST 用于设置单片机的软件复位。

位号 D7 D6 D5 D4 D3 D2 D1 D0

位名称 IAPENSWBS

SWRST CMD_FAIL - WT2 WT1 WT0

Page 74: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 74/150

CMD_FAIL :如果送了 ISP/IAP 命令,并对IAP_TRIG 送 5AH/A5H 触发失败,则为 1 ,需由软件清零。WT2~WT0 用于设置 IAP/ISP 时, CPU 的等待时间, CPU读取数据 Flash 的等待时间固定为 2个时钟。其他等待时间如表 3-4 所示。

位号 D7 D6 D5 D4 D3 D2 D1 D0

位名称 IAPENSWBS

SWRST CMD_FAIL - WT2 WT1 WT0

Page 75: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 75/150

WT2~WT0 用于设置 IAP/ISP 时, CPU 的等待时间, CPU读取数据 Flash 的等待时间固定为 2个时钟。其他等待时间如表 3-4 所示。

WT2 WT1 WT0

CPU等待时间 与等待参数对应的推荐系统时钟编程时间( 55u

s)扇区擦出( 21ms)

1 1 1 55个时钟 21012个时钟 ≤ 1MHz

1 1 0 110个时钟 42024个时钟 ≤ 2MHz

1 0 1 165个时钟 63036个时钟 ≤ 3MHz

1 0 0 330个时钟 126072个时钟 ≤ 6MHz

0 1 1 660个时钟 252144个时钟 ≤ 12MHz

0 1 0 1100个时钟 420240个时钟 ≤ 20MHz

0 0 1 1320个时钟 504288个时钟 ≤ 24MHz

0 0 0 1760个时钟 672384个时钟 ≤ 30MHz

表 3-4 IAP/ISP 时的 CPU 等待时间

Page 76: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 76/150

2 )数据 Flash 存储器操作的方法首先定义 ISP/IAP 命令及等待时间:

ISP_IAP_BYTE_READ EQU 1

;字节读 ISP_IAP_BYTE_PROGRAM EQU 2

;字节编程 , 前提是该字节是空,即为 0FFH

ISP_IAP_SECTOR_ERASE EQU 3

;扇区擦除 , 要某字节为空,要擦一扇区 WAIT_TIME EQU 0

; 设置等待时间 ; 根据系统时钟频率,参考表 3-4 设置WT2 、 WT1 和 WT0值

Page 77: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 77/150

进行字节读操作时,需要给出要读的地址,设置等待时间,然后送出读字节命令并设置触发器,从 IAP_DATA 寄存器中读取数据。典型代码如下:

;字节读操作演示代码MOV IAP_ADDRH, #BYTE_ADDRH ;送地址高字节MOV IAP_ADDRL, #BYTE_ADDRL ;送地址低字节MOV IAP_CONTR, #WAIT_TIME ; 设置等待时间ORL IAP_CONTR, #10000000B ;允许 ISP/IAP 操作MOV IAP_CMD, #ISP_IAP_BYTE_READ ;送字节读命令MOV IAP_TRIG,#5AH ;先送 5AH,再送 A5H到 ISP/IAP触发寄

存器MOV IAP_TRIG,#0A5H ;送完 A5H 后, ISP/IAP 命令立即被触发启动;CPU 等待 IAP 动作完成后,才会继续执行程序。NOP ; 数据读出到 IAP_DATA 寄存器后, CPU继续执行程

序 MOV A, IAP_DATA ; 将读出的数据送往累加器

Page 78: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 78/150

进行字节编程(写)操作时,需要保证要写的地址单元内容为空(值为 0FFH ),如果不为空,则先使用扇区擦除命令,将要进行字节编程的单元所在扇区擦除为空。将要写入的内容送入 IAP_DATA 寄存器,要编程的单元地址送入 IAP_ADDRH 和 IAP_ADDRL 寄存器,设置等待时间,允许 ISP/IAP 操作,送出字节编程命令并设置触发器。典型代码如下:

;字节编程演示代码,该字节为空时,可对其编程,否则要先执行扇区擦除MOV IAP_DATA, #ONE_DATA ;送字节编程数据到 IAP_DATAMOV IAP_ADDRH, #BYTE_ADDRH ;送地址高字节MOV IAP_ADDRL, #BYTE_ADDRL ;送地址低字节MOV IAP_CONTR, #WAIT_TIME ; 设置等待时间 ORL IAP_CONTR, #10000000B ;允许 ISP/IAP 操作 MOV IAP_CMD, #ISP_IAP_BYTE_PROGRAM ;送字节编程命令 MOV IAP_TRIG, #5AH ;先送 5AH,再送 A5H到 ISP/IAP触发寄存器MOV ISP_TRIG, #0A5H ;送完 A59H 后, ISP/IAP 命令立即被触发启动;CPU 等待 IAP 动作完成后,才会继续执行程序 .

Page 79: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 79/150

数据 Flash擦除时,只有扇区擦除,没有字节擦除。如果要对某个扇区进行擦除,而其中有些字节的内容需要保留,则需将其先读到单片机内部的 RAM 中保存,再将该扇区擦除,然后将需保留的数据写回该扇区,所以每个扇区中用的字节数越少越好,操作起来越灵活越快。擦除时,扇区中任意一个字节的地址都是该扇区的地址,无需求出首地址。

;扇区擦除的典型代码MOV IAP_ADDRH, #SECTOR_FIRST_BYTE_ADDRH; 送扇区起始地址高字节

MOV IAP_ADDRL, #SECTOR_FIRST_BYTE_ADDRL;送扇区起始地址低字节MOV IAP_CONTR, #WAIT_TIME ; 设置等待时间ORL IAP_CONTR, #10000000B ;允许 ISP/IAPMOV IAP_CMD, #ISP_IAP_SECTOR_ERASE ;送扇区擦除命令MOV IAP_TRIG, #5AH ;先送 5AH,再送 A5H到 ISP/IAP触发寄存器MOV IAP_TRIG, #0A5H ;送完 A5H 后, ISP/IAP 命令立即被触发起动;CPU 等待 IAP 动作完成后,才会继续执行程序 .

Page 80: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 80/150

总之,对于数据 Flash 存储器的操作有三个基本命令读字节编程扇区擦除

进行字节编程时,只能将 1 改为 0 ,或 1保持为1 、 0保持为 0 。如果一个字节中有的位为 0 ,要

将其改为 1 ,则须先将整个扇区擦除,因为只有“扇区擦除”才可以将 0变为 1 。

Page 81: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 81/150

建议:同一次修改的数据放在同一扇区中,不是同一次修改的数据放在另外的扇区,这样,可以不需要读出保护。如果一个扇区只用一个字节,那就是真正的 EEPROM 。STC15F2K60S2 单片机的 Data Flash 比外部 EEPROM要快很多,读一个字节大概需要 2个时钟周期( 0.2us ),编程一个字节大概需要 55us 。如果在一个扇区中存放了大量的数据,某次只需要修改其中的一个字节或一部分字节时,则另外的不需要修改的数据须先读出放在单片机的 RAM 中,然后擦除整个扇区,再将需要保留的数据和需修改的数据一并写回该扇区中。这时,每个扇区使用的字节数越少越方便(不需读出一大堆需保留数据)。

Page 82: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 82/150

二、单片机的引脚及功能1 、 STC15F2K60S2 单片机的引脚封装

LQFP-44封装AD6/P0.6

AD5/P0.5

P3.7/INT3/TxD_3/CCP2/CCP2_3

T2C

LK

O/I

NT

4/R

xD/P

3.0

TxD2_2/P4.7

GN

D

SS

_3/I

RC

_CL

KO

/RS

T/P

5.4

XT

AL

1/T

xD_2

/AD

C7/

P1.

7

XTAL2/RxD_2/ADC6/P1.6

INT

1/P

3.3

INT

0/P

3.2

P3.6/INT2/RxD_3/CCP1_3

P5.

5

P4.4/RD

T2/

TxD

/P3.

1

EC

I_3/

T1C

LK

O/T

0/P

3.4

P3.5/T1/T0CLKO/CCP0_3

P4.1/MISO_3

P4.2/WR

P2.2/A10/MISO_2P2.1/A9/SCLK_2

P4.3/SCLK_3

P2.0/A8/RSTOUT_LOW

P2.3/A11/MOSI_2

RxD2/CCP1/ADC0/P1.0

AD7P0.7

Vcc

P0.

2/A

D2

P0.

4/A

D4

P0.

3/A

D3

P0.

0/A

D0

STC15F2K60S2

2

4

3

5

6

7

8

9

10

11

12 13 14 15 16

1

1817 2019 2221

24

23

26

25

28

27

30

29

32

31

4344 4142 3940 3738 36 35 34

33

P2.

4/A

12/E

CI_

2/S

S_2

P4.

6/R

xD2_

2

P2.

5/A

13/C

CP

0_2

P2.

7/A

15/C

CP

2_2

P4.

5/A

LE

P2.

6/A

14/C

CP

1_2

(a)

TxD2/CCP0/ADC1/P1.1

ECI/SS/ADC2/P1.2

MOSI/ADC3/P1.3MISO/ADC4/P1.4

SCLK/ADC5/P1.5

MO

SI_

3/P

4.0

P0.

1/A

D1

图 3-12 STC15F2K60S2 单片机的引脚图

Page 83: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 83/150

DIP-40封装

RxD2/CCP1/ADC0/P1.0TxD2/CCP0/ADC1/P1.1

ECI/SS/ADC2/P1.2MOSI/ADC3/P1.3MISO/ADC4/P1.4SCLK/ADC5/P1.5

XTAL2/RxD_2/ADC6/P1.6XTAL1/TxD_2/ADC7/P1.7

P5.5P3.0/RxD/INT4/T2CLKOP3.1/TxD/T2P3.2/INT0P3.3/INT1P3.4/T0/T1CLKO/ECI_3P3.5/T1/T0CLKO/CCP0_3P3.6/INT2/RxD_3/CCP1_3P3.7/INT3/TxD_3/CCP2/CCP2_3

SS_3/IRC_CLKO/RST/P5.4

GND

Vcc

AD0/P0.0AD1/P0.1AD2/P0.2AD3/P0.3AD4/P0.4AD5/P0.5AD6/P0.6AD7/P0.7

P4.1/MISO_3

ALE/P4.5P2.7/A15/CCP2_2P2.6/A14/CCP1_2P2.5/A13/CCP0_2P2.4/A12/ECI_2/SS_2P2.3/A11/MOSI_2P2.2/A10/MISO_2P2.1/A9/SCLK_2P2.0/A8/RSTOUT_LOW

1234567891011121314151617181920

4039383736353433323130292827262524232221

(b)

P4.4/RDP4.2/WR

图 3-12 STC15F2K60S2 单片机的引脚图

Page 84: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 84/150

STC15F2K60S2 单 片 机的 逻 辑符号图

P1口STC1F2K60S2

P3口

INT0/P3.2

INT1/P3.3

T2CLKO/INT4/RxD/P3.0T2/TxD/P3.1

ECI_3/T1CLKO/T0/P3.4

CCP0_3/T0CLKO/T1/P3.5

P2口

P2.0/A8/RSTOUT_LOWP2.1/A9/SCLK_2P2.2/A10/MISO_2P2.3/A11/MOSI_2P2.4/A12/ECI_2/SS_2P2.5/A13/CCP0_2P2.6/A14/CCP1_2P2.7/A15/CCP2_2

P1.0/ADC0/CCP1/RxD2P1.1/ADC1/CCP0/TxD2P1.2/ADC2/SS/ECIP1.3/ADC3/MOSIP1.4/ADC4/MISOP1.5/ADC5/SCLKP1.6/ADC6/RxD_2/XTAL2P1.7/ADC7/TxD_2/XTAL1

P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7

GND Vcc

P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3

P0口

CCP1_3/RxD_3/INT2/P3.6

CCP2_3/CCP2/TxD_3/INT3/P3.7

P4口

ALE/P4.5

RD/P4.4

TxD2_2/P4.7

RxD2_2/P4.6

SCLK_3/P4.3

WR/P4.2MISO_3/P4.1

MOSI_3/P4.0

SS_3/IRC_CLKO/RST/P5.4

P5.5

图 3-13 STC15F2K60S2 单片机的逻辑符号图

Page 85: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 85/150

DIP-40 封装的 STC15F2K60S2 单片机和 LQFP-44封装相比,除了没有 P4.0 、 P4.3 、 P4.6 、P4.7引脚外,其他资源和的单片机完全相同。 由于 DIP封装的单片机焊接比较容易,因此,对于初学者,最好选用 DIP封装的单片机进行学习。注意:在实际应用中,设计单片机应用系统的原理图时,一般应使用逻辑符号图,以便进行电路分析,而设计应用系统的印刷电路板图时,必须使用单片机的引脚图。

Page 86: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 86/150

引脚电源引脚外接晶体引脚控制和复位引脚输入 / 输出( I/O )引脚

Page 87: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 87/150

( 1 )电源引脚

Vcc :一般接电源的+ 5V 。具体的电压幅度应参考单片机的手册。GND :接电源地。

Page 88: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 88/150

( 2 )外接晶体引脚XTAL1 和 XATL2

芯片内部一个反相放大器的输入端和输出端。通常用于连接晶体振荡器。常见的连接方法如图所示。

XTAL2

XTAL1

C2

C1

GND

M

单片机

图 3-14 常见的晶振连接方法

Page 89: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 89/150

晶体振荡器 M 的频率可以在 4MHz~ 48MHz之间选择,典型值是 11.0592MHz (因为设计单片机通信应用系统时,使用这个频率的晶振可以准确地得到 9600bits/s 和 19200bits/s 的波特率)。电容 C1 、 C2 对时钟频率有微调作用,可在5~ 100pF之间选择,典型值是 47pF 。

Page 90: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 90/150

STC15F2K60S2 单片机内部集成高精度 R/C 时钟,工作时钟可以使用内部振荡器或者外部晶体振荡器(简称晶振)产生的时钟。 40引脚和 44引脚封装的 STC15F2K60S2 单片机出厂标准配置是使用外部时钟。内部集成的高精度 R/C 时钟工业环境下的温漂为 ±1% ,常温下温飘 5‰ ,频率范围为 5MHz~35MHz ,可以在编程时设置。对于时钟频率要求不太敏感的场合,内部 R/C振荡器完全能够满足要求。 使用内部 R/C振荡器时钟时, XTAL1 和 XTAL2引脚悬空。

Page 91: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 91/150

使用外部晶振时,常见的连接方法与图 3-14 所示的连接方法相同。利用在系统编程( In-System Programming ,ISP )工具对 STC12C5A60S2 单片机下载用户程序时,可以在选项中设置选择使用外部晶体振荡器时钟或者使用内部 R/C振荡器时钟。

Page 92: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 92/150

( 3 )控制和复位引脚ALE (与 P4.5 复用)

功能:当访问外部存储器或者外部扩展的并行I/O 口时, ALE (允许地址锁存)的输出用于锁存地址的低位字节。标准 8051 单片机的 ALE 脚对系统时钟进行 6分频输出,可对外提供时钟。

Page 93: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 93/150

当 8051 单片机时钟频率较高时, ALE脚是一个干扰源。STC15F2K60S2 单片机直接禁止 ALE 脚对系统时钟进行 6 分频输出,彻底清除此干扰源,有利于系统的抗干扰设计。如果设计中需要单片机输出时钟,可以利用 STC15F2K60S2 单片机的可编程时钟输出脚对外输出时钟。STC15F2K60S2 单片机的 ALE引脚在用 MOVX 指令访问片外扩展器件时输出地址锁存信号。

Page 94: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 94/150

RST (与 P5.4 复用) 当振荡器运行时,在此引脚上出现两个机器周期的高电平将使单片机复位。如果需要单片机接上电源就可以复位,则需要使用上电复位电路。 µ¥Æ¬»ú

RST/VPD

GND

Cr

10uF

Rr10K¦¸

Vcc

图 3-15 上电复位电路图

Page 95: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 95/150

P5.4/RST/MCLKO脚出厂时默认为 I/O 口,可以通过 STC-ISP 编程软件下载程序时,将其设置为 RST 复位脚。STC15F2K60S2 单片机内部集成了 MAX810专用复位电路,时钟频率在 12MHZ 以下时,复位脚可接 1K 电阻再接地,也可以使用图 3-15所示的传统复位电路。

Page 96: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 96/150

( 4 )输入 / 输出( I/O )引脚STC12C5A60S2 单片机最多可以有 44 根 I/O

口线, 44 根 I/O 口线分别为:

P0 口( 8 根): P0.0~P0.7

P1 口( 8 根): P1.0~P1.7

P2 口( 8 根): P2.0~P2.7

P3 口( 8 根): P3.0~P3.7

P4 口( 8 根): P4.0~P4.7

P5 口( 2 根): P5.4 、 P5.5 。

Page 97: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 97/150

1 ) I/O 口的工作模式4 种工作模式:准双向口 /弱上拉,推挽 /强上拉,输入 / 高阻和开漏模式。复位后为准双向口 /弱上拉工作模式。每个口的工作模式由 2个控制寄存器中的相应位控制( PnM0 和 PnM1 , n=0 、 1 、 2 、 3 、4 、 5 )。

Page 98: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 98/150

例如, P0M0 和 P0M1 用于设定 P0 口的工作模式,其中 P0M0.7 和 P0M1.7 用于设置 P0.7 的工作模式,P0M0.6 和 P0M1.6 用于设置 P0.6 的工作模式,以此类推。

PnM1[7:0]

PnM0[7:0]

I/O口模式

0 0 准双向口(传统 8051单片机 I/O口模式),灌电流可达 20mA,拉电流为 270μA,由于制造误差,实际为 270uA~ 150uA

0 1 推挽输入输出(强上拉输出,可达 20mA,要加限流电阻,尽量少用)

1 0 仅为输入(高阻)

1 1 开漏( Open Drain),内部上拉电阻断开,要外加上拉电阻

表 3-5 I/O 口工作模式设置

Page 99: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 99/150

例如,若设置 P1.7 为开漏模式, P1.6 为强推挽输入输出模式, P1.5 为高阻输入模式, P1.4 、 P1.3 、 P1.2 、 P1.1 和 P1.0 为弱上拉模式,则可以使用下面的代码进行设置:

MOV P1M1,#10100000B

MOV P1M0,#11000000B

Page 100: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 100/150

STC15F2K60S2 单片机的每个 I/O 口在弱上拉时都能承受 20mA 的灌电流(最好还是使用限流电阻,如 1KΩ )在强推挽输出时都能输出 20mA 的拉电流(也要加限流电阻)。整个芯片的工作电流推荐不要超过 90mA 。即从MCU-Vcc 流入的电流不超过 90mA ,从MCU-GND 流出的电流不超过 90mA ,整体流入/ 流出电流都不能超过 90mA 。

Page 101: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 101/150

2 ) I/O 口的复用功能P0 口

用作数据总线( D7~D0 )或者地址总线低 8 位( A7~A0 )。用作普通 I/O 。

P1 口用作普通 I/O 。复用为 ADC 转换输入、捕获 / 比较 /脉宽调制、SPI通信线、第二串口或者第二时钟输出,如表所示。

Page 102: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 102/150

表 3-6 P1口的复用功能

引脚 复用功能

P1.0 ADC0/CCP1(捕获 /比较 /脉宽调制通道 1) /RxD2(串口 2输入)

P1.1 ADC1/CCP0(捕获 /比较 /脉宽调制通道 0) /TxD2(串口 2输出)

P1.2ADC2/ECI(可编程计数器阵列定时器的外部时钟输入) /SS( SPI从器件选择)

P1.3 ADC3/ MOSI( SPI主机输出从机输入)

P1.4 ADC4/ MISO( SPI主机输入从机输出)

P1.5 ADC5/ SCLK( SPI时钟)

P1.6ADC6/ XTAL2(外接晶体引脚) /RxD_3(串口 1输入备用切换引脚)

P1.7ADC7/ XTAL1(外接晶体引脚) /TxD_3(串口 1输出备用切换引脚)

Page 103: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 103/150

P2 口用作地址总线的高 8 位输出。用作通用 I/O 口使用。用于 SPI 和捕获 / 比较 /脉宽调制的备用切换端口 引脚 复用功能

P2.0 A8/RSTOUT_LOW(复位后输出低电平引脚)P2.1 A9/ SCLK_2( SPI时钟备用切换引脚)P2.2 A10/ MISO_2( SPI主机输入从机输出备用切换引脚)P2.3 A11/ MOSI_2( SPI主机输出从机输入备用切换引脚)

P2.4A12/ /ECI_3(可编程计数器阵列定时器的外部时钟输入备用切换引脚) /SS_2( SPI从器件选择备用切换引脚)

P2.5 A13/CCP0_3(捕获 /比较 /脉宽调制通道 0备用切换引脚)P2.6 A14/ CCP1_3(捕获 /比较 /脉宽调制通道 1备用切换引脚)P2.7 A15/ CCP2_3(捕获 /比较 /脉宽调制通道 2备用切换引脚)

表 3-7 P2 口的复用功能

Page 104: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 104/150

P3 口用作通用 I/O 口使用。可复用为外部中断输入、计数器输入、时钟输出、第一串口和外部总线的读 /写控制,如表所示。

Page 105: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 105/150

表 3-8 P3口的复用功能

端口引脚 复用功能

P3.0RXD(串口 1输入) / /INT4 (外部中断 4,只能下降沿中断) /T2CLKO( T2的时钟输出)

P3.1 TXD(串口 1输出) /T2CLKO( T2的外部输入)

P3.2 /INT0(外部中断 0输入,既可上升沿中断也可下降沿中断)

P3.3 /INT1(外部中断 1输入,既可上升沿中断也可下降沿中断)

P3.4T0(定时器 0外部输入) / T1CLKOU( T1时钟输出) /ECI_2(可编程计数器阵列定时器的外部时钟输入备用切换引脚)

P3.5T1(定时器 1外部输入) / T0CLKOU( T0时钟输出) / CCP0_32(捕获 /比较 /脉宽调制通道 0备用切换引脚)

P3.6/INT2(外部中断 2输入,只能下降沿中断) /RxD_2(串口 1输入备用切换引脚) / CCP1_2(捕获 /比较 /脉宽调制通道 1备用切换引脚)

P3.7/INT3(外部中断 3输入,只能下降沿中断) /TxD_2(串口 1输出备用切换引脚) / CCP2(捕获 /比较 /脉宽调制通道 2) / CCP2_2(捕获 /比较 /脉宽调制通道 2备用切换引脚)

Page 106: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 106/150

P4 口作通用 I/O 口使用。某些口线具有复用功能,可配置为 SPI通信线、捕捉 / 比较 /脉宽调制、第二串口线等。

表 3-9 P4口的复用功能端口引脚 复用功能

P4.0 MOSI_3( SPI主输出从输入备用切换引脚)P4.1 MISO_3( SPI主输入从输出备用切换引脚)P4.2 (外部总线写控制信号)P4.3 SCLK_3( SPI时钟备用切换引脚)P4.4 (外部总线读控制信号)P4.5 ALE (地址锁存控制信号,主要用于外部总线扩展)P4.6 RxD2_2(第二串口输入备用切换引脚)P4.7 TxD2_2(第二串口输出备用切换引脚)

WR

RD

Page 107: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 107/150

P5 口P5.4/RST (复位脚) /MCLKO (内部 R/C振荡时钟输出;输出的频率可为 MCLK/1 或 MCLK/2 ) /SS_3( SPI 接口的从机选择信号备用切换引脚)。该引脚默认为 I/O 口,可以通过 ISP 编程将其设置为 RST (复位)引脚。P5.5没有复用功能。

Page 108: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 108/150

捕获 / 比较 /脉宽调制( CCP )通道的引脚切换、 SPI 接口的引脚切换以及串口的引脚切换由辅助寄存器 AUXR1 (也称为P_SW1 , 地 址 为 A2H , 复 位值为 0000 0000B ) 和 外 设 功 能切换寄 存 器 P_SW2(地址为 BAH ,复位值为 xxxx xxx0B )确定。

位号寄存器名称 D7 D6 D5 D4 D3 D2 D1 D0

AUXR1 S1_S1 S1_S0 CCP_S1 CCP_S0 SPI_S1 SPI_S0 0 DPS

P_SW2 S2_S

Page 109: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 109/150

捕获 / 比较 /脉宽调制( CCP )通道可以在三个地方切换,由 CCP_S1 和 CCP_S0两个控制位选择,其选择方法如表 3-10 所示。

CCP_S1 CCP_S0 切换引脚0 0 CCP在 [P1.2/ECI, P1.1/CCP0, P1.0/CCP1, P3.7/CCP2]

0 1 CCP在 [P3.4/ECI_2, P3.5/CCP0_2, P3.6/CCP1_2, P3.7/CCP2_2]

1 0 CCP在 [P2.4/ECI_3, P2.5/CCP0_3, P2.6/CCP1_3, P2.7/CCP2_3]

1 1 无效

表 3-10 捕获 / 比较 / 脉宽调制( CCP )通道的切换

Page 110: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 110/150

SPI 可以在三个地方切换,由 SPI_S1 和SPI_S0 两个控制位选择,其选择方法如表3-11 所示。

SPI_S1 SPI_S0 切换引脚

0 0 SPI在 [P1.2/SS, P1.3/MOSI, P1.4/MISO, P1.5/SCLK]

0 1 SPI在 [P2.4/SS_2, P2.3/MOSI_2, P2.2/MISO_2, P2.1/SCLK_2]

1 0 SPI在 [P5.4/SS_3, P4.0/MOSI_3, P4.1/MISO_3, P4.3/SCLK_3]

1 1 无效

表 3-11 SPI 的引脚切换

Page 111: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 111/150

串口 1 可以在三个地方切换,由 S1_S1和S1_S0 两个控制位选择,其选择方法如表 3-12示。S1_S1 S1_S0 切换引脚

0 0 串口 1在 [P3.0/RxD, P3.1/TxD]

0 1 串口 1在 [P3.6/RxD_2/XTAL2, P3.7/TxD_2/XTAL1],串口 1在 P1口时要使用内部时钟

1 0 串口 1在 [P1.6/RxD_3, P1.7/TxD_3] ,串口 1在 P1口时要使用内部时钟

1 1 无效

表 3-12 串口 1 的引脚切换

Page 112: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 112/150

串口 2 可以在两个地方切换,由 S2_S0 控制位选择:

0 :串口 2在 [P1.0/RxD2, P1.1/TxD2]

1 :串口 2在 [P4.6/RxD2_2, P4.7/TxD2_2]

GF2 :通用标志位。该位是由用户定义的一个状态标志。可以用软件来使它置“ 1” 或清“ 0” ,也可以由软件测试 GF2 控制程序的流向。ADRJ :留作备用。DPS :数据指针选择位。

0 :使用缺省数据指针 DPTR0;1 :使用另一个数据指针 DPTR1 。

Page 113: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 113/150

3) STC15F2K60S2 单片机 I/O 口的结构准双向口工作模式的结构

口锁存数据

T1

T4

2个CPU时钟延时 T2 T3

端口引脚

输入数据

Vcc Vcc Vcc

干扰抑制滤波

1

1≥ 1

11

图 3-16 准双向口工作模式的 I/O 位结构

Page 114: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 114/150

I/O 口可用作输出和输入功能而不需重新配置口线输出状态。当口线输出为“ 1” 时 I/O 口驱动能力很弱,允许外部装置将其拉低。当引脚输出为低时,它的驱动能力很强,可吸收相当大的电流。每个端口都包含一个锁存器,即特殊功能寄存器 P0~ P5 。这种结构在数据输出时,具有锁存功能,即在重新输出新的数据之前,口线上的数据一直保持不变。但对输入信号是不锁存的,所以外设输入的数据必须保持到取数指令执行为止。

Page 115: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 115/150

为了便于叙述,以后将 6个端口及其锁存器都表示为 P0~ P5 。准双向口有 3个上拉场效应管 T1 、 T2 、 T3 ,以适应不同的需要。其中, T1 称为强上拉,上拉能力可达 20mA; T2 称为极弱上拉,上拉能力一般为 30μA; T3 称为弱上拉,一般上拉能力为 150μA ~250μA ,典型值为 200μA 。输出低电平时,最大灌电流可达 20mA 。

Page 116: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 116/150

当口线寄存器为 1且引脚本身也为 1 时, T3导通。 T3提供基本驱动电流使准双向口输出为 1 。如果一个引脚输出为“ 1”而由外部装置下拉到低时, T3断开,而 T2 维持导通状态,为了把这个引脚强拉为低,外部装置必须有足够的灌电流能力使引脚上的电压降到门槛电压以下。当口线锁存为 1 时, T2导通。当引脚悬空时,这个极弱的上拉源产生很弱的上拉电流将引脚上拉为高电平。当口线锁存为 0 时, T1 、 T2 和 T3均截止,T4导通,引脚输出为低电平。

Page 117: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 117/150

当口线锁存器由 0到 1跳变时, T1 用来加快准双向口由逻辑 0到逻辑 1 的转换。发生这种情况时, T1导通约 2个时钟使引脚能迅速地上拉到高电平。准双向口带有一个施密特触发输入以及一个干扰抑制电路。当从端口引脚上输入数据时, T4 应一直处于截止状态。假定在输入之前曾输出锁存过数据 0 ,则 T4 是导通的,这样引脚上的电位就始终被箝位在 0 电平,使输入高电平无法读入。因此,作为一个准双向口使用时,输入数据时,应先向口写 1 ,使 T4截止,然后方可作高阻抗输入。这是准双向口的主要特点。

Page 118: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 118/150

推挽输入输出工作模式的结构

口锁存数据

T2

T1

端口引脚

输入数据

Vcc

干扰抑制滤波

1

1 1

图 3-17 推挽输入输出工作模式的 I/O 位结构

Page 119: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 119/150

推挽输入输出工作模式的下拉结构与准双向口的下拉结构相同,但当锁存器为“ 1” 时可提供持续的强上拉。推挽工作模式一般用于需要更大驱动电流的情况。工作于推挽输入输出模式时,一个 I/O 位也带有一个施密特触发输入以及一个干扰抑制电路。此时,若输出高电平,拉电流最大可达 20mA;若输出低电平,灌电流也可达 20mA 。

Page 120: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 120/150

仅为输入(高阻)工作模式的结构

输入口带有一个施密特触发输入以及一个干扰抑制电路。注意,仅为输入(高阻)工作模式下, I/O 口不提供 20mA灌电流的能力。

端口引脚输入数据

干扰抑制滤波

1 1

图 3-18 仅为输入(高阻)工作模式的 I/O 位结构

Page 121: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 121/150

开漏输出工作模式的结构

口锁存数据T2

端口引脚

输入数据干扰抑制滤波

1

1 1

图 3-19 开漏输出工作模式的 I/O 位结构

Page 122: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 122/150

当口线锁存器为 0 时,开漏输出关断所有上拉场效应管。当作为一个逻辑输出时,这种配置方式必须有外部上拉电阻,即通过电阻外接到Vcc 。这种方式的下拉结构与准双向口模式的下拉结构相同。开漏端口带有一个施密特触发输入以及一个干扰抑制电路。这种工作模式下,输出低电平时,灌电流也可达 20mA 。

Page 123: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 123/150

1 、 P4 口和 P5 口的使用对 STC15F2K60S2 单片机 P4 口和 P5 口的访问,如同访问常规的 P0/P1/P2/P3 口一样,并且均可按位寻址, P4 的地址 C0H , P5口的地址在 C8H 。

§3.3单片机的 I/O口的使用

Page 124: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 124/150

2 、上拉电阻的连接虽然作为准双向口使用时,单片机内部已经集成了上拉场效应管,但在实际应用时,一般情况下,最好还是外接上拉电阻。例如,当外接的是 SPI/I2C 等漏极开漏的电路时。

Page 125: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 125/150

以 P0.0 为例,接上拉电阻的电路连接如图所示。典型的上拉电阻的阻值为 5.1K 或者 10K 。

STC15F2K60S2

P0.0

R

Vcc

图 3-20 上拉电阻的连接方法

Page 126: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 126/150

3 、拉电流方式和灌电流方式STC15F2K60S2 单片机的 I/O 口线作为输出可以提供 20mA 的驱动能力,在使用时,可采用拉电流或灌电流方式。以 P0.0 控制发光二极管电路为例说明,电路连接如图所示。

a)

STC15F2K60S2

P0.0

P0.0

R

Vcc

R

VD1

VD1

b)

1K¦¸

1K¦¸

STC15F2K60S2

图 3-21 拉电流方式和灌电流方式

Page 127: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 127/150

采用灌电流方式时,应将单片机的 I/O 口设置为弱上拉 /准双向口工作模式;采用拉电流方式时,应将单片机的 I/O 口设置为推挽 /强上拉工作模式。

在实际使用时,应尽量采用灌电流方式,这样可以提高系统的负载能力和可靠性。有特别需要时,可以采取拉电流方式,如供电线路要求比较简单时。

Page 128: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 128/150

使用时应该特别注意图中的限流电阻千万不能省略,否则,会毁坏I/O 口。在按键扫描电路中的两侧需要各加 300 的限流电阻,或者在编程时不要出现按键两端的 I/O 口同时为低的情况。

Page 129: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 129/150

4 、典型的三极管控制电路单片机 I/O引脚本身的驱动能力有限,如果需要驱动功率较大的器件,如小型继电器或者固态继电器,可以采用单片机 I/O引脚控制三极管进行输出的方法。以 P0.0 为例。

R110K¦¸

R3

R2

15K¦¸

STC15F2K60S2

P0.0

Vcc

OUTVT1

Vcc

图 3-22 典型的三极管控制电路

Page 130: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 130/150

如果用弱上拉控制,建议加上拉电阻 R1 ( 3.3K~ 10K );如果不加上拉电阻 R1 ,建议R2 的值在 15K 以上,或用强推挽输出。当需要驱动的功率器件较多时,建议采用 ULN2008 ,其内部采用达林顿结构,是专门用来驱动继电器的芯片,甚至在芯片内部做了一个消去线圈反电动势的二极管。 ULN2008 的输出端允许通过 IC 电流 200mA ,饱和压降 VCE约为 1V左右,耐压 BVCEO约为 36V 。输出口的外接负载可根据以上参数估算。采用集电极开路输出,输出电流大,可以直接驱动继电器或固体继电器 (SSR) 。 ULN2008 可以驱动 8个继电器。

Page 131: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 131/150

5 、 I/O 外部状态的输入存在问题:当 I/O 口工作于准双向口时,由于 STC15F2K60S2 单片机是 1个时钟周期( 1T )的 8051 单片机,速度很快,如果通过指令执行由低变高指令后立即读外部状态,此时由于实际输出还没有变高,有时可能读入的状态不对。解决方法:在软件设置由低变高后加 1到 2个空操作指令延时,然后再读 I/O 口的状态。

Page 132: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 132/150

6 、 P1.7/XTAL1 与 P1.6/XTAL2 的特别说明STC15F2K60S2 系列单片机的所有 I/O 口上电复位后均为准双向口 /弱上拉模式。但是由于 P1.7 和 P1.6 口还可以分别作外部晶体或时钟电路的引脚 XTAL1 和 XTAL2 ,所以 P1.7/XTAL1 和 P1.6/XTAL2 上电复位后的模式不一定就是准双向口 /弱上拉模式。当 P1.7 和 P1.6 口作为外部晶体或时钟电路的引脚XTAL1 和 XTAL2 使用时, P1.7/XTAL1 和 P1.6/XTAL2 上电复位后的模式是高阻输入。

Page 133: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 133/150

每次上电复位时,单片机对 P1.7/XTAL1 和 P1.6/XTAL2 的工作模式按如下步骤进行设置首先,单片机短时间(几十个时钟)会将 P1.7/XTAL1和 P1.6/XTAL2 设置成高阻输入;然后,单片机会自动判断上一次用户是将 P1.7/XTAL1和 P1.6/XTAL2 设置成普通 I/O 口还是 XTAL1/XTAL2;如果上一次用户是将 P1.7/XTAL1 和 P1.6/XTAL2 设置成普通 I/O 口,则单片机会将 P1.7/XTAL1 和 P1.6/XTAL2 上电复位后的模式设置成准双向口 /弱上拉;如果上一次用户是将 P1.7/XTAL1 和 P1.6/XTAL2 设置成 XTAL1/XTAL2 ,则单片机会将 P1.7/XTAL1 和 P1.6/XTAL2 上电复位后的模式设置成高阻输入。

Page 134: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 134/150

7 、管脚 P5.4/RST 的特别说明P5.4/RST 即可作普通 I/O 使用,也可作复位管脚。当用户将 P5.4/RST 设置成普通 I/O口用时,其上电后为准双向口 /弱上拉模式。每次上电时,单片机会自动判断上一次用户是将 P5.4/RST 设置成普通 I/O 口还是复位脚。如果上一次用户是将 P5.4/RST 设置成普通 I/O 口,则单片机会将 P5.4/RST 上电后的模式设置成准双向口 /弱上拉。如果上一次用户是将 P5.4/RST 设置成复位脚,则上电后, P5.4/RST 仍为复位脚。

Page 135: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 135/150

1 、单片机最小系统构成在实际工程应用中,由于应用条件及控制要求的不同,单片机外围电路的组成各不相同。单片机的最小系统就是指在尽可能少的外部电路条件下,能使单片机独立工作的系统。

§3.4单片机应用系统的典型构成

Page 136: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 136/150

STC15F2K60S2 集成了 60KB 程序存储器、2048 字节 RAM 、高可靠复位电路和高精度 R/C振荡器,一般情况下,不需要外部复位电路和外部晶振只需要接上电源,并在 Vcc 和 GND 之间接上滤波电容 C1 和C2

GND

Vcc18

20

STC15F2K60S2

C1

Vcc

GND

+10μ F

C20.1μ F

图 3-23 单片机最小系统

Page 137: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 137/150

为了能够给单片机下载程序,可以在 RXD 和 TXD引脚上连接 RS232 和 TTL 的转换电路,以连接计算机,通过下载工具将用户程序下载到单片机中。 RS232 和 TTL 的转换电路如图所示。

16

2

7

3

84

95

DB9

1

3

4

5

13R1IN

C1+

C1-

14

GND

VCC

TxD/P3.1

RxD/P3.012

11

2

6

15

连接计算机串行口

C2+

C2-

T1OUT

V+

V-

R1OUT

T1IN

16

10μ F 0. 1μ F

0. 1μ F 0. 1μ F

0. 1μ F

VCC

分别连接单片机的P3.0和P3.1引脚

MAX232,MAX3232,SP232或SP3232

PC-TxDPC-RxD

图 3-24 RS232 和 TTL 的转换电路

Page 138: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 138/150

2 、非总线扩展方式的单片机应用系统构成STC15F2K60S2 单片机内部已经有 60KB程序存储器和 2048字节 RAM ,这对于一般应用的存储器需求已经足够。此时,单片机的 P0 、 P2 和 P4 口不用于总线方式,即 P0 口和 P2 口用于普通 I/O 口功能; P4.2 和 P4.4 不用于写控制信号和读控制信号,也用于普通 I/O 口功能。

Page 139: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 139/150

3 、总线扩展方式的单片机应用系统构成应用背景

组成单片机应用系统时,如果存储器容量不够,或者需要扩展并行 I/O ,则可以使用端口进行系统的扩展。

Page 140: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 140/150

P2口

ALE

P0口

WR

RD

地址锁存器

RAM数据存储器

64KB(最大 )

IO并行 口8255(如 )

WR

RD

数据总线D7 D0~

控制总线

地址总线A15 A0~

STC15F2K60S2

A7 A0~

A15 A8~

RDWR

图 3-25 带有总线扩展的 STC15F2K60S2 单片机应用系统的连接示意图

一个带有数据存储器和并行I/O扩展的单片机应用系统的连接示意图如图所示。

Page 141: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 141/150

由图中可以看出使用单片机进行系统扩展时, 8 位的数据总线由 P0 口提供, 16 位的地址总线由 P2 和 P0 口构成。P0 口通过地址锁存器输出地址总线的低 8 位,地址总线的高 8 位由 P2 口提供。通常用作地址锁存器的芯片有 74LS373 、 74LS273 等。P4 口中的 /WR(P4.2) 和 /RD(P4.4)引脚的作用是写控制和读控制。ALE 信号用于锁存器的锁存控制,以锁存由 P0 口输出的地址。

Page 142: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 142/150

为了说明 STC15F2K60S2 单片机访问外部 RAM 的过

程,首先介绍标准 8051 单片机时序中的相关概念。( 1 )时钟周期( T 状态): CPU 的基本时间计量

单位,与晶振频率有关。( 2 )机器周期:单片机的基本操作周期为机器周期。标准 8051 单片机的一个机器周期分为 6个状态( S1~ S6 ),每个状态由两个脉冲组成(称为两相),前一个周期叫 P1 ,后一个周期叫 P2 。

Page 143: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 143/150

一个机器周期由 12个时钟周期(也称为振荡周期)组成,如图所示。

CLK

ALE

PSEN

AD 0 - AD 7

P2

12个时钟周期

单字节单周期指令

S1 S2 S3 S4 S5 S6P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2

图 3-26 标准 8051 的时序

Page 144: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 144/150

STC15F2K60S2 单片机是 1 时钟周期 / 机器周期的 8051 单片机,在同样的外部时钟频率下执行同样的代码,其指令执行速度要比标准 8051单片机快 8~ 12倍。当用户在较低的外部时钟频率下运行时,与标准 8051 内核相比,不仅降低了系统噪声和电源功耗,而且提高了处理能力。STC15F2K60S2 单片机的总线速度是可以设置的。通过设置总线速度控制寄存器 BUS_SPEED 寄存器相关的位,可以达到设置总线速度的目的。

Page 145: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 145/150

BUS_SPEED 寄存器(地址为 A1H ,复位值为 XXXXXX10B )的定义如下:

其中, EXRST1 和 EXRTS0 用于设置外部 RAM定时选择( Extand RAM Time Selector )。

位号 D7 D6 D5 D4 D3 D2 D1 D0

位名称 - - - - - - EXRTS1 EXRTS0

Page 146: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 146/150

执行 MOVX 指令时读写控制信号的脉冲宽度,其设置关系如表 3-13 所示。

利用 MOVX 指令访问外部 RAM 所需的时钟如表3-14 所示。

表 3-13 EXRTS1和 EXRTS0的设置EXRTS1 EXRTS0 建立 /保持 /读写时间

0 0 1个时钟周期

0 1 2个时钟周期

1 0 4个时钟周期

1 1 8个时钟周期

Page 147: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 147/150

访问片外扩展 RAM 指令所需时钟,可以使用下面的计算公式:

MOVX @R0/R1 MOVX @DPTR

write(写操作 ) 写操作 ) ): 5×N+3 write(写操作 ) 写操作 ) ): 5×N+2

read(读操作 ): 5×N+2 read(读操作 ): 5×N+1

当 EXRTS[1:0] = [0,0] 时,上式中 N=1;当 EXRTS[1:0] = [0,1] 时,上式中 N=2;当 EXRTS[1:0] = [1,0] 时,上式中 N=4;当 EXRTS[1:0] = [1,1] 时,上式中 N=8.

Page 148: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 148/150

对于 STC15F2K60S2系 列 单 片机 ,访问片 外 扩展RAM 指 令的 速 度 是可调的。访问单 片机外部 RAM 时 的 时序图如图所示。

外部RAM地址高8位

外部RAM地址低8位 写到外部RAM的数据

外部RAM地址低8位 从外部RAM读取的数据

P2[7:0](XADRH)

P0[7:0](XADRL)

P4.5(ALE)

P4.2(WR)

P2[7:0](XADRH)

P0[7:0](XADRL)

P4.5(ALE)

P4.4(RD)

写指令周期

读指令

1 clock

1 clock

1 clock

外部RAM地址低8位建立

EXRAC

外部RAM地址低8位保持

EXRAC

数据建立

EXRAC EXRAC EXRAC

数据保持写任务

外部

RAM

写时序

外部

RAM

读时序

外部RAM地址高8位

图 3-27 访问单片机外部 RAM 时的时序图

Page 149: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 149/150

需要特别注意当 STC15F2K60S2 应用于总线扩展方式时,用于总线方式的 P0 、 P2 和 P4 口的 P4.2 和 P4.4 不可再用于普通 I/O 口功能,即使在地址空间较宽裕时 P2 口没有用于高 8 位地址线的 I/O 口线也不可用于普通 I/O 功能。因为,在总线扩展方式下, P0 口当作地址 / 数据总线口使用时,由于访问外部存储器的操作不断, P0 口不断出现低 8 位地址或者数据,故此时 P0 口不能再作通用 I/O 口使用。此时的 P2 口已当作地址总线口使用,由于访问外部存储器的操作不断, P2 口不断送出高 8位地址,故此时 P2 口也不能再作通用 I/O 口使用。

Page 150: 第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机 I/O 口的使用 掌握单片机应用系统的典型构成

10:15:52 150/150

以上介绍了 STC15F2K60S2 单片机的应用系统构成方式。由于 STC15F2K60S2 单片机内部已经有 60KB 程序存储器和 2048字节 RAM ,这对于一般应用的存储器需求已经足够。因此,非总线扩展方式的应用最常见。