第1章单片微型计算机概述 1.1单片微型计算机定义和特点 1.2微计算机系统概念 1.3单片微型计算机发展概况 1.4单片机的应用特点 ■1.5单片机的开发与应用方法简述 1.1单片微型计算机定义和特点 ■所谓单片机微型计算机就是把CPU、寄存器、RAM/ROM、I/0接口电路集成在一块集 成电路芯片上,构成一个完整的微型计算机,见图 ■特点 (1)体积小、功耗低、性价比髙 (2)数据大都在单片机内部传送,抗干扰能力强,可靠性高 (3)结构灵活,应用广泛。 几种单片机封装形式 1.2微计算机系统概念 1.3单片微型计算机发展概况 ■数据位长1→4→8→16→32位 ■CPU处理能力和速度不断提高 ■增大片内RAM和ROM容量 ■增加片内I/O口和功能模块种类和数量 ■扩大对外部RAM/I0口和程序存储器寻址能力。 ■缩小体积,降低功耗。 1.4单片机的应用特点 ■控制应用:应用范围广泛,从实时性角度可分为离线应用和在线应用 ■软硬件结合:软硬件统筹考虑,不仅要会编程,还要有硬件的理论和实践知识。 ■应用现场环境恶劣:电磁干扰、电源波动、冲击震动、髙低温等环境因素的影响。 要考虑芯片等级选择、接地技术、屏蔽技术、隔离技术、滤波技术、抑制反电势干 扰技术等 ■应用空间大:工业自动化、仪器仪表、家用电器、信息和通信产品、军事装备等 领域。 1.5单片机的开发与应用方法简述 ■由于单片机本身没有开发编程的能力,所以必须借助开发工具。 ■硬开发工具:各种编程器、仿真开发机等编程开发设备:软开发工具:各种编辑、 汇编、模拟调试等工具软件 开发过程:总体设计、硬件设计、制版与安装、软件设计、调试运行,见图。 ■硬件仿真调试:借助于各种实时在线开发仿真器,对目标程序进行多种方式的联 机运行调试,从而发现程序中的错误之处并改正之,见图 软件模拟仿真调试:借助于PC机系统,利用模拟(仿真)调试工具软件来进行目 标程序的运行调试。 仿真器和逻辑测试仪 编程器
第1章 单片微型计算机概述 ◼ 1.1单片微型计算机定义和特点 ◼ 1.2 微计算机系统概念 ◼ 1.3 单片微型计算机发展概况 ◼ 1.4 单片机的应用特点 ◼ 1.5单片机的开发与应用方法简述 1.1 单片微型计算机定义和特点 ◼ 所谓单片机微型计算机就是把CPU、寄存器、RAM/ROM、I/O接口电路集成在一块集 成电路芯片上,构成一个完整的微型计算机 ,见图。 ◼ 特点: (1)体积小、功耗低、性价比高。 (2)数据大都在单片机内部传送,抗干扰能力强,可靠性高。 (3)结构灵活,应用广泛。 几种单片机封装形式 1.2 微计算机系统概念 1.3 单片微型计算机发展概况 ◼数据位长 1→4→8→16 →32位。 ◼CPU处理能力和速度不断提高 。 ◼增大片内RAM和ROM容量 。 ◼增加片内I/O口和功能模块种类和数量 。 ◼扩大对外部RAM/IO口和程序存储器寻址能力 。 ◼缩小体积,降低功耗。 1.4 单片机的应用特点 ◼控制应用:应用范围广泛,从实时性角度可分为离线应用和在线应用。 ◼软硬件结合:软硬件统筹考虑,不仅要会编程,还要有硬件的理论和实践知识。 ◼应用现场环境恶劣:电磁干扰、电源波动、冲击震动、高低温等环境因素的影响。 要考虑芯片等级选择、接地技术、屏蔽技术、隔离技术、滤波技术、抑制反电势干 扰技术等。 ◼应用空间大:工业自动化、仪器仪表、家用电器、信息和通信产品、军事装备等 领域。 1.5单片机的开发与应用方法简述 ◼ 由于单片机本身没有开发编程的能力,所以必须借助开发工具。 ◼ 硬开发工具:各种编程器、仿真开发机等编程开发设备;软开发工具:各种编辑、 汇编、模拟调试等工具软件。 ◼ 开发过程:总体设计、硬件设计、制版与安装、软件设计、调试运行,见图。 ◼ 硬件仿真调试:借助于各种实时在线开发仿真器,对目标程序进行多种方式的联 机运行调试,从而发现程序中的错误之处并改正之,见图。 ◼ 软件模拟仿真调试:借助于PC机系统,利用模拟(仿真)调试工具软件来进行目 标程序的运行调试。 仿真器和逻辑测试仪 编程器
编程器和芯片座 编程器软件界面 各种实验板 Dais单片机微机仿真实验系统 第2章MS-51单片机的硬件结构 2.1MCS-51单片机的物理结构及逻辑结构 2.2MS-51单片机的片外总线结构 2.3MCS-51单片机的存储器配置 2.4CPU的时序及辅助电路 2.1MS-51单片机的物理结构及逻辑结构 2.1.1MCS-51单片机的封装和引脚分配 2.1.2MCS-51单片机的系统结构 2.1.3MCS-51单片机的引脚定义 2.1.4MCS-51单片机硬件结构要点 2.1.5MS-51单片机内部结 2.1.6输入/输出(I/0)端口结构 2.1.2MCS-51单片机的系统结构 (1)一个8位微处理器CPU 2)数据存储器RAM和特殊功能寄存器SFR (3)内部程序存储器ROM。 (4)两个定时/计数器,用以对外部事件进行计数,也可用作定时器。 (5)四个8位可编程的I/0(输入/输出)并行端口,每个端口既可做输入,也可做 输出。 (6)一个串行端口,用于数据的串行通信。 (7)中断控制系统。 (8)内部时钟电路。 2.1.3MCS-51单片机的引脚定义 输入输出口:PO、P1、P2、P3 RST(复位)/WPD(后备电源引入端) EA(读内/外ROM控制)/Vpp(编程电压) ALE(地址低8位锁存)/PROG(编程脉冲) PSEN外部ROM读选通信号 XTALI、XTAL2外接晶振端 V +5v电源 V: 地 ·P3口的第二功能
编程器和芯片座 编程器软件界面 各种实验板 Dais单片机微机仿真实验系统 第2章 MCS-51单片机的硬件结构 2.1 MCS-51单片机的物理结构及逻辑结构 2.2 MCS-51单片机的片外总线结构 2.3 MCS-51单片机的存储器配置 2.4 CPU的时序及辅助电路 2.1 MCS-51单片机的物理结构及逻辑结构 2.1.1 MCS-51单片机的封装和引脚分配 2.1.2 MCS-51单片机的系统结构 2.1.3 MCS-51单片机的引脚定义 2.1.4 MCS-51单片机硬件结构要点 2.1.5 MCS-51单片机内部结 2.1.6 输入/输出(I/O)端口结构 2.1.2 MCS-51单片机的系统结构 (1)一个8位微处理器CPU。 (2)数据存储器RAM和特殊功能寄存器SFR。 (3)内部程序存储器ROM。 (4)两个定时/计数器,用以对外部事件进行计数,也可用作定时器。 (5)四个8位可编程的I/O(输入/输出)并行端口,每个端口既可做输入,也可做 输出。 (6)一个串行端口,用于数据的串行通信。 (7)中断控制系统。 (8)内部时钟电路。 2.1.3 MCS-51单片机的引脚定义 • 输入输出口:P0、P1、P2、P3 • RST(复位)/ VPD(后备电源引入端) • EA (读内/外ROM控制)/Vpp(编程电压) • ALE(地址低8位锁存)/ PROG(编程脉冲) • PSEN 外部ROM读选通信号 • XTAL1、XTAL2 外接晶振端 • Vcc +5v电源 • Vss 地 • P3口的第二功能
2.1.4MCS-51单片机硬件结构要点 1.内部程序存储器(ROM)和内部数据存储器(RM)容量(如表2-1所示) 2.输入/输出(I/0)端口 3.外部程序存储器和外部数据存储器寻址空间 4.中断与堆栈 5.定时/计数器与寄存器区 6.指令系统 2.1.5MCS-51单片机内部结构 1.运算器 运算器由8位算术逻辑运算单元ALU( Arithmetic Logic Unit)、8位累加器ACC ( Accumulator)、8位寄存器B、程序状态字寄存器PSW( Program Status Word)、 8位暂存寄存器TMP1和TMP2等组成。 2.控制器 主要由程序计数器PC、指令寄存器IR、指令译码器ID、堆栈指针SP、数据指针DPTR、 时钟发生器及定时控制逻辑等组成 2.1.6输入/输出(I/0)端口结构 MCS-51单片机有4个双向并行的8位I/0口P0~P3,P0口为三态双向口,可驱 动8个TTL电路,P1、P2、P3口为准双向口(作为输入时,口线被拉成高电平,故 称为准双向口),其负载能力为4个TTL电路。 1.P0口的结构 2.P1口的结构 3.P2口的结构 4.P3口的结构 2.2MCS-51单片机的片外总线结构 微型计算机中的总线通常分为 (1)地址总线(AB):地址总线宽度为16位,由P0口经地址锁存器提供低8位地址 (Ao-A);P2口直接提供高8位地址(A~A5)。地址信号是由CPU发出的,故地 址总线是单方向的 (2)数据总线(DB):数据总线宽度为8位,用于传送数据和指令,由PO口提供 (3)控制总线(CB):控制总线随时掌握各种部件的状态,并根据需要向有关部件 发出命令。 2.3MCS-51单片机的存储器配置 2.3.1存储器空间分配 2.3.2片内数据存储器 2.3.3片外数据存储器 2.3.4程序存储器 2.3.1存储器空间分配 空间分配图 物理上有四个存储器空间
2.1.4 MCS-51单片机硬件结构要点 1.内部程序存储器(ROM)和内部数据存储器(RAM)容量(如表2-1所示)。 2.输入/输出(I/O)端口 3.外部程序存储器和外部数据存储器寻址空间 4.中断与堆栈 5.定时/计数器与寄存器区 6.指令系统 2.1.5 MCS-51单片机内部结构 1.运算器 运算器由8位算术逻辑运算单元ALU(Arithmetic Logic Unit)、8位累加器ACC (Accumulator)、8位寄存器B、程序状态字寄存器PSW(Program Status Word)、 8位暂存寄存器TMP1和TMP2等组成。 2.控制器 主要由程序计数器PC、指令寄存器IR、指令译码器ID、堆栈指针SP、数据指针DPTR、 时钟发生器及定时控制逻辑等组成。 2.1.6 输入/输出(I/O)端口结构 MCS-51单片机有4个双向并行的8位I/O口P0~P3,P0口为三态双向口,可驱 动8个TTL电路,P1、P2、P3口为准双向口(作为输入时,口线被拉成高电平,故 称为准双向口),其负载能力为4个TTL电路。 1.P0口的结构 2.P1口的结构 3.P2口的结构 4.P3口的结构 2.2 MCS-51单片机的片外总线结构 微型计算机中的总线通常分为: (1)地址总线(AB):地址总线宽度为16位,由P0口经地址锁存器提供低8位地址 (A0-A7);P2口直接提供高8位地址(A8~A15)。地址信号是由CPU发出的,故地 址总线是单方向的。 (2)数据总线(DB):数据总线宽度为8位,用于传送数据和指令,由P0口提供。 (3)控制总线(CB):控制总线随时掌握各种部件的状态,并根据需要向有关部件 发出命令。 2.3 MCS-51单片机的存储器配置 2.3.1 存储器空间分配 2.3.2 片内数据存储器 2.3.3 片外数据存储器 2.3.4 程序存储器 2.3.1 存储器空间分配 空间分配图 物理上有四个存储器空间:
(a)程序存储器[片内、片外] (b)数据存储器[片内、片外] 逻辑上有三个存储空间: (a)片内外统一的64KB程序存储地址空间 (b)256B内部数据存储器地址空间 (c)64KB外部数据存储器地址空间 使用上有五个存储器空间: ●可被直接寻址的数据地址空间 位地址空间 外部的数据地址空间 程序地址空间 ●可间接寻址的数据空间 特点:1、数据、程序存储器空间分开。 2、物理存储器有内外之分。 2.3.2片内数据存储器 片内数据存储器低128单元,00H-7FH (1)寄存器区:32个8位寄存器,00H-1FH分为4组。每组8个寄存器,分别为R0—R7,4 个组的选择由状态字中的RS1、RS0的值确定。见教材P20 (2)位地址区:20H-2FH,共16个字节单元,128个位单元。 (3)用户RAM区:3OH-7FH,通常堆栈放在此区。 2.片内数据存储器高128单元,80H-0FFH。 (1)专用(特殊功能)寄存器SFR:22个,其中21个可寻址,PC不可寻址。 A、程序计数器PC(16位):用于存放将要执行的指令地址(程序存储器地址),并 具有自动加1的功能。 B、累加器A(8位):存放运算中的操作数据及运算后的结果。 C、B寄存器(8位):用于乘除法中的第二个操作数和运算后的结果。 D、程序状态字PSW(8位):寄存着程序运行中的状态信息,各位代表的状态见教材 P20。 E、栈指针寄存器SP(8位):其值始终指向栈的顶部,PUSH时值先加1,后存数。 F、其它专用寄存器:数据指针寄存器DPTR(16位)、端口寄存器P0/P1/P2/P3(8 位)、串行数据缓冲器SBUF(8位)、定时/计数器T0/T1(16位)、控制寄存器 IP/IE/TMOD/TCON/SCON/PCON(86)
(a)程序存储器 [片内、片外] (b)数据存储器 [片内、片外] 逻辑上有三个存储空间: (a)片内外统一的64KB程序存储地址空间 (b) 256B内部数据存储器地址空间 (c) 64KB外部数据存储器地址空间 使用上有五个存储器空间: ⚫ 可被直接寻址的数据地址空间 ⚫ 位地址空间 ⚫ 外部的数据地址空间 ⚫ 程序地址空间 ⚫ 可间接寻址的数据空间 特点:1、数据、程序存储器空间分开。 2、物理存储器有内外之分。 2.3.2 片内数据存储器 • 片内数据存储器低128单元,00H—7FH。 (1)寄存器区:32个8位寄存器,00H—1FH分为4组。每组8个寄存器,分别为R0—R7,4 个组的选择由状态字中的RS1、RS0的值确定。见教材P20 (2)位地址区:20H—2FH,共16个字节单元,128个位单元。 (3)用户RAM区:30H—7FH,通常堆栈放在此区。 2. 片内数据存储器高128单元,80H—0FFH。 (1)专用(特殊功能)寄存器SFR:22个,其中21个可寻址,PC不可寻址。 A、程序计数器PC(16位):用于存放将要执行的指令地址(程序存储器地址),并 具有自动加1的功能。 B、累加器A(8位):存放运算中的操作数据及运算后的结果。 C、B寄存器(8位):用于乘除法中的第二个操作数和运算后的结果。 D、程序状态字PSW(8位):寄存着程序运行中的状态信息,各位代表的状态见教材 P20。 E、栈指针寄存器SP(8位):其值始终指向栈的顶部,PUSH时值先加1,后存数。 F、其它专用寄存器:数据指针寄存器DPTR(16位)、端口寄存器P0/P1/P2/P3(8 位)、串行数据缓冲器SBUF(8位)、定时/计数器T0/T1(16位)、控制寄存器 IP/IE/TMOD/TCON/SCON/PCON(8位)
(2)专用寄存器的字节寻址:只能使用直接寻址方式,在指令中既可以使用寄存器 符号表示,也可以使用寄存器地址表示。 3)专用寄存器的位寻址:21个SFR中的11个可以位寻址。见教材P22表2-4 2.3.2片外数据存储器 外部数据存储器又称外部RAM,当片内RAM不能满足数量上的要求时,可通过 总线端口和其他I/0口扩展外部数据RAM,其最大容量可达64K字节 在片外数据存储器中,数据区和扩展的I/0口是统一编址的,使用的指令也 完全相同,因此,用户在应用系统设计时,必须合理地进行外部RAM和I/0端口的 地址分配,并保证译码的唯一性 2.3.3程序存储器 程序存储器的包括片内和片外程序存储器两个部分。其主要用来存放编好的用 户程序和表格常数,它以16位的程序计数器PC作为地址指针,故寻址空间为64KB 805片内有4kB(0000—0FFH),其中特殊保留单元:系统复位后PC=0000 0000H-0002H 无条件转移指令 0003H-000AHNT0中断地址区 00OBH-0012H T0中断地址区 0013H-001 AH INTI中断地址区 00lBH-0022H T1中断地址区 0023H-002AH串行中断地址区 2.4CPU的时序及辅助电路 2.4.1单片机的时钟电路 2.4.2振荡周期、时钟周期、机器周期和指令周期 2.4.3MCS-51单片机指令的取指和执行时序 2.4.4单片机复位电路及复位状态 2.4.1单片机的时钟电路 单片机时钟电路通常有两种形式: 1.内部振荡方式:MS-51单片机片内有一个用于构成振荡器的高增益反相放大器, 引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。把放大器与作为反馈元件的 晶体振荡器或陶瓷谐振器连接,就构成了内部自激振荡器并产生振荡时钟脉冲(如 图1所示)。 2.外部振荡方式:外部振荡方式就是把外部已有的时钟信号引入单片机内(如图2 所示)。 2.4.2振荡周期、时钟周期、机器周期和指令周期 1.振荡周期:为单片机提供时钟信号的振荡源的周期。 2.时钟周期:是振荡源信号经二分频后形成的时钟脉冲信号。 3.机器周期:通常将完成一个基本操作所需的时间称为机器周期。 4.指令周期:是指CPU执行一条指令所需要的时间。一个指令周期通常含有1~4
(2)专用寄存器的字节寻址:只能使用直接寻址方式,在指令中既可以使用寄存器 符号表示,也可以使用寄存器地址表示。 (3)专用寄存器的位寻址:21个SFR中的11个可以位寻址。见教材P22表2-4 2.3.2 片外数据存储器 外部数据存储器又称外部RAM,当片内RAM不能满足数量上的要求时,可通过 总线端口和其他I/O口扩展外部数据RAM,其最大容量可达64K字节。 在片外数据存储器中,数据区和扩展的I/O口是统一编址的,使用的指令也 完全相同,因此,用户在应用系统设计时,必须合理地进行外部RAM和I/O端口的 地址分配,并保证译码的唯一性。 2.3.3 程序存储器 程序存储器的包括片内和片外程序存储器两个部分。其主要用来存放编好的用 户程序和表格常数,它以16位的程序计数器PC作为地址指针,故寻址空间为64KB。 8051片内有4kB(0000H—0FFFH),其中特殊保留单元:系统复位后PC=0000H 0000H—0002H 无条件转移指令 0003H—000AH INT0中断地址区 000BH—0012H T0中断地址区 0013H—001AH INT1中断地址区 001BH—0022H T1中断地址区 0023H—002AH 串行中断地址区 2.4 CPU的时序及辅助电路 2.4.1 单片机的时钟电路 2.4.2 振荡周期、时钟周期、机器周期和指令周期 2.4.3 MCS-51单片机指令的取指和执行时序 2.4.4 单片机复位电路及复位状态 2.4.1 单片机的时钟电路 单片机时钟电路通常有两种形式: 1.内部振荡方式:MCS-51单片机片内有一个用于构成振荡器的高增益反相放大器, 引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。把放大器与作为反馈元件的 晶体振荡器或陶瓷谐振器连接,就构成了内部自激振荡器并产生振荡时钟脉冲(如 图1所示)。 2.外部振荡方式:外部振荡方式就是把外部已有的时钟信号引入单片机内(如图2 所示)。 2.4.2 振荡周期、时钟周期、机器周期和指令周期 1.振荡周期:为单片机提供时钟信号的振荡源的周期。 2.时钟周期:是振荡源信号经二分频后形成的时钟脉冲信号。 3.机器周期:通常将完成一个基本操作所需的时间称为机器周期。 4.指令周期:是指CPU执行一条指令所需要的时间。一个指令周期通常含有1~4