1、单片机系统设计,第1讲、51单片机的硬件与工作原理 第2讲、单片机的C语言设计第3讲、51单片机的片内系统 第4讲、单片机的系统扩展,课程及要求,1、课程的地位,课程及要求,2、基本要求:明确基本结构读懂程序懂简单接口会编写简单程序会进行简单设计 、一般要求: 能够根据网上的芯片资料进行接口设计 能够根据用户提出的要求设计并开发简单仪器设备 能根据新单片机的说明书进行设计,课程及要求,、学习方法 理论联系实际 设计实际项目 动手制作项目、课程安排见首页。,微型计算机系统基本知识1-1 概述1-2 微型计算机基础,第一章 微型计算机系统基本知识 1-1 概述 一、电子计算机以存储程序的方式、自动
2、地进行算术和逻辑运算的数字电子装置称电子计算机 1、历史1946年2月15日,世界上第一台数字式电子计算机是在美国费城宾夕法尼亚大学莫尔学院研制成功并运行,名为(ENIAC)。1955年10月切断电源。从公元10世纪中国古代的算盘到现代计算机的问世经历了一个漫长的阶段。,2、发展ENIAC: 5千次/秒,18000个电子管电子管式晶体管式中小规模集成电路1946 1958 1965 大、超大规模集成电路(微机时代) 四代。 1971 Intel4004: 6万次/秒,2300只/3423、基本结构引例:,(1)硬件:基本组成:运算器、控制器、存储器、输入/输出设备及接口。 冯 诺依曼结构中心思
3、想是存储程序原则:指令和数据一起以二进制的形式存放在存储器中。 由计算机之父美籍匈牙利数学家冯 诺依曼1945年3月提出,标志着电子计算机时代的真正开始。结构如图1-1所示:,(2)软件是计算机上运行的程序,是计算机系统中的逻辑部件而不是物理部件,是人的思维结果,它总是要通过某种物理介质来存储和表示的。其分类如下:,二、微机 1、微处理器、微型计算机、微型计算机系统 (1) 中央处理器Central Processing Unit-CPU负责取指,执指,实现操作的核心部件,包括运算器和控制器两大组成部分。如果中央处理器的电路集成在一片或少数几片大规模集成电路芯片上,就成为微处理器(MPU)。
4、(2) 微型计算机、微型计算机系统以微处理器为核心,加配存储部件和输入输出部件而成为微型计算机。,以微型计算机为基础,加上外围设备、电源、系统软件等就构成微型计算机系统微机系统的组成可小结如下:,2、微型计算机的分类* 独立使用式微机:PC机* 嵌入式微机:(1) 单片机:CPU、存储器、I/O接口等集成在一 块硅片上(2) 单板机:CPU、存储器、I/O接口等装配在一块电路板(3) 多板机:CPU、存储器、I/O接口等分做在多块电路板上,3、微型计算机的发展1971年,美国Intel公司研制出了Intel4004微处理器芯片,以它为核心的MCS-4计算机,由该公司年轻工程师马西安霍夫研制,标
5、志了世界上第一台微机的诞生,至今,已经历了五代: 第一代:19711973,4位和低档8位机,典型代表Intel4004,Intel8008。 第二代:19741978,中档8位机,典型代表Intel8080,MC6800,ZILOGZ80APPLE 6502等。 第三代:19781981,16位机,1981年,IBM公司推出了以Intel8088为CPU的PC个人电脑。,第四代:19811992,32位微机,如Intel80386,Motorola MC68020 第五代:1993至今,64位微机,奔腾微处理器芯片 三、单片机概述单片微型计算机:Single-Chip Microcomput
6、er One-Chip Microcomputer在一片芯片上集成CPU、存储器、I / O接口等组成一台完整的微型计算机。单片机作为工业控制和数据处理的计算机,也被称为“微控制器”、 “微处理器”(Micro-controller, Micro-processor)。主要有:4位、8位、16位、32位等,1、单片机发展情况:从1974年12月,仙童(Fairchild)公司首先推出8位单片机F8,采用:双片形式F8(8位CPU64RAM2个并行I/O口)3851(1K ROM定时器/计数器2个并行I/O)。至今经历四代: 第一代:197478,典型代表如Intel公司的MCS-48型8位单片
7、机,采用8位CPU、2个 I/O口、8位定时器/计数器、64 RAM/ 1K ROM、简单中断,寻址小于4K,且无串行口。,第二代:197883,高档8位单片机,如MCS-51,MC6801,Zilog公司的Z8等。增加功能:串行I/O、多级中断、16定时/计 数器、片内RAM/ROM增大,寻址64K,片内 带A/D转换器接口。第三代:198390年代初,16位单片机出现,如MCS- 96系列的8096、8098芯片。增加性能:16位CPU,RAM/ROM增大,中断能力增强、A/D、 HSIO等第四代:90年代至今,高档16位产品和32位产品的出现,如80196,MC8300等,性能、速度大大
8、 提高。,2、MCS-51单片机是Intel公司的8位系列单片机,包括51和52两个子系列。两者的区别在于52子系列片内ROM、RAM的容量翻倍,定时计数器增加到3个。,单片机的供货状态: 片内无ROM型:单片机片内无ROM,价格便宜,使用时必须另外配置程序存储器EPROM,实际上已成为8751。如8031、8032、80C31 片内ROM型:单片机片内带有掩膜ROM,用户无法更改其程序。如8051、8052,用于大规模专用产品。 片内EPROM型:单片机片内带有EPROM,用户通过高压脉冲可写入程序,如8751、87523、单片机特点和应用(略),1-2 微型计算机基础 返回 一、微机的三总
9、线结构 总线:微机系统中各部件和模块之间用于传送信息的一组公 用导线。一般包括,数据总线、地址总线和控制总线。 地址:内存由许多存储单元组成,每个存储单元(字节)有一个用于区分的编号,称为地址,一般用十六进制数表示。微机的总线结构,1、数据总线(DB):传送数据,双向,CPU的位数和外部数据总线的位数一致。而数据可能是指令代码、状态量或控制量,也可能是真正的数据。 2、地址总线(AB):传送CPU发出的地址信息,单向,宽度(线数目)决定了CPU的可寻址范围。 例如:2根地址线,可寻址22=4个字节单元;16根地址线,可寻址216=64K字节单元; 3、控制总线(CB):传送使微机协调工作的定时
10、、控制信号,双向,但对于每一条具体的控制线,都有固定的功能。控制线数目受芯片引脚数量的限制。,8位微机的DB总是8位,AB总是16位,而CB的数目则随机型不同而不同。二、微处理器的基本结构微处理器(CPU)是微型计算机的核心,内部采用单总线结构,由运算器和控制器两大部分组成。微处理器典型结构如下图所示。,1、运算器 (1)算术逻辑单元ALU (arithmetic logic unit)是运算器的主要组成部分,是一个纯粹的运算部件,没有寄存功能。 (2)累加器A (Accumulator)是CPU中使用最忙的关键寄存器。ALU进行运算时一个操作数必需来自累加器,同时也是运算结果的寄存场所。 (
11、3)标志寄存器F(Flag)存放微机执行一条指令后所处状态的信息。不同的计算机,标志有所不同。常用的标志有:C、AC、OV、P等。,(4)暂存寄存器TR (temp register)用来存放参加ALU运算的另一个操作数,该操作数必须先暂存在TR中,以免数据发生冲突。 (5)地址和数据缓冲器(ABuffer、DBuffer)协调CPU与存储器、I/O接口电路之间在运行速度、工作周期等方面必然存在的差异。 (6)寄存器阵列(RA)(register array)包括通用寄存器和专用寄存器两种。 通用寄存器组:作为CPU内部的小容量高速存储器,用来存放一些中间数据,以减少CPU对存储器的频繁访问专
12、用寄存器组:PC、SP、F、AB、DB等。,2、控制器完成指令译码,并发出各个操作的控制信号, 主要包括如下部件: (1)程序计数器PC(program counter)存放要读取的指令所在地址的专用寄存器。具有计数(加1)和接受转移地址的二种功能。 (2)指令寄存器IR (instruction register)存放CPU从ROM中取出的正要被执行的指令,使整个分析执行的过程,一直在该指令的控制下,而指令的操作码送ID,指令中的操作数,一般为参加运算的地址,被送到地址缓冲寄存器。 (3)指令译码器ID (instruction decoded)接收IR送来的操作码并译码,生成与指令相应的特
13、定操作的启动信息。,(4)定时控制逻辑PLA(programmable logic array)又称可编程逻辑阵列。ID送出的电平信号与外部时钟脉冲在该电路中组合,形成各种内部CON信号和外部控制信号。它完成指令的执行有两种实现方式: (a)微程序控制:微存储元中保持微码,每一个微码对应于一个最基本的微操作,又称微指令。指令译码以后,通过执行由这些微码确定的若干个微操作,即可完成某条指令的执行。 (b)逻辑硬布线控制:指令译码后,控制器通过不同的逻辑门的组合,发出不同序列的控制时序信号,直接去执行一条指令中的各个操作。,3、CPU执行指令的过程一条指令的执行过程包括取指和执指两个阶段。 指令执
14、行前,首先要一条指令的地址送到程序计数器PC中,然后开始执行指令。具体过程如下: 例如:执行指令 MOV A,#05H 机器码为:第一单元74H(指令码);第二单元05H(数据码),三、 存储器及其读写原理 1、有关常用术语 (1)位(bit)、字节(Byte)、字(Word)、双字(DW)。1B=8bit;1KB=1024B;1MB=1024KB;1GB=1024MB (2)字长:计算机每个字所包含的二进制数码的位数。通常国际上以微处理器芯片外部数据总线的位数来确定计算机的字长。 (3)内存:存放当前运算所需的程序和数据,容量较小、存取速度快,设在微机内部。多数为MOS电路组成的半导体存储器
15、,如RAM、ROM、EPROM、EEPROM。 (4)外存:存放大量暂时不直接参与运算的程序和数据,可成批转入内存。在微机中,一般为磁盘、光盘等。,2、存储器结构 计算机有两种存储结构:哈 佛结构:程序存储器和数据存储器分开。普林斯顿结构:程序存储器和数据存储器合并。 单片机为哈佛结构RAM存储器由三部分:存储体、地址译码器和控制电路。ROM结构类似,区别在于只能作读选通。注意 :(1)对于8位地址,可表示256个单元;(2)每个单元可存放8位二进制数;(3)注意单元内容与地址的区别;,3、存储器读写原理存储器工作过程如下:CPU地址地址译码器选中单元由CPU发出的“读”或“写”命令。例如:
16、读操作:读02H单元内容1)02H由AB 地址译码 找到02号单元;2)CPU发出“读”信号;3)(02H)=A3H(读出的数据) D-BUS。4)A3H 指定寄存器 写操作:数据#F7H 03H单元中;1)03H由AB 地址译码 找到03号单元;2)CPU将F7H送到D-BUS上3)CPU发出“写”信号;4)#F7H (03H),四、输入/输出设备及其接口 I/O设备:简称外设,功能是为微机提供具体的输入输出 手段。标准的I/O设备系指键盘和显示器。 I/O接口:由于各种外设的工作速度、驱动方式差别很大, 无法与CPU直接匹配,而需要一个接口电路来充当 它们与CPU间的桥梁,起转换、协调作用
17、。,What is “single chip Microcomputer”,1 computer 1946.6 匈牙利 冯.诺依曼 提出的电子计算机概念程序控制 存储程序冯.诺依曼 提出的电子计算机结构运算器 (ALU)控制器 (Controller)存储设备 (Memory)输入设备 (Input)输出设备 (Output),What is “single chip Microcomputer”,2 单片机的历史 探索阶段(70年代中期):Intel/Motorola /Zilog 代表:Mcs48 single chip Microcomputer 完善阶段(70年代后期) : Mcs51
18、系列: Bus、外围SFR集中管理、位地址、突出控制功能的指令 Microcontrollers(80年代) :ADC/DAC/WDT/PWM/高速IO 微控制器的全面发展阶段(90年代) : Embedded Systems software,What is “single chip Microcomputer”,3 单片机的结构 掌握结构的要求层次: 各结构模块的功能 各结构模块的使用、内部寄存器 内部逻辑结构、内部硬件结构,Oscillator CPU SFR RAM CTC Interrupt SIO PIO ROM WDT ADC DAC PWM DTMF Voice LCD ,Wh
19、at is “single chip Microcomputer”,4 单片机的分类 位数:1bit、 4bit、8bit、 16bit、 32bit 问题:微机的位数由什么决定? 总线形式:内部总线是否共用(half) 专用通用:如电话、键盘、洗衣机51 / PIC/OP8/MC68HC 厂家:Atmel、Philips、Motorola、Microchip、NS、Zilog、Winbond、 Emc 51(P2):8031(无ROM)8051(掩膜ROM)8751(EPROM) 52增加一个定时计数器、一个中断源、128Byte RAM、4KByte ROM 89C51、89C52、89C
20、2051、1051、2054 (flashROM) 单片机的用途 用途广泛:测量、控制、军用、工业、民用、玩具多个领域 特点:智能/交互/廉价/开发方便 与PLC、DSP、FPGA、Computer 比较,二、单片机的开发,开发过程,1 应用问题的提出: 炉温自动控制要求T-t 水平保温 升温 降温 2 初步分析 水平保温 不用CPU多段控制 选用单片机 3 总体设计 (初步框图) 预置值输入、保存、采样运算、显示、控制 4 分各部分进行设计和实验 具体软硬件 5 总体制作 调试 6 文件资料整理,二、单片机的开发,2、开发工具 资料 软件仿真1) 机器语言、汇编语言和高级语言2) 源程序、目
21、标程序和程序汇编 硬件仿真(仿真器) 编程器,第1章、51单片机的硬件与工作原理,1.1、存储器ROM、RAM、SFR / 片内、片外 1.2、定时计数器功能、内部结构、SFR、使用 1.3、中断系统功能、内部结构、SFR、使用 1.4、输入输出端口P0-P3用途、并口内部结构及使用、串口SFR及使用 1.5、时钟、复位与其它引脚时钟周期、工作周期、引脚接线、功能、复位状态,2.4 存储器结构和地址空间,单片微机的存储器有两种基本结构:一种是在通用微型计算机中广泛采用的将程序和数据合用一个存储器空间的结构,称为普林斯顿(Princeton)结构;另一种是将程序存储器和数据存储器截然分开,分别寻
22、址的结构,称为哈佛(Haryard)结构。Intel的MCS51和80C51系列单片微机采用哈佛结构。图29为80C51单片微机存储器映象图。在物理上设有4个存储器空间程序存储器: 片内程序存储器;片外程序存储器。数据存储器: 片内数据存储器;片外数据存储器。,图29 80C51单片微机存储器映象图,第1章 51单片机的硬件与工作原理 1.1、存储器,51单片机的存储器,各存储器的作用 RAM:保存数据 SFR:工作、接口、定时器映射 ROM:保存程序,51系统存储结构,位寻址区存储结构,1. ACC:累加器,通常用A表示。不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这
23、么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。它的名字特殊,身份也特殊,稍后我们将学到指令,可以发现,所有的运算类指令都离不开它。,2、B:一个寄存器。在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。,3、DPTR(DPH、DPL):数据指针,可以用它来访问外部数据存储器中的任一单元,如果不用,也可以作为通用寄存器来用,由我们自已决定如何使用。,4、PSW:程序状态字。这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。它的各位功能如下:D7 D6 D5 D4 D3 D2 D1 D0CY AC F0 R
24、S1 RS0 OV P (1)CY:进位标志。8051中的运算器是一种8位的运算器,我们知道,8位运算器只能表示到0-255,如果做加法的话,两数相加可能会超过255,这样最高位就会丢失,造成运算的错误,怎么办?最高位就进到这里来。这样就没事了。 例:78H+97H(01111000+10010111) (2)AC:半进位标志。 例:57H+3AH(01010111+00111010) (3)F0:用户标志位,由我们(编程人员)决定什么时候用,什么时候不用。 (4)RS1、RS0:工作寄存器组选择位。这个我们已知了。 (5)OV:溢出标志位。 (6)P:奇偶校验位:它用来表示ALU运算结果中二
25、进制数位“1”的个数的奇偶性。若为奇数,则P=1,否则为0。 例:某运算结果是78H(01111000),显然1的个数为偶数,所以P=0。,5、P0、P1、P2、P3:这个我们已经知道,是四个并行输入/输出口的寄存器。它里面的内容对应着管脚的输出。 6、PC: 程序计数器. 7、SP:堆栈指针。“先进后出,后进先出”,第1章 51单片机的硬件与工作原理 1.5、引脚等,二、时钟、复位时钟周期、机器周期、复位状态,第1章 51单片机的硬件与工作原理 1.5、引脚等,二、时钟、复位时钟周期、机器周期、复位状态,第1章 51单片机的硬件与工作原理 1.5、引脚等,二、时钟、复位时钟周期、机器周期、复
26、位状态,第1章 51单片机的硬件与工作原理 1.5、引脚等,二、时钟、复位时钟周期、机器周期、复位状态,一、以ALU为中心的运算器 二、以定时控制逻辑为中心的控制器 三、可编程的输入输出口线 四、存储器空间程序存储器与数据存储器严格分开,专用寄存器与数据存储器统一编址是单片机与一般微机芯片不同的两个特点 还有定时计数器、中断系统、串行口、模拟比较器、看门狗电路等,第1章 51单片机的硬件与工作原理 1.1、存储器,问题: 1、 8031/51/52 单片机有哪些存储器,容量多少?各自的作用。 2、如何访问不同种类的存储器? 3、RAM中分为哪几个区间? 4、工作寄存器R0-R7如何与RAM地址
27、对应? 5、位地址与字节地址的区分,RAM中的位地址对应。 6、SFR中与CPU有关的有哪些? 7、PSW中的C/AC/OV/P,以及Z与运算的关系。,2.5.1 P0口,P0口是一个多功能的8位口,可以字节访问也可位访问,其字节访问地址为80H,位访问地址为80H87H。 位结构P0口位结构原理图如下图所示。,图211 P0口位结构原理图, P0口中一个多路开关:多路开关的输入有两个,地址数据输出;输出锁存器的输出/Q。多路开关的输出用于控制输出FET Q0的导通和截止。多路开关的切换由内部控制信号控制。 P0口的输出上拉电路导通和截止受内部控制信号和地址数据信号共同(相“与”)来控制。 当
28、内部信号置1时,多路开关接通地址数据输出端。,当地址数据输出线置1时,控制上拉电路的“与”门输出为1,上拉FET导通,同时地址数据输出通过反相器输出0,控制下拉FET截止,这样A点电位上拉,地址数据输出线为1。 当地址数据输出线置0时,“与”门输出为0,上拉FET截止,同时地址数据输出通过反相器输出1,控制下拉FET导通,这样A点电位下拉,地址数据输出线为0。 此时的输出状态随地址数据线而变。因此,P0口可以作为地址/数据复用总线使用。这时上下两个FET处于反相,构成了推拉式的输出电路,其负载能力大大增加。此时的P0口相当一个双向口。当内部信号置0时,多路开关接通输出锁存器的/Q端这时明显地可
29、以看出两点:,由于内部控制信号为0,与门关闭,上拉FET截止,形成P0口的输出电路为漏极开路输出。 输出锁存器的Q端引至下拉FET栅极,因此P0口的输出状态由下拉电路决定。在P0口作输出口用时,若P0i输出1,输出锁存器的Q端为0,下拉FET截止,这时P0i为漏极开路输出;若P0i输出0,输出锁存器的Q端为1,下拉FET导通,P0i输出低电平。在P0口作输入口用时,为了使P0i能正确读入数据,必须先使P0.i置1。这样,下拉FET也截止,P0i处于悬浮状态。A点的电平由外设的电平而定,通过输入缓冲器读入CPU。这时P0口相当于一个高阻抗的输入口。, P0口的功能 作IO口使用相当于一个真正的双
30、向口:输出锁存、输入缓冲,但输入时需先将口置1;每根口线可以独立定义为输入或输出。它具有双向口的一切特点。与其它口的区别是,输出时为漏极开路输出,与NMOS的电路接口时必须要用电阻上拉,才能有高电平输出;输入时为悬浮状态,为一个高阻抗的输入口。, 作地址数据复用总线用此时P0口为一个准双向口。但是有上拉电阻,作数据输入时,口也不是悬浮状态。作地址数据复用总线用。作数据总线用时,输入输出8位数据D0D7;作地址总线用时,输出低8位地址A0A7。当P0口作地址数据复用总线用之后,就再也不能作IO口使用了。,P1口是一个8位口,可以字节访问也可按位访问,其字节访问地址为90H,位访问地址为90H97
31、H。 位结构和工作原理P1口的位结构如下图所示。包含输出锁存器、输入缓冲器BUF1(读引脚)、BUF2(读锁存器)以及由 FET晶体管 Q0与上拉电阻组成的输出输入驱动器。 P1口的工作过程分析如下:P1.i位作输出口用时:CPU输出0时,D0,Q0,Ql,晶体管Q0导通,A点被下拉为低电平,即输出0;CPU输出1时,Dl,Q1,Q0,晶体管Q0截止,A点被上拉为高电平,即输出l。,2.5.2 P1口,图212 P1口位结构原理图,P1i位作输入口用时:先向P1i位输出高电平,使A点提升为高电平,此操作称为设置P1i为输入线。若外设输入为1时A点为高电平,由BUFI读入总线后B点也为高电平;若
32、外设输入为0时A点为低电平,由BUF1读入总线后B点也为低电平。 、 P1口的特点输出锁存器,输出时没有条件;输入缓冲,输入时有条件,即需要先将该口设为输入状态,先输出1;工作过程中无高阻悬浮状态,也就是该口不是输入态就是输出态。具有这种特性的口不属于“真正”的双向口,而被称为“准”双向口。, P1口的操作 字节操作和位操作CPU对于 P1口不仅可以作为一个 8位口(字节)来操作,也可以按位来操作。有关字节操作的指令有:输出: MOV P1,A ;P1AMOV P1,data ;P1dataMOV P1,direct ;P1direct输入: MOV A,P1 ;AP1MOV direct,P
33、l ;directPl,有关位操作的指令有:置位、清除:SETB P1.i ;P1.i1CLR Pli ;P1i0输入、输出:MOV P1i,C ;P1iCYMOV C,P1i ;CYP1.i判跳: JB P1i,rel ;P1.i=1,跳转JBC P1i,rel ;P1.i1,跳转且 ;清P1.i0逻辑运算: ANL C,P1i ;CY(P1.iCY)ORL C,P1i ;CY(P1.iCY)P1i中的i0,7。,P1口不仅可以以8位一组进行输入、输出操作,还可以逐位分别定义各口线为输入线或输出线。例如:ORL P1,0 0 0 0 0 0 1 0 B使P1l位口线输出l,而使其余各位不变。
34、 ANL P1,1 1 1 1 1 1 0 1 B使P11位线输出0,而使其余各位不变。, 读引脚操作和读锁存器操作从P1口的位结构图中可以看出,有两种读口的操作:一种是读引脚操作,一种是读锁存器操作。在响应CPU输出的读引脚信号时,端口本身引脚的电平值通过缓冲器BUF1进入内部总线。这种类型的指令,执行之前必须先将端口锁存器置1,使A点处于高电平,否则会损坏引脚,而且也使信号无法读出。,这种类型的指令有:MOV A,P1 ;AP1MOV direct,P1 ;directP1在执行读锁存器的指令时,CPU首先完成将锁存器的值通过缓冲器BUF2读入内部,进行修改,然后重新写到锁存器中去,这就是
35、“读一修改一写”指令。这种类型的指令包含所有的口的逻辑操作(ANL、ORL、XRL)和位操作(JBC、CPL、MOV、SETB、CLR等)指令。, P1口的多功能线在80C52中,P10和P11口线是多功能的,即除作一般双向I/O口线之外,这两根口线还具有下列功能:P10T2的外部输入端T2;P11T2的外部控制端T2EX。,P2口是一个多功能的8位口,可以字节访问也可位访问,其字节访问地址为A0H,位访问地址为A0HA7H。 P2口位结构和工作原理P2口位结构原理图如下所示。多路开关的输入有两个:一个是口输出锁存器的输出端Q;一个是地址寄存器(PC或DPTR)的高位输出端。多路开关的输出经反
36、相器反相后去控制输出FET的 Q0。多路开关的切换由内部控制信号控制。 输出锁存器的输出端是Q而不是Q,多路开关之后需接反相器。,2.5.3 P2口,图213 P2口位结构原理图,P2口的工作状态是I/O口状态。在内部控制信号的作用下,多路开关的输入投向输出锁存器的输出Q(C点)侧,这样多路开关将接通输出锁存器。若经由内部总线输出0,输出锁存器的Q端为0,信号经多路开关和反相器后输出1,Q0导通,A点为0,输出低电平;若经由内部总线输出1,输出锁存器的Q端为1,反相器后输出0,Q0截止,A点为1 ,输出高电平。P2口的工作状态是输出高8位地址。 在内部控制信号的作用下,多路开关的输入投向地址输
37、出(B点)侧,这样多路开关将接通地址寄存器输出。A点的电平将随地址输出的0、1而0、1地变化。, P2口的功能从上述工作过程的分析中可以看出P2口是一个双功能的口: 作IO口使用时,P2口为一准双向口。 作地址输出时,P2口可以输出程序存储器或片外数据存储器的高8位地址,与P0输出的低地址一起构成16位地址线,从而可分别寻址64KB的程序存储器或片外数据存储器。地址线是8位一起自动输出的。 P2口使用中注意的问题 由于P2口的输出锁存功能,在取指周期内或外部数据存储器读、写选通期间,输出的高8位地址是锁存的,故无需外加地址锁存器。, 在系统中如果外接有程序存储器,由于访问片外程序存储器的连续不
38、断的取指操作,P2口需要不断送出高位地址,这时P2口的全部口线均不宜再作I/O口使用。 在无外接程序存储器而有片外数据存储器的系统中,P2口使用可分为两种情况:若片外数据存储器的容量256 B:可使用“MOVX A,Ri”及“MOVX Ri,A”类指令访问片外数据存储器,这时P2口不输出地址,P2口仍可作为I/O口使用;若片外数据存储器的容量256 B:这时使用“MOVX A,DPTR”及“MOVXDPTR,A”类指令访问片外数据存储器,P2口需输出高8位地址。在片外数据存储器读、写选通期间,P2口引脚上锁存高8位地址信息,但是在选通结束后,P2口内原来锁存的内容又重新出现在引脚上。,使用“M
39、OVX A,Ri”及“MOVX Ri,A”类访问指令时,高位地址通过程序设定,只利用P1、P3甚至P2口中的某几根口线送高位地址,从而保留P2口的全部或部分口线作I/O口用。,2.5.4 P3口,P3口是一个多功能的8位口,可以字节访问也可位访问,其字节访问地址为B0H,位访问地址为B0HB7H。 位结构与工作原理P3口的位结构原理如下所示。与非门有两个输入端:一个为口输出锁存器的Q端,另一个为替代功能的控制输出。与非门的输出端控制输出FET管Q0。有两个输入缓冲器,替代输入功能取自第一个缓冲器的输出端;I/O口的通用输入信号取自第二个缓冲器的输出端。,图214 P3口位结构原理图,输出工作过
40、程:当替代输出功能B点置1时,输出锁存器的输出可以顺利通到引脚P3i。其工作状况与P1口相类似。这时P3口的工作状态为I/O口,显然此时该口具有准双向口的性质。当输出锁存器的输出置1时,替代输出功能可以顺利通到引脚P3i。若替代输出为0时,因与非门的C点已置l,现B点为0,故与非门的输出为l,使Q0导通,从而使A点也为0。若替代输出为1时,与非门的输出为0,Q0截止,从而使A点也为高电平。这时P3口的工作状态处于替代输出功能状态。, P3口的功能P3口是一个多功能口。可作I/O口使用,为准双向口。既可以字节操作,也可以位操作;既可以8位口操作,也可以逐位定义口线为输入线或输出线;既可以读引脚,
41、也可以读锁存器,实现“读一修改一输出”操作。 可以作为替代功能的输入、输出。替代输入功能:P30 RXD,串行输入口。P32INT0,外部中断0的请求。P33INT1,外部中断1的请求。,P34T0,T0外部计数脉冲输入。 P35T1,T1外部计数脉冲输入。 替代输出功能: P3lTXD,串行输出口。 P36WR外部数据存储器写选通,输出,低电平有效。 P37RD 外部数据存储器读选通,输出,低电平有效。,第1章、51单片机的硬件与工作原理 1.4、输入输出端口,并口使用图例,例、要求由P1.0P1.3设置按键输入信号, 并在P1.4P1.7上用LED显示最先按下的按键。设计硬件电路。,片外:
42、按键和开关(硬件/软件) 片内:1、可靠接法2、读引脚,第1章、51单片机的硬件与工作原理 1.4、输入输出端口,并口使用图例,注意 1、LED特点 2、单片机驱动能力 3、段码的译码过程,第1章、51单片机的硬件与工作原理 1.4、输入输出端口,并口使用图例,第1章、51单片机的硬件与工作原理 1.4、输入输出端口,并口使用图例,第1章、51单片机的硬件与工作原理 1.4、输入输出端口,三、串口及使用 一)、串行口概述 同步、异步 作用:发送、接收 二)、51串行口的结构 引脚:RXD、TXD 寄存器(P26)控制寄存器SCON:有位地址;读写SBUF发送:在TI=0时,由写SBUF指令引起
43、发送(时钟)和数据 接收:在RI=0,REN=1时,检测RXD下跳沿,并排干扰 再 启动,第1章、51单片机的硬件与工作原理 1.4、输入输出端口,三)、串行口的工作方式 1、方式0 :移位寄存器输入输出方式输出:8位数据从RXD串行输出,同步信号从TXD输出输入:8位数据从RXD串行输入,同步信号从TXD输入,第1章、51单片机的硬件与工作原理 1.4、输入输出端口,三)、串行口的工作方式 2、方式1:适点对点通讯除8数据位外,加起始位0和停止位1,波特率可变 硬件:数据从TXD串行输出,从RXD输入硬件示意图:单片机 1 机 2TXD RXDRXD TXD,第1章、51单片机的硬件与工作原
44、理 1.4、输入输出端口,三)、串行口的工作方式 3、方式2、3:适合多机通讯有9数据位, 外加起始位0和停止位1,波特率可变 硬件:数据从TXD串行输出,从RXD输入。一主机,多从机。主机TXDRXD,TXD RXD TXD RXD TXD RXD从机1 从机2 从机n,第1章、51单片机的硬件与工作原理 1.4、输入输出端口,三)、串行口的多机通讯:(方式2、3) 发送的第9数据位TB8及SM2可由软件控制 主机: 发地址时:TB8=1,发数据时:TB8=0; 从机收: P26: SM2=1且RB8=0不响应,余可引起中断 响应 从机(中断程序接收信号) 平时待信号,SM2=1,仅执行主程
45、和得到地址 地址对后,令SM2=0即可收所有信号。,第1章、51单片机的硬件与工作原理 1.4、输入输出端口,三、串口及使用 四)、串行口的波特率(bps) 方式0:fosc/12 方式1:2smod*定时器T1的溢出率 / 32 方式2:fosc*2smod/64 方式3:2smod*定时器T1的溢出率 / 32 根据波特率计算T1初值 x=256-(2smod*fosc)/384/BR 波特率 例 x=256-(20*6M)/384/1200=243x=256-(20*6M)/384/1200 x=256-(20*12M)/384/1200,第1章 51单片机的硬件与工作原理 1.5、引脚
46、等,一、引脚: P0-P3 32 电源: 2 晶振: 2 RST: 1 EA: 1 ALE: 1 PSEN:1,第1章 51单片机的硬件与工作原理 1.5、引脚等,其它引脚 连接: P0-P3 32 电源: 2 晶振: 2 RST: 1 EA: 1 ALE: 1 PSEN:1,第1章 51单片机的硬件与工作原理 1.5、引脚等,第1章、51单片机的硬件与工作原理,1.1、存储器ROM、RAM、SFR / 片内、片外 1.2、定时计数器功能、内部结构、SFR、使用 1.3、中断系统功能、内部结构、SFR、使用 1.4、输入输出端口P0-P3用途、并口内部结构及使用、串口SFR及使用 1.5、时钟
47、、复位与其它引脚时钟周期、工作周期、引脚接线、功能、复位状态,第1章、51单片机的硬件与工作原理,习题:P33 思考:3、4、5、8 EX:6、9、11(方式2)、12、13、14、16、10、17、19、20,第1章、51单片机的硬件与工作原理 1.2、定时计数器,一、计数器:功能、 加计数器 和 减计数器一个4位的加(减)计数器,要求计数值为10,初值设为多少一个8位的加(减)计数器,要求计数值为120,初值设为多少10位的加(减)计数器,要求计数值为120,初值设为多少 二、定时器 定时器 = 时钟+计数器一个定时器由T=1uS的时钟和10位加计数器组成,要求定时1mS,计数器初值设为多
48、少,此定时器最长定时时间是多少。 一个定时器由T=1uS的时钟和16位加计数器组成,要求定时1mS,计数器初值设为多少,此定时器最长定时时间是多少。,第1章、51单片机的硬件与工作原理 1.2、定时计数器,三、51定时计数器 51:两个定时计数器 T1 T0 (52:三个定时计数器) 结构: gate c/t m1 m0 TR TF 及引脚T0/1、INT0/1 作用 SFR TMOD(89h):gate c/t m1 m0 gate c/t m1 m0 TCON(88h):tf1 tr1 tf0 tr0 ie1 it1 ie0 it0位地址:8f 8e 8d 8c 8b 8a 89 88 TH1、TL1 TH0、TL0,