车用单片机原理 课件 第1-3章 汽车电子技术与车用单片机概述、MCS-51单片机硬件结构、C51程序设计_第1页
车用单片机原理 课件 第1-3章 汽车电子技术与车用单片机概述、MCS-51单片机硬件结构、C51程序设计_第2页
车用单片机原理 课件 第1-3章 汽车电子技术与车用单片机概述、MCS-51单片机硬件结构、C51程序设计_第3页
车用单片机原理 课件 第1-3章 汽车电子技术与车用单片机概述、MCS-51单片机硬件结构、C51程序设计_第4页
车用单片机原理 课件 第1-3章 汽车电子技术与车用单片机概述、MCS-51单片机硬件结构、C51程序设计_第5页
已阅读5页,还剩79页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

车用单片机原理(含实验与实训)12汽车电子技术的发展单片机概述单击此处添加标题单击此处添加标题01汽车电子技术的发展一、汽车电子技术的发展史随着电子、电气以及网联技术的迅猛发展,传统的机械结构与电子信息技术在不断融合,汽车产品的电子化、电气化和智能化水平也在逐步提高。目前汽车中的电子装置设备,无论是数量还是成本都在不断攀升,特别是随着新能源汽车的突飞猛进,汽车除底盘和车身外,大部分机械结构,已被电子电气化设备替代,汽车电子化的程度已成为衡量汽车技术水平的重要标志之一。一、汽车电子技术的发展史

汽车电子技术的发展历程,大体可以分为以下三个阶段:第一阶段,从20世纪中期到70年代中期,是汽车电子控制技术初步发展阶段。第二阶段,从20世纪70年代中期到90年代中期,随着电子集成电路的快速发展,微型控制器开始在汽车上大规模应用,是汽车电子控制技术迅猛发展的阶段。第三阶段,从20世纪90年代中期开始到现在,是汽车电子控制技术向智能化发展的阶段。二、汽车电子系统在整车中的作用汽车电子产业是汽车工业与电子信息产业的结合,目前正处于高速发展阶段。汽车电子产品在整车制造中,所占的比例越来越高,汽车电子信息技术不仅推动了汽车工业的发展,同时也极大地促进了电子信息、计算机等产业的发展。现代汽车电子技术在改善汽车动力性、经济性、安全性、行驶稳定性和乘坐舒适性等方面发挥着不可替代的作用。总体来说,汽车电子技术在汽车中的应用,大体可分为以下五个方面:(一)动力传动电子控制系统(二)底盘电子控制系统(三)车身电子控制系统(四)车载智能信息系统(五)车载故障自诊断系统三、汽车电子行业发展趋势目前汽车电子信息产业已经迎来黄金发展期。汽车电动化、智能化趋势加速,电子化程度持续提升,汽车电子信息有望接力智能手机成为电子行业发展的新动力。二、汽车电子技术的发展史

随着电子工业的飞速发展,汽车电子在汽车领域的应用日益深入,汽车电子占汽车总成本的比重日益加大,尤其中高端汽车与新能源汽车中汽车电子附加值更高。目前,国内紧凑型乘用车中汽车电子占成本的比重约为15%,中高端乘用车中汽车电子占成本的比重约为28%,而新能源汽车电子占成本的比重高达47%-65%,预计未来高端配置逐步向低端车渗透将是趋势,将带来汽车电子在乘用车成本中的比重持续提升,汽车行业仍处于“电子化”趋势中。02单片机概述一、什么是单片机一片半导体硅片集成:中央处理单元(CPU)、存储器(RAM、ROM)、并行I/O、串行I/O、定时器/计数器、中断系统、系统时钟电路及系统总线的微型计算机。具有微型计算机属性,因而被称为单片微型计算机,简称单片机。一、什么是单片机单片机的发展大致分为4个阶段。

第一阶段(1974年~1976年):单片机初级阶段。因工艺限制,双片形式且功能较简单。1974年12月,仙童公司推出了8位的F8单片机,实际只包括了8位CPU、64BRAM和2个并行口。

第二阶段(1976年~1978年):低性能单片机阶段。1976年Intel的MCS-48单片机(8位)极大地促进了单片机变革和发展,1977年GI公司推出PIC1650,但这个阶段仍处于低性能阶段。二、单片机的产生与发展

第三阶段(1978年~1983年):高性能单片机阶段。1978年,Zilog公司推出Z8单片机,1980年,Intel公司在MCS-48系列基础上推出MCS-51系列,Mortorola推出6801单片机。使单片机性能及应用跃上新台阶。此后,各公司8位单片机迅速发展。推出的单片机普遍带有串行I/O口、多级中断系统、16位定时器/计数器,片内ROM、RAM容量加大,且寻址范围可达64KB,有的片内还带有A/D转换器。由于这类单片机性/价比高,得到广泛应用,是目前应用数量最多的单片机。二、单片机的产生与发展第四阶段(1983年~现在):8位单片机巩固发展及16位单片机、32位单片机推出阶段。

16位典型产品Intel公司的MCS-96系列单片机。而32位单片机除具有更高集成度外,其数据处理速度比16位单片机提高许多,性能比8位、16位单片机更加优越。

20世纪90年代单片机大发展时期,Mortorola、Intel、ATMEL、德州仪器(TI)、三菱、日立、飞利浦、LG等公司开发一大批性能优越的单片机,极大推动单片机应用。近年,不少新型高集成度的单片机涌现。目前,除8位单片机得到广泛应用外,16位单片机、32位单片机也得到广大用户青睐。三、常见单片机的类型和特点

按用途可分为通用型和专用型两大类。通用型:内部可开发资源(如存储器、I/O等各种外围功能部件等)可全部提供给用户。专用型专门针对某些产品的特定用途而制作的。根据需要,设计一个以通用单片机芯片为核心,再配以外围接口电路及外围设备,并编写相应软件来满足各种不同需要的测控系统。通常所说和本书介绍的是指通用型单片机。三、常见单片机的类型和特点例如,各种家用电器中的控制器等。由于特定用途,单片机芯片制造商常与产品厂家合作,设计和生产“专用”的单片机。在设计中,已对“专用”单片机的系统结构最简化、可靠性和成本的最佳化等做了全面综合考虑,所以“专用”单片机具有十分明显的综合优势。无论“专用”单片机在用途上有多么“专”,其基本结构和工作原理都是以通用单片机为基础。三、常见单片机的类型和特点单片机特点体积小、重量轻。电源单一、功耗低。功能强、价格低。运行速度快、抗干扰能力强、可靠性高。可以嵌入到电子产品中----嵌入式应用系统。四、单片机的发展趋势低功耗化:CMOS化,功耗小,配置有等待状态、睡眠状态、关闭状态等工作方式。消耗电流仅在µA或nA量级,适于电池供电的便携式、手持式的仪器仪表及其它消费类电子产品。外围电路内装化:随着集成电路技术的快速发展,单片机除了可以将中央处理器(CPU)、随机存取数据存储器(RAM)、只读程序存储器(ROM)、并行和串行通信接口、中断系统、定时电路、时钟电路等集成到一块芯片之外,还可以将传感器、输入接口处理电路,显示器件等都集成到单片机内部,一块单片机就等于一个具有高性能运算的计算机、单片机包含的单元电路越多,功能就越强大。低电压化:几乎所有的单片机都有WAIT、STOP等省电运行方式。允许使用的电压范围越来越宽,一般在3~6V范围内工作。低电压供电的单片机电源下限已可达1~2V。目前0.8V供电的单片机已经问世。单片机的发展趋势车用单片机原理(含实验与实训)21MCS-51单片机的总体结构MCS-51单片机的引脚功能单击此处添加标题单击此处添加标题43MCS-51单片机中央处理器MCS-51单片机存储器65MCS-51单片机并行I/O端口MCS-51单片机的时序7MCS-51单片机的辅助电路01MCS-51单片机的总体结构第一节MCS-51单片机的总体结构中央处理器CPU:8位,运算和控制功能内部ROM:4KB掩膜ROM,用于存放程序、原始数据和表格内部RAM:共256个RAM单元,用户使用前128个单元,用于存放可读写数据,后128个单元被专用寄存器占用。定时/计数器:两个16位的定时/计数器,实现定时或计数功能并行I/O口:4个8位的I/O口P0、P1、P2、P3。串行口:一个全双工串行口。中断控制系统:5个中断源。时钟电路:可产生时钟脉冲序列,允许晶振频率6MHZ和12MHZ。51系列单片机的内部结构框图如图2-1所示。第一节

MCS-51单片机的总体结构图2-1

8051单片机内部结构图02MCS-51单片机的引脚功能第二节

MCS-51单片机的引脚功能图2-251单片机的引脚信号

51单片机一般采用40引脚双列直插(DIP)封装,如图2-2所示。51单片机的引脚可以分为三类,分别是电源和时钟引脚、I/O引脚、控制引脚。第二节

MCS-51单片机的引脚功能双列直插式(DIP)51系列单片机芯片一般为40条引脚,其引脚说明如下:一、电源及时钟引脚功能

◆主电源引脚

Vcc(40脚):接+5V电源正端。

Vss(20脚):接+5V电源地端。

◆外接晶体引脚

XTAL1(19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,可构成片内振荡器。当采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHMOS单片机,该引脚作为外部振荡信号的输入端。第二节

MCS-51单片机的引脚功能◆外接晶体引脚

XTAL2(18脚):接外部石英晶体的另一端。在片内,它是片内振荡器反相放大器的输出端。当采用外部时钟时,对于HMOS单片机,该引脚为外部振荡信号的输入端;对于CHMOS单片机,该引脚悬空不接。第二节

MCS-51单片机的引脚功能二、控制引脚

◆ALE/PROG(30脚)

片外低8地址锁存有效信号输出端/编程脉冲输入端。单片机在访问片外程序存储器或者数据存储器期间,ALE引脚会输出负跳变信号,P0口作为低8位地址锁存在外部锁存器中,通过ALE引脚可以实现P0口的地址线和数据线分时复用;在不访问片外程序存储器或数据存储器期间,ALE端以时振荡时钟的6分频固定地输出,可用作对外时钟脉冲的输出;在对片内Flash进行编程时,该引脚可以用作输入编程脉冲。

第二节

MCS-51单片机的引脚功能二、控制引脚

◆PSEN(29脚)

外部程序存储器读选通输出端,低电平有效。当单片机需要从外部程序存储器读取程序时,每个机器周期该信号两次有效输出到外部程序存储器,外部储存器允许单片机读取其中的程序。在访问片外数据存储器期间,这两次信号将不出现。第二节

MCS-51单片机的引脚功能

第二节

MCS-51单片机的引脚功能

第二节

MCS-51单片机的引脚功能◆RST/VPD(9脚)

复位信号输入端和备用电源,高电平有效。当单片机开始工作时,此引脚加上超过两个机器周期的高电平,就可实现单片机的重置复位,使单片机回复到初始运行状态。在单片机正常工作时,此引脚是低电平。自动上电时,考虑到振荡器需要一定的起振时间,该引脚上高电平必须持续10ms以上才能保证有效复位。第二节

MCS-51单片机的引脚功能二、并行I/O口引脚

◆输入/输出引脚

P0口(第39~32脚):单片机不外扩存储器与I/O口时,P0口可作为准双向8位输入/输出口,但需要外接上拉电阻。在单片机外扩存储器或I/O口时,P0口可以作为低8位地址线和8位双向数据线的分时复用端口,为双向8位输入/输出口。

P1口(第1~8脚):可以作为准双向8位I/O口使用,具有内部上拉电阻。

P2口(第21~28脚):可以作为准双向8位I/O口使用,内部具有上拉电阻;当单片机外扩存储器或I/O时,P2口作为高8位地址总线使用,与P0输出低8位地址组成16位地址。

P3口(第10~17脚):可以作为准双向8位I/O口使用,具有内部上拉电阻,各个引脚还有第二功能。P3口的第二功能见表2-1。第二节

MCS-51单片机的引脚功能

◆输入/输出引脚-P3口的第二功能端口引脚第二功能说明P3.0RXD串行数据接收端P3.1TXD串行数据发送端P3.2INT0外部中断0P3.3INT1外部中断1P3.4T0定时器/计数器0的外部输入引脚P3.5T1定时器/计数器1的外部输入引脚P3.6WR外部RAM写选通引脚P3.7RD外部RAM读选通引脚第二节

MCS-51单片机的引脚功能

注意:准双向口与双向口的差别。准双向口仅有两个状态。而P0口作为总线使用,口线内无上拉电阻,处于高阻“悬浮”态。故为双向三态I/O口。

为什么P0口要有高阻“悬浮”态?因为P0口作为数据总线用时,多个数据源都挂在数据总线上,当P0口不需要读写其他数据源时,需要与数据总线高阻“悬浮”隔离。

准双向I/O口则无高阻“悬浮”态。

另外,准双向口作通用I/O输入使用时,需先向该口先写入“1”。准双向口与双向口的差别。

至此,40只引脚已介绍,应熟记每一引脚功能,对应用系统硬件电路设计十分重要。03MCS-51单片机中央处理器CPU第三节MCS-51单片机中央处理器CPU一、运算器运算部件以算术逻辑单元ALU为核心,包括累加器ACC、寄存器B、暂存器、程序状态字PSW等许多部件。它能实现数据的算术逻辑运算、位变量处理和数据传输等操作。(一)算术逻辑单元ALU

算术逻辑单元不仅能完成8位二进制的加、减、乘、除、加1、减1及BCD加法的十进制调整等算术运算,还能对8位变量进行逻辑“与”、“或”、“异或”、循环移位、求补、清零等逻辑运算,并具有数据传输、程序转移等功能。第三节MCS-51单片机中央处理器CPU(二)累加器ACC、寄存器B

累加器ACC(简称累加器A)为一个8位寄存器,它是CPU中使用最频繁的寄存器。进入ALU作算术和逻辑运算的操作数多来自于ACC,运算结果也常送回ACC保存。寄存器B是为ALU进行乘/除法运算而设置的。若不作乘除运算时,B可作为通用寄存器使用。第三节MCS-51单片机中央处理器CPU

(三)程序状态字PSW

程序状态字PSW是一个8位的标志寄存器,它保存指令执行结果的特征信息,以供程序查询和判别。其各位的定义如下:

进位标志位C(PSW.7):当CPU进行加减运算过程中,运算结果如果在最高位有进位(加法时)或有借位(减法时),则CY位置1,当运算结果没有进位或者借位时,CY位置0。第三节MCS-51单片机中央处理器CPU

辅助进位(或称半进位)标志位AC(PSW.6):在CPU进行加减法运算过程中,若低半字节的PSW.3位向高半字节的PSW.4位位有进(借)位,则AC由硬件置1,否则AC由硬件置0。

用户自定义标志位F0(PSW.5):用户可根据自己的需要对F0赋予一定的含义,通过软件置位或清零,并根据F0=1或0来决定程序的执行方式,或反映系统某一种工作状态。

奇偶标志位P(PSW.0):若累加器ACC中“1”的个数为奇数,则标志位P置为1;若累加器ACC中“1”的个数为奇数,则P置为0。在串行通信的数据传输中,通常会通过奇偶校验来检验数据传输的可靠性。第三节MCS-51单片机中央处理器CPU

溢出标志位OV(PSW.1):在做无符号的加法或减法时,当运算结果超出了累加器的数值范围(无符号数的范围为0~255),OV位置1,否则OV置0。进行无符号的加或减法时,OV的值与进位标志位CY的值相同;在做有符号数的加法时,当运算结果超出了累加器的数值范围(有符号数的范围为-128~+127)时,即次高位有进位或借位,OV被置1,否则OV被置0。

工作寄存器组选择位RS1、RS0(PSW.4、PSW.3):通过工作寄存器选择位的组合,可以从4个工作寄存器组中选择某一组用于单片机的运行工作中数据的临时保存。

第三节MCS-51单片机中央处理器CPU

工作寄存器组选择位RS1、RS0(PSW.4、PSW.3):通过工作寄存器选择位的组合,可以从4个工作寄存器组中选择某一组用于单片机的运行工作中数据的临时保存。

RS1RS0所选的4组寄存器000区(内部RAM地址00H~07H)011区(内部RAM地址08H~0FH)102区(内部RAM地址10H~17H)113区(内部RAM地址18H~1FH)二、控制器

CPU中的控制器是负责协调指挥各单元的数据传输运作,使得单片机可依照指令的要求完成工作。(一)程序计数器PC

程序计数器PC为一个16位寄存器,不能访问,主要功能是用来指引CPU依其内含有的程序地址来提取相应的指令码,它总是存放着下一条将要执行指令的地址。CPU每提取完一个指令后,PC的值自动加1,如此CPU即可按照PC中的值,逐一提取并执行每一个指令。如果执行到跳转指令如GOTO指令或中断函数时,PC的值将会改变,使CPU能够执行相应子程序或中断函数。第三节MCS-51单片机中央处理器CPU(二)指令寄存器IR和指令译码器ID

指令寄存器IR是用来放置临时从存储器里面取得的指令。当执行一条指令时,首先把该指令从主存取到数据寄存器中,然后再传送至指令寄存器。当指令寄存器中的指令送至指令译码器ID时,ID对该指令中的操作码部分进行译码,把指令转换成所需的电平信号,然后在时序部件定时信号的作用下,产生执行该指令所需的操作控制信号。第三节MCS-51单片机中央处理器CPU

(三)堆栈指针SP

堆栈指针SP是在单片机片内数据存储区域,开辟一个连续的存储空间,用于暂时放置数据和地址,在中断系统中,通常用于保护现场和保存断点,具有先进后出,后进先出的特点。

(四)数据指针寄存器DPTR

8051单片机中内含一个16位的地址指针寄存器DPTR,可以对外部的数据存储器或者程序存储器进行间接寻址,数据指针寄存器DPTR也可以作为两个8位的寄存器(DPL和DPH),分别单独使用。第三节MCS-51单片机中央处理器CPU04MCS-51单片机存储器第四节MCS-51单片机存储器

51单片机的程序存储器可分为片内程序存储器和片外程序存储器,数据存储器也分为片内数据存储器和片外数据存储器。第四节MCS-51单片机存储器(一)片内数据存储器8051单片机的数据存储器分为片内RAM和片外RAM。

8051单片机片内数据存储器共有256B,其中低128字节为数据存储区,地址范围是00H-7FH,按照用于又分为:工作寄存器区、位寻址去、通用RAM区;高128字节是特殊功能寄存器区,地址范围是80H-FFH。8051单片机外部数据存储器共有64KB,地址范围是0000H-FFFFH。第四节MCS-51单片机存储器

8051单片机片内RAM有256B,根据需要分为低128字节RAM区和高128字节的特殊功能寄存器(SFR)区。

低128B(地址范围:00H~7FH)是真正的RAM存储器,按用途划分为通用工作寄存器区、位寻址区、用户RAM区。第四节MCS-51单片机存储器(1)通用工作寄存器区

该区共有4组通用寄存器组,地址范围为00H~1FH,每组有8个工作寄存器R0~R7,共计32个寄存器,用于存放操作数和中间结果等,一般称为通用寄存器。(2)位寻址区

位寻址区是数据存储器的一部分,地址范围为20H~2FH的单元,既可以像普通RAM一样按字节使用,还可以对RAM单元中的每一位进行位操作,因此把该区域称为位寻址区。(3)用户RAM区

用户RAM区的地址范围为30H~7FH,共80个字节的空间,是供用户使用和操作的RAM区。第四节MCS-51单片机存储器

堆栈是在片内RAM中开辟一连续的区域,一般设在2FH地址单元之后的用户RAM区中,用于保存临时数据。堆栈数据存取按“先进后出”或“后进先出”的原则。8051单片机的SP是8位寄存器,堆栈为“向上生长型”,即栈顶地址总是大于栈底地址的。堆栈从栈底地址单元开始,向高端地址延伸,如图2-6所示。

图2-6

堆栈工作示意图

堆栈栈顶的位置由专用的堆栈指针寄存器SP指出。当单片机执行压栈操作时,先执行SP加1的操作,然后再把数据压入堆栈;当数据再次从堆栈取出之后,SP的值自动减1。51单片机复位后SP的初值为07H,所以堆栈实际上是从08H开始存放数据的。用户必须重新给SP赋值以规定其栈底位置。第四节MCS-51单片机存储器堆栈主要是为子程序调用和中断操作而设。用于保护断点和现场。(1)保护断点。无论子程序调用还是中断服务子程序调用,最终都要返回主程序。应预先把主程序的断点在堆栈中保护起来,为程序正确返回做准备。(2)现场保护。执行子程序或中断服务子程序时,要用到一些寄存器单元,会破坏原有内容。要把有关寄存器单元的内容送入堆栈,保存起来,即“现场保护”。

两种操作:数据压入(PUSH)堆栈,数据弹出(POP)堆栈。数据压入堆栈,SP自动加1;数据弹出堆栈,SP自动减1。第四节MCS-51单片机存储器特殊功能寄存器(SFR)区

特殊功能寄存器(SFR,即SpecialFunctionRegisters)又称为专用寄存器,专用于控制、管理片内算术逻辑部件、并行I/O口、串行I/O口、定时器/计数器、中断系统等功能模块的工作。用户在编程时可以设置参数,却不能随意移作它用。在51子系列单片机中,各专用寄存器(PC例外)与片内RAM统一编址,且作为直接寻址字节,可直接寻址。第四节MCS-51单片机存储器序号标识符名称字节地址位地址1ACC累加器E0HE0H~E7H2BB寄存器F0HF0H~F7H3PSW程序状态字D0HD0H~D7H4SP堆栈指针81H5DPTR数据指针(DPH,DPL)83H、82H6P0P0口80H80H~87H7P1P1口90H90H~97H8P2P2口A0HA0H~A7H9P3P3口B0HB0H~B7H10IP中断优先级控制寄存器B8HB8H~BFH11IE中断允许控制寄存器A8HA8H~AFH12TOMD定时器/计数器方式控制寄存器89H第四节MCS-51单片机存储器13TCON定时器/计数器控制寄存器88H88H~8FH14T2CON定时器/计数器2控制寄存器C8HC8H~CFH15TH0定时器/计数器0(高字节)8CH16TL0定时器/计数器0(低字节)8AH17TH1定时器/计数器1(高字节)8DH18TL1定时器/计数器1(低字节)8BH19TH2定时器/计数器2(高字节)CDH20TL2定时器/计数器2(低字节)CCH21RLDH定时器/计数器2重自动装载(高字节)CBH22RLDL定时器/计数器2重自动装载(低字节)CAH23SCON串行口控制寄存器98H98H~9FH24SBUF串行数据缓冲器99H25PCON电源控制及波特率选择寄存器97H第四节MCS-51单片机存储器51单片机C语言中的SFRsfr不是标准C语言的关键字,是Keil中用来定义专用寄存器字节地址的关键字,从而在单片机C51语言程序中可以直接访问这些专用寄存器。用法:sfr变量名=地址值例如:sfrP1=0x90;//专用寄存器P1的地址为90H,对应P1端口的8个I/O引脚/*BYTERegisters*/sfrP0=0x80;sfrP1=0x90;sfrP2=0xA0;sfrP3=0xB0;sfrPSW=0xD0;sfrACC=0xE0;sfrB=0xF0;sfrSP=0x81;sfrDPL=0x82;sfrDPH=0x83;sfrPCON=0x87;sfrTCON=0x88;sfrTMOD=0x89;sfrTL0=0x8A;sfrTL1=0x8B;sfrTH0=0x8C;sfrTH1=0x8D;sfrIE=0xA8;sfrIP=0xB8;sfrSCON=0x98;sfrSBUF=0x99;第四节MCS-51单片机存储器

二、程序存储器第四节MCS-51单片机存储器

51单片机的片内ROM中不只存放用户的应用程序,还将一部分空间划分出来,用于中断处理程序。在系统遇到中断时,会根据中断的类型,自动跳转到ROM中该中断处理程序处执行相应的中断处理服务程序。地址说明0000H~0002H单片机复位后的程序入口地址(占3个单元)0003H~000AH外部中断0的中断服务程序地址(占8个单元)000BH~0012H定时器0的中断服务程序地址(占8个单元)0013H~001AH外部中断1的中断服务程序地址(占8个单元)001BH~0022H定时器1(T1)的中断服务程序地址(占8个单元)0023H~002AH串行口的中断服务程序地址(占8个单元)

程序存储器中的0003H~002AH共40个单元被保留,用于5个中断源的中断服务程序的入口地址,用户不可修改。用户程序在程序存储器中的位置05MCS-51单片机并行I/O端口第五节MCS-51单片机并行I/O端口

(1)P0口用作系统的地址/数据总线用8051外扩存储器或I/O时,P0口作为系统复用的地址/数据总线用。此时,图2-9中的控制信号C为1,一、P0口的工作原理硬件自动使转接开关MUX打向上面,接通反相器输出,同时使“与门”处于开启状态。第五节MCS-51单片机并行I/O端口当输出的“地址/数据”信息为1时,“与门”输出为1,上方的场效应管导通,下方的场效应管截止,P0.n引脚输出为1;当输出的“地址/数据”信息为0时,上方的场效应管截止,下方的场效应管导通,P0.n引脚输出为0。可见P0.x引脚的输出状态随“地址/数据”状态的变化而变化。上方场效应管起到内部上拉电阻作用。一、P0口的工作原理第五节MCS-51单片机并行I/O端口

一、P0口的工作原理第五节MCS-51单片机并行I/O端口

由上分析,P0口具有高电平、低电平和高阻抗输入3种状态的端口,因此,P0口作为地址/数据总线使用时是一真正的双向端口。1.P0口的工作原理第五节MCS-51单片机并行I/O端口

第五节MCS-51单片机并行I/O端口P0口作为通用I/O输入口时,有两种读入方式:“读锁存器”和“读引脚”。当CPU发出“读锁存器”指令时,锁存器的状态由Q端经上方的三态缓冲器BUF1进入内部总线;当CPU发出“读引脚”指令时,锁存器的输出状态=1(即端为0),从而使下方场效应管截止,引脚状态经下方三态缓冲器BUF2进入内部总线。小结:(1)当P0口用作地址/数据总线口使用时,是一个真正的双向口,用作与外部扩展的存储器或I/O连接,输出低8位地址和输出/输入8位数据。(2)当P0口用作通用I/O口使用时,需要在片外接上拉电阻,此时端口不存在高阻抗的悬浮状态,因此是一个准双向口。如果单片机片外扩展了RAM和I/O接口芯片,P0口此时应作为复用的地址/数据总线口使用。如果没有外扩RAM和I/O接口芯片,此时即可作为通用I/O口使用。第五节MCS-51单片机并行I/O端口二、P1口的工作原理P1口只作为通用I/O口使用

P1口作为输入口时,分为“读锁存器”和“读引脚”两种方式。“读锁存器”时,锁存器的输出端Q的状态经输入缓冲器BUF1进入内部总线;“读引脚”时,先向锁存器写1,使场效应管截止,P1.n引脚的电平经输入缓冲器BUF2进入内部总线。第五节MCS-51单片机并行I/O端口1.P1口工作原理

图2-10P1口某一位的位电路结构小结:

P1口由于有内部上拉电阻,没有高阻抗输入状态,故为准双向口。作为输出口时,不需要在片外接上拉电阻。

P1口“读引脚”输入时,必须先向锁存器P1写入1。第五节MCS-51单片机并行I/O端口三、P2口的工作原理P2口用作地址总线口,在内部控制信号作用下,MUX与“地址”接通。当“地址”线为0时,场效应管导通,P2口引脚输出0;当“地址”线为1时,场效应管截止,P2口引脚输出1。P2口用作通用I/O口,在内部控制信号作用下,MUX与锁存器的Q端接通。第五节MCS-51单片机并行I/O端口1.P2口的工作原理CPU输出1时,Q=1,场效应管截止,P2.n引脚输出1;CPU输出0时,Q=0,场效应管导通,P2.n引脚输出0。输入时,分为“读锁存器”和“读引脚”两种方式。“读锁存器”时,Q端信号经输入缓冲器BUF1进入内部总线;“读引脚”时,先向锁存器写1,使场效应管截止,P2.n引脚上的电平经输入缓冲器BUF2进入内部总线。

图2-11P2口某一位的位电路结构第五节MCS-51单片机并行I/O端口P2口小结:

作为地址输出线使用时,P2口可输出外部存储器的高8位地址,与P0口输出的低8位地址一起构成16位地址,共可寻址64KB的地址空间。当P2口作为高8位地址输出口时,输出锁存器的内容保持不变。

作为通用I/O口使用时,P2口为一个准双向口,功能与P1口一样。

一般情况下,P2口大多作为高8位地址总线口使用,就不能再作为通用I/O口。如果不作为地址总线口使用,可作为通用I/O口使用。第五节MCS-51单片机并行I/O端口四、P3口的工作原理(一)P3口结构

P3口的字节地址为B0H,与其他I/O相比,多了一个缓冲器4。P3口除了可作为通用准双向I/O接口外,还增加了引脚第二功能,其结构原理图如下图所示。

图2-12P3口某一位的位电路结构第五节MCS-51单片机并行I/O端口(二)第二输入/输出功能。

当选择第二输出功能时,该位的锁存器需置“1”,使“与非门”为开启状态。当第二输出为1时,场效应管截止,P3.n引脚输出为1;当第二输出为0时,场效应管导通,P3.n引脚输出为0。

当选择第二输入功能时,该位的锁存器和第二输出功能端均应置1,保证场效应管截止,P3.n引脚的信息由输入缓冲器BUF3的输出获得。四、P3口的工作原理第五节MCS-51单片机并行I/O端口(三)第一功能的通用I/O口

当用作通用I/O输出时,“第二输出功能”端应保持高电平,“与非门”为开启状态。CPU输出1时,Q=1,场效应管截止,P3.n引脚输出为1;CPU输出0时,Q=0,场效应管导通,P3.n引脚输出为0。

当用作通用I/O输入时,P3.n位的输出锁存器和“第二输出功能”端均应置1,场效应管截止,P3.n引脚信息通过输入BUF3和BUF2进入内部总线,完成“读引脚”操作。06MCS-51单片机的时序第六节MCS-51单片机的时序产生8051工作时所必需的控制信号,在时钟信号控制下,严格按时序执行指令。执行指令时,CPU首先到程序存储器中取出需要执行的指令操作码,然后译码,并由时序电路产生一系列控制信号完成指令所规定的操作。CPU发的时序信号两类,一类用对片内各个功能部件控制,用户无须了解;另一类用于对片外存储器或I/O端口的控制,这部分时序对于分析、设计硬件接口电路至关重要。第六节MCS-51单片机的时序MCS-51单片机的时序由4个单位构成:(1)振荡周期晶振或者外接振荡脉冲信号的振荡周期,又称节拍,用P表示。时钟脉冲频率的倒数,为MCS-51单片机最小的时序单位,也称为时钟周期。(2)状态周期晶振信号经过时钟电路的二分频后,由两个振荡周期组成一个状态周期,用S表示。状态周期中的两个振荡周期分别称为节拍P1和节拍P2。(3)机器周期晶振信号经过12分频后形成机器周期,一个机器周期由6个状态周期组成,是单片机执行指令的最短时间,用S1、S2、…、S6表示,共12个节拍,依次可表示为S1P1、S1P2、S2P1、S2P2、…、S6P1、S6P2。第六节MCS-51单片机的时序(4)指令周期是指执行一条指令所需要的时间,它以机器周期为单位。8051单

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论