教案资料.ppt

大学单片机原理及应用(C语言版)-周国运-课件PPT

收藏

资源目录
跳过导航链接。
大学单片机原理及应用(C语言版)-周国运-课件PPT.zip
单片机原理及应用(C语言版)-周国运-PPT演示文稿
教案资料.ppt---(点击预览)
单片机原理及应用(C语言版)-周国运-PPT课件文件
文稿ppt_ppt.txt---(点击预览)
文稿ppt_ppt.jpg---(点击预览)
文稿ppt.ppt---(点击预览)
单片机原理及应用(C语言版)-周国运-大学教学资料
(课件资料)《单片机原理及应用(C语言版)》-周国运-电子教案
压缩包内文档预览:(预览前20页/共30页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:21836325    类型:共享资源    大小:16.05MB    格式:ZIP    上传时间:2019-09-06 上传人:QQ24****1780 IP属地:浙江
25
积分
关 键 词:
大学 单片机 原理 应用 利用 运用 语言版 国运 课件 ppt
资源描述:
大学单片机原理及应用(C语言版)-周国运-课件PPT,大学,单片机,原理,应用,利用,运用,语言版,国运,课件,ppt
内容简介:
单片机原理及应用 (C语言版) 第1章 单片机概述,主 编:周国运 本章制作:赵天翔 中国水利水电出版社,第1章 单片机概述,目 录 1.1 单片机的基本概念 1.2 单片机的发展概况 1.3 单片机的特点及应用 1.4 常用单片机简介 1.5 单片机系统的开发方法,本章主要介绍了单片机的基本概念,单片机的发展概况,单片机的应用及其特点,以及一些常用的单片机。 通过本章的学习,我们可以了解到什么是单片机,单片机的发展历史。并且对单片机的应用和开发方法有个初步的认识。,第1章 概述,1.1 单片机的基本概念,微机是微型计算机的简称,它是由主机和外部设备等组成的。如图1.1所示。 单片机就是把微机的主机部分(图1.1虚线框内的)集成到一块集成电路芯片上所得到的。,地址总线,数据总线,控制总线,图1-1 微机的组成,1.1 单片机的基本概念,单片机:将中央处理器,随机存储器,只读存储器,中断系统,定时器/计数器以及I/O接口电路等主要微型计算机的部件集成在一块芯片上,使其具有计算机的基本功能。 就叫做单片微型计算机(Single Chip Micro Computer,SCMC),简称单片机。,1.1 单片机的基本概念,1.2 单片机的发展概况,主要内容 1.2.1 单片机的历史 1.2.1 单片机技术的发展,1.2.1 单片机的历史,一 、4位单片机阶段 1975年美国德克萨斯仪器公司(TI)首次推出4位单片机TMS-1000。 4位单片机主要用于家用电器、电子玩具等。,二、 8位单片机阶段 1976年9月,美国Intel公司首先推出了MCS-48系列8位单片机。 8位单片机由于功能强,被广泛用于工业控制、智能接口、仪器仪表等各个领域。,三、16位单片机阶段 1983 年Intel公司推出了16位单片机MCS-96系列。 16位单片机可用于高速复杂的控制系统。 四、32位单片机 近年来,各个计算机生产厂家已进入更高性能的32位单片机研制、生产阶段。,1.2.1 单片机的历史,1.2.2 单片机技术的发展,一、片内程序存储器的发展 单片机的程序存储器(ROM)经历了ROMEPROME2PROMFLASH MEMORY的发展,容量也由小变大。 二、看门狗定时器 单片机在运行时由于干扰等原因,可能会出现软件混乱。 看门狗电路就是用于在CPU处于软件混乱时使系统正常工作的一种恢复方法。,1.2.2 单片机技术的发展,三、节电模式 在节电模式下,CPU和部分部件进入睡眠状态,但片内RAM和寄存器等部件保持工作状态,以达到节能的目的。 四、加强输入输出功能 某有些单片机具备大功率的输入/输出接口,可直接驱动荧光显示器、LCD和LED。 还有一些增加了接口或定时器的数量,或者增加了新型的接口。,五、单片机制造工艺提高 半导体制作工艺的提高,使单片机的体积可以做的更小,时钟频率更高。可以集成更多的存储器和部件。降低产品的价格。 六、在线编程和调试技术 一些新型的单片机实现了在系统编程(ISP)和在应用编程(IAP)功能。,1.2.2 单片机技术的发展,1.3 单片机的特点及应用,主要内容 1.3.1 单片机的特点 1.3.2 单片机的应用,一、单片机的存储器ROM和RAM是严格区分的 ROM称为程序存储器,只存放程序、固定常数及数据表格。 RAM则为数据存储器,用作工作区及存放用户数据。 二、采用面向控制的指令系统 为满足控制的需要,单片机有更强的逻辑控制能力,特别是具有很强的位处理能力。,1.3.1 单片机的特点,三、单片机的I/O引脚通常是多功能的 由于单片机芯片上引脚数目有限,为了解决实际引脚数和需要的信号线的矛盾,采用了引脚功能复用的方法。引脚处于何种功能,可由指令来设置或由机器状态来区分。 四、单片机的外部扩展能力强 在内部的各种功能部分不能满足应用需求时,均可在外部进行扩展(如扩展ROM、RAM,I/O接口,定时器/计数器,中断系统等),与许多通用的微机接口芯片兼容,给应用系统设计带来极大的方便和灵活性。,1.3.1 单片机的特点,五、体积小,成本低,运用灵活 易于产品化,它能方便地组成各种智能化的控制设备和仪器,做到机电一体化。 六、面向控制 能针对性地解决从简单到复杂的各类控制任务,因而能获得最佳的性能价格比。 七、适应性强、抗干扰 在各种恶劣的环境下都能可靠地工作,这是其它类型计算机无法比拟的。 八、方便实现多机和分布式控制 使整个控制系统的效率和可靠性大为提高,1.3.1 单片机的特点,单片机的应用范围十分广泛,主要的应用领域有: 工业控制 仪器仪表 计算机外部设备与智能接口 商用产品 家用电器 消费类电子产品 通讯设备和网络设备 儿童智能玩具 汽车,建筑机械,飞机等大型机械设备 交通控制设备,1.3.2 单片机的应用,1.4 常用单片机简介,主要内容 1.4.1 MCS-51系列单片机 1.4.2 ATMEL89系列单片机 1.4.3 STC89/12系列单片机 1.4.4 常见的其它系列单片机介绍,1.4.1 MCS-51系列单片机,MCS-51系列单片机:Intel在1980-1982年陆续推出了指令系统完全相同,内部结构基本相同的8031、8051和8751等型号单片机,初步形成MCS-51系列,被奉为“工业控制单片机标准”。,MCS-51增强型单片机: MCS-51系列单片机除了89C51之外,主要包括89C52、89C54、89C58、89C516等型号,它们的区别主要是三个方面:一是片内RAM由128B增加到256B;二是多一个定时器/计数器;三是片内Flash ROM由4KB分别增加到了8KB、16KB、32KB和64KB。 不同厂家的产品可能还增加有其它外设或功能,但引脚和指令都是完全兼容的。 为了讨论方便起见,我们将89C51(包括8031、8051等)称为基本型,其他的型号称为增强型。,1.4.1 MCS-51系列单片机,1.4.2 ATMEL89系列单片机,Atmel公司生产的89系列单片机是市场上比较具有代表性的MCS-51单片机。 一、ATMEL89系列单片机型号说明 AT89系列单片机型号由三个部分组成,它们分别是前缀、型号、后缀,其格式如下: AT89C(LV、S)XXXX-XXXX 1、前缀 前缀由字母“AT”组成,它表示该器件是ATMEL公司的产品。,1.4.2 ATMEL89系列单片机,2、型号 型号由“89CXXXX”或“89LVXXXX”或“89SXXXX”等表示。 “9”表示芯片内部含Flash存储器; “C”表示是CMOS产品; “LV”表示低电压产品; “S”表示含可下载的Flash存储器。 “XXXX”为表示型号的数字,如:51、52、2051、8252等。,3、后缀 后缀由“XXXX”四个参数组成,与产品型号间用“-”号隔开。 后缀中第一个参数“X”表示速度 后缀中第二个参数“X”表示封装 后缀中第三个参数“X”表示温度范围 后缀中第四个参数“X” 说明产品的处理情况,1.4.2 ATMEL89系列单片机,二、AT89C51单片机 AT89C51单片机特点: 与MCS-51产品完全兼容; 具有4K字节可在系统编程的Flash内部程序存储器,可写/擦1000次; 全静态操作:0Hz24MHz; 三级程序存储器加密; 128字节内部RAM;,1.4.2 ATMEL89系列单片机,32根可编程I/O线; 2个16位定时器/计数器; 6个中断源; 可编程串行UART通道; 低功耗空闲和掉电方式;,1.4.2 ATMEL89系列单片机,三、AT89S52单片机 AT89S52单片机特点: 与MCS-51产品兼容; 具有8K字节可在系统编程的Flash内部程序存储器,可写/擦1000次; 4.0V5.5V的工作电压范围; 全静态操作:0Hz24MHz; 三级程序存储器加密; 256字节内部RAM;,1.4.2 ATMEL89系列单片机,全双工异步串行通信通道; 低功耗空闲和掉电方式; 通过中断中止掉电方式; 看门狗定时器; 两个数据指针。,1.4.2 ATMEL89系列单片机,1.4.3 STC89/12系列单片机,一、STC 89C51RC/RD系列单片机 STC 89C51RC/RD系列单片机是宏晶科技推出的新一代超强抗干扰、高速、低功耗的单片机。 指令代码完全兼容传统8051 单片机,12时钟/机器周期和6时钟/机器周期可任意选择。,1.4.3 STC89/12系列单片机,STC 89C51RC/RD系列单片机特点如下: 增强型6/12时钟/机器周期8051 CPU; 工作电压:5.5V3.4V(5V单片机)/ 3.8V2.0V(3V 单片机); 工作频率范围:040MHz,相当于普通8051 的080MHz; 用户应用程序空间 4K 64K 字节; 片上集成1280字节/512字节RAM; 通用I/O口32 / 36 个; ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器/仿真器;,内部E2PROM 功能; 硬件看门狗; 内部集成MAX810专用复位电路(D版本才有),外部晶体20M以下时,可省外部复位电路; 共3个16位定时器/计数器; 外部中断4路; 通用异步串行口,还可用定时器软件实现多个UART; 工作温度范围:0 75,4085; 封装:LQFP-44 ,PDIP-40 , PLCC -44 , PQFP-44 。,1.4.3 STC89/12系列单片机,1.4.4 常见的其它系列单片机介绍,AVR单片机 Motorola单片机 MicroChip单片机 Scenix单片机 EPSON单片机 东芝单片机 GMS90单片机 华邦单片机 Zilog单片机 NS单片机 AX1001单片机,1.5 单片机系统的开发方法,主要内容 1.5.1 单片机系统的设计要求 1.5.2 单片机系统的开发特点 1.5.3 单片机系统的开发工具及环境 1.5.4 单片机系统设计中芯片的选择,1.5 单片机系统的开发方法,单片机系统是软件和硬件的逻辑结合体,必须根据对系统功能、性能参数的要求,对软件和硬件统一考虑进行设计开发,以求达到最佳效果。,1.5.1 单片机系统的设计要求,单片机系统设计开发非常受制于功能和具体的应用环境,所以单片机系统的设计具有一些特殊的要求:,接口方便、操作容易 稳定可靠、维护简便 功耗管理、降低成本 并发处理、及时响应,1.5.2 单片机系统的开发特点,需要软硬件综合开发,二者密切相关。因为任何一个单片机系统产品都是软件和硬件的结合体。 一旦单片机系统产品研发完成,软件就固化在硬件环境中,单片机软件是针对相应的单片机硬件系统开发的,是专用的。,1.5.3 单片机系统的开发工具及环境,一、单片机C语言开发工具Keil C51 Keil C51是Keil Software公司出品的51系列兼容单片机C语言软件开发系统。 提供丰富的库函数和功能强大的集成开发调试工具Vision2,全Windows界面,生成的目标代码效率非常高。,1.5.3 单片机系统的开发工具及环境,二、Proteus嵌入式系统仿真与开发平台 Proteus:Proteus是一个嵌入式系统仿真与开发平台,是英国Labcenter Electronics公司出版的EDA工具软件。 Proteus的功能:它不仅具有仿真数字、模拟电路的功能,还具备由微控制器及外围器件组成的混合电路的仿真功能。 Proteus的先进性:它是目前世界上最先进、最完整的嵌入式系统设计与仿真平台。,1.5.4 单片机系统设计中芯片的选择,现在市场上的单片机品种很丰富,89C51只是个基本型。虽然在本课程中我们主要是以89C52为例来组织教学的,但是在进行单片机系统设计的时候就要根据系统的需求,灵活地选用具有不同特性的单片机。,本章小结,本章首先给出了单片机的概念,单片机即单片微机,也叫微控制器。 然后介绍了单片机的发展概况,使我们基本了解了单片机的历史及发展。 接着讨论了单片机的特点及应用,使我们树立起学习单片机的目标。 接下来对常见及常用的单片机作了一个总体介绍,使我们了解了单片机更多的功能和特点。 最后简单地介绍了单片机开发的一些问题,如开发环境与工具、芯片选择与设计要求等。,思考题与习题,1. 什么是单片机? 2. 单片机有哪些特点? 3. 单片机的应用有哪些? 4. 常见的单片机有哪些类型?,单片机原理及应用 (C语言版)第1章 单片机概述主 编:周国运本章制作:赵天翔中国水利水电出版社第1章 单片机概述目 录 1.1 单片机的基本概念 1.2 单片机的发展概况 1.3 单片机的特点及应用 1.4 常用单片机简介 1.5 单片机系统的开发方法 本章主要介绍了单片机的基本概念,单片机的发展概况,单片机的应用及其特点,以及一些常用的单片机。 通过本章的学习,我们可以了解到什么是单片机,单片机的发展历史。并且对单片机的应用和开发方法有个初步的认识。第1章 概述1.1 单片机的基本概念 微机是微型计算机的简称,它是由主机和外部设备等组成的。如图1.1所示。 单片机就是把微机的主机部分(图1.1虚线框内的)集成到一块集成电路芯片上所得到的。地址总线数据总线控制总线图1-1 微机的组成1.1 单片机的基本概念 单片机:将中央处理器,随机存储器,只读存储器,中断系统,定时器/计数器以及I/O接口电路等主要微型计算机的部件集成在一块芯片上,使其具有计算机的基本功能。 就叫做单片微型计算机(Single Chip Micro Computer,SCMC),简称单片机。 1.1 单片机的基本概念1.2 单片机的发展概况 主要内容 1.2.1 单片机的历史 1.2.1 单片机技术的发展1.2.1 单片机的历史 一 、4位单片机阶段 1975年美国德克萨斯仪器公司(TI)首次推出4位单片机TMS-1000。 4位单片机主要用于家用电器、电子玩具等。 二、 8位单片机阶段 1976年9月,美国Intel公司首先推出了MCS-48系列8位单片机。 8位单片机由于功能强,被广泛用于工业控制、智能接口、仪器仪表等各个领域。 三、16位单片机阶段 1983 年Intel公司推出了16位单片机MCS-96系列。 16位单片机可用于高速复杂的控制系统。 四、32位单片机 近年来,各个计算机生产厂家已进入更高性能的32位单片机研制、生产阶段。1.2.1 单片机的历史1.2.2 单片机技术的发展 一、片内程序存储器的发展单片机的程序存储器(ROM)经历了ROMEPROME2PROMFLASH MEMORY的发展,容量也由小变大。 二、看门狗定时器 单片机在运行时由于干扰等原因,可能会出现软件混乱。 看门狗电路就是用于在CPU处于软件混乱时使系统正常工作的一种恢复方法。 1.2.2 单片机技术的发展 三、节电模式 在节电模式下,CPU和部分部件进入睡眠状态,但片内RAM和寄存器等部件保持工作状态,以达到节能的目的。 四、加强输入输出功能 某有些单片机具备大功率的输入/输出接口,可直接驱动荧光显示器、LCD和LED。 还有一些增加了接口或定时器的数量,或者增加了新型的接口。 五、单片机制造工艺提高 半导体制作工艺的提高,使单片机的体积可以做的更小,时钟频率更高。可以集成更多的存储器和部件。降低产品的价格。 六、在线编程和调试技术 一些新型的单片机实现了在系统编程(ISP)和在应用编程(IAP)功能。1.2.2 单片机技术的发展1.3 单片机的特点及应用主要内容 1.3.1 单片机的特点 1.3.2 单片机的应用 一、单片机的存储器ROM和RAM是严格区分的 ROM称为程序存储器,只存放程序、固定常数及数据表格。 RAM则为数据存储器,用作工作区及存放用户数据。二、采用面向控制的指令系统 为满足控制的需要,单片机有更强的逻辑控制能力,特别是具有很强的位处理能力。1.3.1 单片机的特点三、单片机的I/O引脚通常是多功能的 由于单片机芯片上引脚数目有限,为了解决实际引脚数和需要的信号线的矛盾,采用了引脚功能复用的方法。引脚处于何种功能,可由指令来设置或由机器状态来区分。 四、单片机的外部扩展能力强 在内部的各种功能部分不能满足应用需求时,均可在外部进行扩展(如扩展ROM、RAM,I/O接口,定时器/计数器,中断系统等),与许多通用的微机接口芯片兼容,给应用系统设计带来极大的方便和灵活性。1.3.1 单片机的特点 五、体积小,成本低,运用灵活 易于产品化,它能方便地组成各种智能化的控制设备和仪器,做到机电一体化。 六、面向控制 能针对性地解决从简单到复杂的各类控制任务,因而能获得最佳的性能价格比。 七、适应性强、抗干扰 在各种恶劣的环境下都能可靠地工作,这是其它类型计算机无法比拟的。 八、方便实现多机和分布式控制 使整个控制系统的效率和可靠性大为提高1.3.1 单片机的特点 单片机的应用范围十分广泛,主要的应用领域有:工业控制仪器仪表计算机外部设备与智能接口商用产品家用电器消费类电子产品通讯设备和网络设备儿童智能玩具汽车,建筑机械,飞机等大型机械设备交通控制设备1.3.2 单片机的应用1.4 常用单片机简介主要内容 1.4.1 MCS-51系列单片机 1.4.2 ATMEL89系列单片机 1.4.3 STC89/12系列单片机 1.4.4 常见的其它系列单片机介绍1.4.1 MCS-51系列单片机 MCS-51系列单片机:Intel在1980-1982年陆续推出了指令系统完全相同,内部结构基本相同的8031、8051和8751等型号单片机,初步形成MCS-51系列,被奉为“工业控制单片机标准”。 MCS-51增强型单片机: MCS-51系列单片机除了89C51之外,主要包括89C52、89C54、89C58、89C516等型号,它们的区别主要是三个方面:一是片内RAM由128B增加到256B;二是多一个定时器/计数器;三是片内Flash ROM由4KB分别增加到了8KB、16KB、32KB和64KB。 不同厂家的产品可能还增加有其它外设或功能,但引脚和指令都是完全兼容的。为了讨论方便起见,我们将89C51(包括8031、8051等)称为基本型,其他的型号称为增强型。1.4.1 MCS-51系列单片机1.4.2 ATMEL89系列单片机 Atmel公司生产的89系列单片机是市场上比较具有代表性的MCS-51单片机。一、ATMEL89系列单片机型号说明 AT89系列单片机型号由三个部分组成,它们分别是前缀、型号、后缀,其格式如下: AT89C(LV、S)XXXX-XXXX 1、前缀 前缀由字母“AT”组成,它表示该器件是ATMEL公司的产品。1.4.2 ATMEL89系列单片机 2、型号 型号由“89CXXXX”或“89LVXXXX”或“89SXXXX”等表示。“9”表示芯片内部含Flash存储器;“C”表示是CMOS产品;“LV”表示低电压产品;“S”表示含可下载的Flash存储器。“XXXX”为表示型号的数字,如:51、52、2051、8252等。 3、后缀 后缀由“XXXX”四个参数组成,与产品型号间用“-”号隔开。 后缀中第一个参数“X”表示速度后缀中第二个参数“X”表示封装 后缀中第三个参数“X”表示温度范围 后缀中第四个参数“X” 说明产品的处理情况1.4.2 ATMEL89系列单片机 二、AT89C51单片机 AT89C51单片机特点:与MCS-51产品完全兼容;具有4K字节可在系统编程的Flash内部程序存储器,可写/擦1000次;全静态操作:0Hz24MHz;三级程序存储器加密;128字节内部RAM;1.4.2 ATMEL89系列单片机32根可编程I/O线;2个16位定时器/计数器;6个中断源;可编程串行UART通道;低功耗空闲和掉电方式;1.4.2 ATMEL89系列单片机 三、AT89S52单片机 AT89S52单片机特点:与MCS-51产品兼容;具有8K字节可在系统编程的Flash内部程序存储器,可写/擦1000次;4.0V5.5V的工作电压范围;全静态操作:0Hz24MHz;三级程序存储器加密;256字节内部RAM;1.4.2 ATMEL89系列单片机全双工异步串行通信通道;低功耗空闲和掉电方式;通过中断中止掉电方式;看门狗定时器;两个数据指针。1.4.2 ATMEL89系列单片机1.4.3 STC89/12系列单片机 一、STC 89C51RC/RD系列单片机 STC 89C51RC/RD系列单片机是宏晶科技推出的新一代超强抗干扰、高速、低功耗的单片机。指令代码完全兼容传统8051 单片机,12时钟/机器周期和6时钟/机器周期可任意选择。1.4.3 STC89/12系列单片机 STC 89C51RC/RD系列单片机特点如下:增强型6/12时钟/机器周期8051 CPU;工作电压:5.5V3.4V(5V单片机)/ 3.8V2.0V(3V 单片机);工作频率范围:040MHz,相当于普通8051 的080MHz;用户应用程序空间 4K 64K 字节;片上集成1280字节/512字节RAM;通用I/O口32 / 36 个;ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器/仿真器;内部E2PROM 功能;硬件看门狗;内部集成MAX810专用复位电路(D版本才有),外部晶体20M以下时,可省外部复位电路; 共3个16位定时器/计数器; 外部中断4路; 通用异步串行口,还可用定时器软件实现多个UART; 工作温度范围:0 75,4085; 封装:LQFP-44 ,PDIP-40 , PLCC -44 , PQFP-44 。1.4.3 STC89/12系列单片机1.4.4 常见的其它系列单片机介绍AVR单片机 Motorola单片机 MicroChip单片机Scenix单片机 EPSON单片机 东芝单片机 GMS90单片机 华邦单片机 Zilog单片机 NS单片机 AX1001单片机1.5 单片机系统的开发方法主要内容 1.5.1 单片机系统的设计要求 1.5.2 单片机系统的开发特点 1.5.3 单片机系统的开发工具及环境 1.5.4 单片机系统设计中芯片的选择1.5 单片机系统的开发方法 单片机系统是软件和硬件的逻辑结合体,必须根据对系统功能、性能参数的要求,对软件和硬件统一考虑进行设计开发,以求达到最佳效果。1.5.1 单片机系统的设计要求 单片机系统设计开发非常受制于功能和具体的应用环境,所以单片机系统的设计具有一些特殊的要求: 接口方便、操作容易 稳定可靠、维护简便 功耗管理、降低成本 并发处理、及时响应1.5.2 单片机系统的开发特点 需要软硬件综合开发,二者密切相关。因为任何一个单片机系统产品都是软件和硬件的结合体。 一旦单片机系统产品研发完成,软件就固化在硬件环境中,单片机软件是针对相应的单片机硬件系统开发的,是专用的。1.5.3 单片机系统的开发工具及环境 一、单片机C语言开发工具Keil C51Keil C51是Keil Software公司出品的51系列兼容单片机C语言软件开发系统。提供丰富的库函数和功能强大的集成开发调试工具Vision2,全Windows界面,生成的目标代码效率非常高。1.5.3 单片机系统的开发工具及环境 二、Proteus嵌入式系统仿真与开发平台 Proteus:Proteus是一个嵌入式系统仿真与开发平台,是英国Labcenter Electronics公司出版的EDA工具软件。 Proteus的功能:它不仅具有仿真数字、模拟电路的功能,还具备由微控制器及外围器件组成的混合电路的仿真功能。 Proteus的先进性:它是目前世界上最先进、最完整的嵌入式系统设计与仿真平台。 1.5.4 单片机系统设计中芯片的选择 现在市场上的单片机品种很丰富,89C51只是个基本型。虽然在本课程中我们主要是以89C52为例来组织教学的,但是在进行单片机系统设计的时候就要根据系统的需求,灵活地选用具有不同特性的单片机。本章小结本章首先给出了单片机的概念,单片机即单片微机,也叫微控制器。然后介绍了单片机的发展概况,使我们基本了解了单片机的历史及发展。接着讨论了单片机的特点及应用,使我们树立起学习单片机的目标。接下来对常见及常用的单片机作了一个总体介绍,使我们了解了单片机更多的功能和特点。最后简单地介绍了单片机开发的一些问题,如开发环境与工具、芯片选择与设计要求等。思考题与习题 1. 什么是单片机? 2. 单片机有哪些特点? 3. 单片机的应用有哪些? 4. 常见的单片机有哪些类型?单片机原理及应用 (C语言版) 第2章 MCS-51单片机结构与原理,主 编:周国运 本章制作:周国运 中国水利水电出版社,第2章 MCS-51单片机结构与原理,目 录 2.1 MCS-51单片机结构及CPU 2.2 MCS-51单片机引脚与总线结构 2.3 MCS-51单片机的存储器结构 2.4 MCS-51单片机的输入输出端口 2.5 MCS-51单片机的时钟及CPU时序 2.6 MCS-51单片机的工作方式,第2章 MCS-51单片机结构与原理,本章讨论MCS-51单片机的结构和工作原理,内容主要有MCS-51单片机结构、引脚信号、存储器配置、输入/输出端口、时钟与CPU时序,以及单片机的工作方式等。 本章是单片机的基本内容,为学习后面各个章节的基础,也是从事单片机应用开发的基础。,2.1 MCS-51单片机内部结构及CPU,主要内容 2.1.1 MCS-51单片机的功能结构及特点 2.1.2 MCS-51单片机的内部原理结构 2.1.3 MCS-51单片机的CPU,2.1.1 MCS-51单片机的功能结构及特点,MCS-51单片机的内部功能结构如下页图所示,图中是以增强型单片机的结构为对象。 从图中可以看到,MCS-51单片机在一块芯片中集成了微型计算机所具有的所有部件,从功能的角度来看,主要包括9个部分。,图2.1 MCS-51(增强型)单片机功能结构图,2.1.1 MCS-51单片机的功能结构及特点,2.1.1 MCS-51单片机的功能结构及特点,MCS-51单片机内部主要包括9个部分: 一个8位的微处理器CPU 8KB的片内程序存储器Flash ROM 256B的片内数据存储器RAM、128B特殊功能寄存器(SFR) 3个16位的定时器/计数器 有一个管理6个中断源的中断控制器 4个8位并行I/O端 一个全双工的串行接口(UART) 片内振荡电路和时钟发生器 可扩展64KB程序、64KB数据存储器的三总线控制电路,2.1.2 MCS-51单片机的内部原理结构,MCS-51单片机的内部原理结构如图2-2所示。 与图2-1比较,主要的区别是画出了CPU的内部结构,图中的中间部分除了“定时器、串行口”大方框之外都属于CPU部件。 下面先介绍CPU部分,对于其它部件,将在本章和后面的章节讲解。,图2-2 MCS-51(增强型)单片机原理结构图,XTAL2 XTAL1,P3.0P3.7,P1.0P1.7,RAM 地址,端口0驱动器,端口2驱动器,8KB Flash ROM,端口0锁存器,端口2锁存器,端口1驱动器,端口3驱动器,端口1锁存器,端口3锁存器,暂存器1,SP,PSW,B寄存器,暂存器2,ACC,256BRAM 128B SFR,缓冲器,PC加1,PC,程序地址寄存器,DPTR,定时器、串行口 中断部件及 特殊功能寄存器,地址总线数据总线,P2.0P2.7,Vcc GND,指令寄存器 指令译码器 指令控制器,P0.0P0.7,PSEN ALE EA RST,ALU,2.1.3 MCS-51单片机的CPU,MCS-51单片机内部有一个功能强大的8位CPU,它包含两个基本部分,运算器和控制器。 一、运算器 运算器包括:算术和逻辑运算部件ALU(Arithmetic Logic Unit) 以及累加器ACC、寄存器B、暂存器1、暂存器2、程序状态字寄存器PSW、布尔处理器等。,2.1.3 MCS-51单片机的CPU,1、算术逻辑运算部件ALU ALU可以对4位(半字节)、8位(一字节)和16位(双字节)数据进行操作。 这些操作可以是: 算术运算:加、减、乘、除、加1、减1、BCD码数的十进制调整及比较等; 逻辑运算:与、或、异或、求补及循环移位等。,2.1.3 MCS-51单片机的CPU,2、累加器ACC ACC在CPU结构中占有特殊的位置,所以ACC在指令中使用的非常多。 ACC既做源操作数又做目的操作数,如在加、减、乘、除算术运算指令中,在与、或、异或、循环移位逻辑运算指令等。 ACC也作为通用寄存器使用,并且可以按位操作,所以ACC是一个用处最多、最忙碌的寄存器。 在指令中用助记符A来表示。,2.1.3 MCS-51单片机的CPU,3、B寄存器 B做专门应用:在乘、除运算时,用来存放一个操作数,并且存放运算后的部分结果。 B做一般应用:在非乘、除运算中,B可以作为通用寄存器使用。 B可以按位操作,2.1.3 MCS-51单片机的CPU,4、程序状态字PSW 功能:用于设定CPU的状态和指示指令执行后的状态。 PSW相当于其它微处理器中的标志寄存器。格式如下:,2.1.3 MCS-51单片机的CPU,CY(PSW.7):进位、借位标志 在做位操作(布尔操作)时CY作 为位累加器。在指令中用C代替CY AC(PSW.6):半进位、半借位标志,也称为辅助进位标志 F0、F1(PSW.5 、PSW.1):用户标志位,留给用户使用,2.1.3 MCS-51单片机的CPU,OV(PSW.2):溢出标志位 有以下几种情况: 加减运算: OV1表示结果超出了8位有符号数的有效范围(128127),对无符号数OV没有意义。 无符号数乘法运算: OV1表明结果超出了8位数 无符号数除法运算: OV1表明除数为0,2.1.3 MCS-51单片机的CPU,P(PSW.0):累加器A的奇偶标志位 P表示累加器A中1的个数的奇偶性 P1,A中有奇数个1 P0,A中有偶数个1,2.1.3 MCS-51单片机的CPU,RS1、RS0(PSW.4 和PSW.3):工作寄存器组选择控制位。 工作寄存器:R0、R1、R7,2.1.3 MCS-51单片机的CPU,5、布尔处理器 布尔处理器以PSW中的进位标志位CY作为位累加器(用C表示)。 功能:专门用于处理位操作。 MCS-51单片机有丰富的位处理指令:如置位、位清0、位取反、判断位值(为1或为0)转移,以及通过C(指令中用C代替CY)做位数据传送、位逻辑与、位逻辑或等位操作。,2.1.3 MCS-51单片机的CPU,二、控制器 控制器包括程序计数器PC、指令寄存器IR、指令译码器ID,以及时钟控制逻辑、堆栈指针SP、地址指针DPTR等。 1、程序计数器PC PC是一个具有自加1功能的16位的计数器 PC的内容是将要执行的下一条指令的地址 改变PC的内容就改变了程序执行的顺序,2.1.3 MCS-51单片机的CPU,2、指令寄存器IR和指令译码器ID IR:存放从Flash ROM中读取的指令 ID:进行译码,产生一定序列的控制信号,完成指令所规定的操作。 3、堆栈 (1)堆栈的概念 堆栈是在RAM中专门开辟的一个特殊用途的存储区。 (2)堆栈的访问原则: “先进后出”、“后进先出” 。即先进入堆栈的数据后移出堆栈,即后进入堆栈的数据先移出堆栈。,2.1.3 MCS-51单片机的CPU,(3)堆栈的结构 堆栈的一端的地址是固定的,称为栈底;另一端的地址是动态变化的,称为栈顶。 (4)堆栈的操作方式 堆栈有两种操作方式:数据进栈和数据出栈。 进栈和出栈都是在栈顶进行,这就必然是按照“先进后出”、“后进先出”的方式存取数据。,2.1.3 MCS-51单片机的CPU,(5)堆栈的应用 主要是用来暂时存放数据,有两种情况使用堆栈: 一是CPU自动使用堆栈,当调用子程序或响应中断,处理中断服务程序时,CPU自动将返回地址存放到堆栈中; 通过堆栈传递参数。 二是程序员使用堆栈,用堆栈暂时存放数据。,2.1.3 MCS-51单片机的CPU,4、堆栈指针SP 堆栈指针SP(Stack Pointer)中为栈顶的地址,即SP指向栈顶。 SP是访问堆栈的间址寄存器 SP具有自动加1、自动减1功能。当数据进栈时,SP先自动加1,然后CPU将数据存入; 当数据出栈时,CPU先将数据送出,然后SP自动减1。,2.1.3 MCS-51单片机的CPU,下图是数据进栈的情况 数据从栈顶进入,58,A6,7B,2.1.3 MCS-51单片机的CPU,由于进栈时SP的值增加,即堆栈向地址大的方向生长,并且栈顶是有效数据,这种堆栈是满递增型堆栈。,7B,A6,58,36,2.1.3 MCS-51单片机的CPU,5、数据指针DPTR DPTR是唯一的16位寄存器。 DPTR既可以作为一个16位寄存器使用,也可以作为两个独立的8位寄存器使用。其高字节寄存器用DPH表示,低字节寄存器用DPL表示。 DPTR的用途: (1)主要用于存放16位地址,以便对64KB的片外RAM和64KB的程序存储空间作间接访问。 (2)其次用于存放数据,作为一般寄存器使用。,2.2 MCS-51单片机引脚与总线结构,主要内容 2.2.1 MCS-51单片机引脚信号及功能 2.2.2 MCS-51单片机外部总线结构,2.2.1 MCS-51单片机引脚信号及功能,封装:40DIP, 44PLCC。 常用40DIP 40个引脚分为4类: 电源引脚 晶振引脚 控制信号 输入/输出引脚,2.2.1 MCS-51单片机引脚信号及功能,一、电源引脚 Vcc(40脚):接5V电源正端 Vss(20脚):接5V电源地端 二、晶振引脚 XTAL1(19脚) XTAL2(18脚),2.2.1 MCS-51单片机引脚信号及功能,三、控制信号引脚 1、RST/VPD(9脚) RST:复位信号输入端,高电平有效。 单片机正常工作时:RST保持两个机器周期的高电平就会使单片机复位; 上电时:RST上的高电平必须保持10ms以上才能保证有效复位,由于振荡器需要一定的起振时间。 VPD:备用电源输入端,以保持内部RAM中的数据不丢失。当Vcc的电压降低到低电平规定的值或掉电时,接入电源。,2.2.1 MCS-51单片机引脚信号及功能,2、ALE/PROG(30引脚) ALE:地址锁存信号,每个机器周期输出两个正脉冲,下降沿或低电平用于控制外接的地址锁存器,锁存从P0口输出的低8位地址。 可以将ALE作为时钟信号使用。 PROG:片内程序存储器的编程脉冲输入端,低电平有效。,2.2.1 MCS-51单片机引脚信号及功能,3、PSEN(29引脚) 片外程序存储器读选通信号输出端,每个机器周期输出两个负脉冲,低电平有效。在访问片外数据存储器时,该信号不出现。 4、EA/Vpp(31引脚) EA:程序存储器选择输入端。低电平时,使用片外程序存储器;高电平时,使用片内程序存储器。 Vpp:片内程序存储器编程电压输入端。,2.2.1 MCS-51单片机引脚信号及功能,五、输入/输出引脚 1、P0口,P0.0P0.7(3239引脚) P0口是一个8位漏极开路的I/O口。 P0口作总线口: 当CPU以总线方式访问片外存储器时,P0口分时地输出低8位地址、读入指令和输入/输出数据。 P0口作为一般I/O口: 此时P0口为准双向口(各位输入前必须先输出1)。,2.2.1 MCS-51单片机引脚信号及功能,2、P1口,P1.0P1.7(18引脚) P1口是一个8位准双向I/O口 P1.0、P1.1的第二功能:对于增强型, 第二功能的信号分别为T2和T2EX T2(P1.0):定时器/计数器2的计数脉冲输入和时钟输出。 T2EX(P1.1):定时器/计数器2的重 装、捕获和计数方向控制输入。,2.2.1 MCS-51单片机引脚信号及功能,3、P2口,P2.0P2.7(2128引脚) 当CPU以总线方式访问片外存储器时,P2口输出高8位地址。 作为一般I/O口使用时,为准双向口。 4、P3口,P3.0P3.7(1017引脚) P3口是一个8位I/O口,还是一个双功能口 作为一般I/O口使用时,为准双向口。 各引脚第二功能如下页表2-2所示。,2.2.1 MCS-51单片机引脚信号及功能,表2-2 P3口各引脚第二功能定义,2.2.2 MCS-51单片机总线结构,总线的概念:总线即三总线,指数据总线、地址总线、控制总线。 一般说法为:多个部件信息的电气连接。 MCS-51单片机的总线:内部具有产生总线的结构。如图2-6所示。 单片机总线的应用: 扩展数据存储器 扩展程序存储器,2.2.2 MCS-51单片机总线结构,图2-6 MCS-51单片机总线结构,地址锁存器 74LS573,A15 : : : : : : A8 A7 : : : : : : A0 D7 : : : D0,数据总线(DB),I/O 口,控制总线(CB),地址总线(AB),P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6/WR P3.7/RD ALE PSEN EA RST,P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0,2.3 MCS-51单片机的存储器结构,主要内容 2.3.1 程序存储器结构 2.3.2 片内数据存储器结构 2.3.3 片外数据存储器结构,MCS-51单片机存储器概述 1、单片机的哈佛结构存储器 MCS-51单片机为哈佛结构:程序存储器ROM和数据存储器RAM分开编址 PC机为偌依曼:ROM和RAM统一编址 程序存储器:固化程序、常数和数据表 数据存储器:存放程序运行中产生的各种数据、用作堆栈等,2、单片机的存储器空间及分类 MCS-51单片机有4个存储空间: 片内程序存储器、片内数据存储器,片外程序存储器、片外数据存储器。 4个存储空间可以分成三类: 片内数据存储空间(256B的RAM和128B的特殊功能寄存器)、片外数据存储空间(64KB)、片内和片外统一编址的程序存储空间(64KB) 不同类型的存储空间,有各自的寻址方式和访问指令。,2.3.1 程序存储器结构,一、程序存储器结构 51基本型片内有4KB的Flash ROM,地址为0000H0FFFH,片外最多可以扩展60KB,地址为1000HFFFFH。 增强型片内有8KB的Flash ROM,地址为0000H1FFFH,片外最多可以扩展56KB,地址为2000HFFFFH,片内外是统一编址的。 程序存储器空间的配置如图2-7所示,2.3.1 程序存储器结构,图2-7 MCS-51单片机程序存储空间的配置,片 外 ROM,片 内 ROM EA=1,片 外 ROM EA=0,0000H,0FFFH,1000H,FFFFH,(a)片内有4KB的ROM (b)片内有8KB的ROM,片 外 ROM,片 内 ROM EA=1,片 外 ROM EA=0,0000H,1FFFH,2000H,FFFFH,2.3.1 程序存储器结构,单片机在执行指令时,对于低地址部分,究竟是从片内程序存储器取指令,还是从片外程序存储器取指令? 决定于程序存储器选择引脚EA的电平: EA接低电平,读片外程序存储器 EA接高电平,CPU从片内程序存储器取指令。 当取指令的地址大于片内存储器的最大地址时,CPU自动转到片外程序存储器取指令。,2.3.1 程序存储器结构,二、程序存储器的专用区域 用作复位和中断入口,2.3.1 程序存储器结构,中断向量:即中断入口地址。如下表 注意区分:中断入口地址、中断服务程序入口地址、中断服务程序。,2.3.1 程序存储器结构,C语言编程所考虑的问题 如果用C语言编写程序,不需要考虑以上这些问题,即不用考虑引导程序问题,中断入口与跳转问题,这些问题均由编译系统安排好。 main( )函数起到引导程序的作用。 对于中断处理,只要按照格式编写中断处理函数即可(见第4章)。,2.3.2 片内数据存储器结构,片内数据存储器按照寻址方式,可以分为三个部分:低128字节数据区,高128字节数据区,特殊功能寄存器区。如下图所示。,低128B RAM data区,特殊功能 寄存器,80H,FFH,00H,7FH,(a)89C51片内RAM,低128B RAM data区,高128B RAM idata区,特殊功能 寄存器,00H,7FH,80H,FFH,80H,FFH,(b)增强型单片机片内RAM,2.3.2 片内数据存储器结构,一、低128字节RAM 地址范围:00H7FH,128字节 应用特点:有多种用途、且使用最频繁 功能作用:分为三个区域,即工作寄存器区、位寻找区、通用数据区。 寻址方式:直接、间接、位寻址 低128字节RAM的配置如图2-9所示。,图2-9 低128字节RAM区,2.3.2 片内数据存储器结构,1、工作寄存器区 范围:地址从00H到1FH,共32字节。 分4个组:第0组、第1组、第2组、第3组 工作寄存器名:R0、R1R7。 不同的组对应的8个寄存器的地址不同,如表2-1所示。 工作寄存器组的选择:决定于程序状态字PSW的RS1和RS0位。见表2-1。 C语言下选寄存器组:在定义函数时,通过使用关键字“using”来选择(如using m) 。,2.3.2 片内数据存储器结构,2、位寻址区 范围:字节地址从20H到2FH,16字节。 位地址:00H到7FH ,128位。 用途:既可以做位操作,也可以字节操作。 C语言编程:用关键字“bit”定义的位变量在该区域;用关键字“bdata”将一般变量定义在该区域,并且定义的变量还可以进行位寻址。,2.3.2 片内数据存储器结构,3、通用数据区 范围:地址从30H到7FH,共80字节。 用途:用于堆栈、存放数据、存放程序运行时的中间结果等。 4、寻址方式 直接、间接、位寻址方式访问 直接、间接范围:字节地址从00H到7FH 位寻址范围:字节地址从20H到2FH,16字节;位地址00H到7FH、128位,2.3.2 片内数据存储器结构,二、高128字节RAM 地址范围:80HFFH,128字节 用途:与低128字节中的30H到7FH完全一样,用于堆栈、存放程序运行时的数据和中间结果等。 寻址方式:间接访问。 C语言编程:使用关键字“idata”定义变量,2.3.2 片内数据存储器结构,三、特殊功能寄存器(SFR) 也称为专用寄存器,是单片机中最重要的部分。 地址范围:80HFFH,128字节 功能作用: 控制单片机各个部件的运行 反映各部件的运行状态 存放数据或地址 寻址方式:直接访问,2.3.2 片内数据存储器结构,1、具体特殊功能寄存器 SFR的数量:基本型只有21个,增强型有27个;分别有11个、12个可以按位操作。 (1)与CPU相关的(7个) PWS*:程序状态寄存器 A*:累加器 B*:辅助运算寄存器 SP:堆栈指针 PCON:电源控制寄存器 DPL、DPH:数据指针的低字节、高字节,2.3.2 片内数据存储器结构,(2)与定时器相关的(12个) TMOD:模式寄存器 TCON*:控制寄存器 TL0、TH0:T0低8位、高8位计数器 TL1、TH1:T1低8位、高8位计数器 T2MOD:T2模式寄存器 T2CON*:T2控制寄存器 TL2、TH2:T2低8位、高8位计数器 RCAP2L、RCAP2H:T2捕获寄存器,2.3.2 片内数据存储器结构,(3)与中断相关的(2个) IE*:中断允许(控制)寄存器 IP*:中断优先级寄存器 (4)与串行口相关的(2个) SCON*:串行口控制寄存器 SBUF:串行口数据缓冲寄存器,2个 (5)与I/O口相关的(4个) P0*、P1*、P2*、P3* 4个并行口映射寄存器,2.3.2 片内数据存储器结构,2、一些最重要的寄存器 在表2-5中有格式的特殊功能寄存器最重要,它们是(9个): PSW*、IE*、IP*、TCON*、TMOD PCON、SCON*、T2CON*、T2MOD 应用单片机,主要就是掌握这9个有格式的特殊功能寄存器,对基本型仅有7个。,2.3.2 片内数据存储器结构,3、特殊功能寄存器在C语言中的表示 这些特殊功能寄存器及各位位名在汇编语言中能够识别,但在C语言中并不识别。 为了在C语言中使用,必须先做定义,它们多数在“reg51.h”、“reg52.h”等头文件做了定义。 但有一些未做定义,如4个并行口P0P3各位,累加器A,寄存器B等,在使用时需要用户定义。,2.3.3 片外数据存储器结构,地址范围:0000HFFFFH 容量:共64KB 访问指令:“MOVX”(片内用MOV) 使用“MOVX”指令对片外RAM进行读/写操作时,会自动产生读/写控制信号RD和WR,作用于片外RAM实现读/写操作。,2.3.3 片外数据存储器结构,片外RAM的用途: (1)没有特别的用途,不像片内RAM,不划分区域。 (2)片外RAM做通用RAM使用,主要存放大量采集的或接收的数据、运算的中间数据、最后结果、用作堆栈等。 C语言编程:使用关键字“xdata”或“pdata”将变量、数组、堆栈定义到片外RAM区。,2.4 MCS-51单片机的输入/输出端口,主要内容 2.4.1 P1口 2.4.2 P2口 2.4.3 P3口 2.4.4 P0口 2.4.5 端口的负载能力和接口要求,I/O口概述,MCS-51单片机的4个8位端口: 均可作一般I/O口,都是准双向口。 每个端口都可以按位作输入或输出 端口结构:每个端口都有一个(1)输出锁存器;(2)输出驱动器;(3) 输入缓冲器。 输出时锁存数据,输入时数据缓冲。 4个端口的差别:功能不尽相同、内部结构有区别,2.4.1 P1口,P1口是唯一的静态准双向口,用作通用I/O口。 P1口的结构:主要由(1)输出锁存器;(2)驱动器场效应管(FET);(3)两个三态缓缓冲器;(4)端口上拉电阻(实为FET)等部分组成。 P1口相对来说是最简单的,其电路结构如图2-10所示。,2.4.1 P1口,2.4.1 P1口,一、P1口输出 输出1:将1写入P1口某一位的锁存器,使输出驱动器的场效应管T截止,该位的引脚由内部上拉电阻拉成高电平,输出为1。 输出0:将0写入锁存器,使场效应管导通,则输出引脚为低电平。 不需要外接上拉电阻:因P1口内各位有上拉电阻,所以在输出高电平时,能向外提供拉电流负载。,2.4.1 P1口,二、P1口输入 输入通道建立:当P1口的某位用作输入时,该位的锁存器必须锁存输出1(该位先写1),使输出场效应管T截止,才能够正确输入。 输入:这时从引脚输入的值决定于外部信号的高低,引脚状态经“读引脚”信号打开的三态缓冲器2,送入内部总线。,2.4.1 P1口,输入时必须向对应位先写1:因为有可能前面的操作使引脚输出0,场效应管T处于导通状态,引脚被箝位为0,这样,不管外部信号为何状态,从引脚输入的永远为0,不能够正确输入。 单片机端口输入前必须先向端口输出1这种特性,称为准双向口。 MCS-51单片机的P0P3口作为通用I/O口使用时,都是准双向口。,2.4.1 P1口,三、P1口作“读修改写”操作 “读修改写”操作概念:在CPU执行某些指令时,需要先从P1口读入数据,经过某些操作后,再从P1口输出,这样的操作称为“读修改写”操作。 例如:指令“INC P1”,其操作先把P1口原来的值读入(读入的是锁存器中的值,而不是引脚的值),然后加上1,最后把结果再从P1口输出。 表2-6给出了P0P3口所有的“读修改写”指令。,2.4.1 P1口,2.4.2 P2口,P2口是一个双功能口,一是通用I/O口,二是以总线方式访问外存时的高8位地址口。 端口结构:与P1口的结构类似,但比P1口多了一个多路切换开关MUX和反相器3。,读引脚,内部总线,写锁存器,读锁存器,1,2,Vcc,P2.x,T,R,MUX,地址,控制,3,DQ 锁存器 CL Q,2.4.2 P2口,一、P2口作通用I/O口 一般I/O读/写操作指令:如执行“MOV A,P2”指令、执行“MOV P2,B”指令。 I/O口通道:由内部硬件自动使开关MUX拨向下边,与锁存器的输出端Q接通,这时P2口为通用I/O口,与P1口一样。 I/O口读/写操作:可以随时做输出,输入时要考虑其准双向口,先输出1。,2.4.2 P2口,二、P2口输出高8位地址 高8位地址输出通道:当进行总线读/写操作(执行“MOVX”指令)时, MUX开关在硬件控制下自动拨向上边,P2口输出高8位地址。 总线操作指令:对于“MOVX A,Ri”或“MOVX Ri,A”与“MOVX A,DPTR”、“MOVX DPTR,A”指令也一样,P2口始终输出高8位地址。 此时,P2口不能作为一般I/O口使用。,2.4.2 P2口,使用片外程序存储器: CPU从片外程序存储器每读一条指令,P2口就输出一次高8位地址。 由于CPU需要一直读取指令,P2口始终要输出高8位地址。 在这种情况下P2口不能够作为通用I/O口使用。,2.4.3 P3口,P3口是一个多功能口,某位结构如图2-12 P3口的结构:与P1口比较,多了“与非门”3、缓冲器4。 正是这两个部分,使得P3口具有第2功能 “与非门”3的作用:实际上是一个开关,决定是输出锁存器Q端数据,还是输出第2功能(W)的信号。,2.4.3 P3口,图2-12 P3口某一位的原理结构,第2功能输入,读引脚,内部总线,写锁存器,DQ 锁存器 CL Q,Vcc,读锁存器,P3.x,T,R,第2功能输出,3,W,1,2,4,&,2.4.3 P3口,一、P3口用作通用I/O口 输出通道:“与非门”3的W信号自动变高,为Q信号输出打开“与非门”,输出信号经过FET从P3引脚输出。 输入通道:其准双向的特性应该先输出1,W也自动为高,从Q端输出的高电平信号经“与非门”输出使FET截止。 输入: P3口引脚的外部信号,读引脚时打开缓冲器2,引脚状态经缓冲器4(常开)、缓冲器2后进入内部总线。,2.4.3 P3口,二、P3口用作第2功能 当使用P3口的第2功能时,8个引脚有不同的意义(见表2-2)。 1)第2功能输出 第2功能输出通道:输出位的锁存器被内部硬件自动置1,使与非门3对第2功能的输出是打开的。 第2功能输出可以是: TXD、WR、RD。 例如,P3.7第二功能为RD。,2.4.3 P3口,2)第2功能输入 第2功能输入通道:某位作第2功能输入时,该位的锁存器输出端被硬件自动置1,并且W保持为1,则与非门3输出低,FET截止,该位引脚为高阻输入。 P3口的第2输入功能可以是: RXD、INT0、INT1、T0、T1。 此时端口不作通用I/O口,三态缓冲器2不导通。,2.4.3 P3口,表2-2 P3口各引脚第二功能定义,2.4.4 P0口,P0口的结构: 与P1口比较,多了一路(1)总线输出(地址/数据)、(2)总线输出控制电路(反相器3和与门4)、(3)两路输出切换开关MUX及开关控制C,(4)上拉电阻换成了场效应管T1。 P0口两路输出切换控制: C=0,MUX拨向Q输出端,P0口为通用I/O口; C=1,开关拨向总线输出端,P0口作总线使用,分时地输出地址和数据。,2.4.4 P0口,图2-13 P0口某一位的原理结构,读引脚,内部总线,写锁存器,DQ 锁存器 CL Q,读锁存器,Vcc,P0.x,T2,MUX,地址 数据,控制C,3,&,T1,4,1,2,2.4.4 P0口,一、P0口用作通用I/O口 通用I/O口通道:当通过P0口进行I/O读/写操作(执行MOV等指令)时,由硬件自动使控制线C=0,封锁与门4,使T1截止。MUX拨向Q输出端,把输出场效应管T2与锁存器的Q端接通。 P0口可以作通用I/O口使用,但输出级是开漏电路,外接上拉电阻,才能输出高电平。 P0口作为通用I/O口时,也是准双向口。,2.4.4 P0口,二、P0口作为地址/数据总线使用 1、总线操作通道 当CPU对片外存储器(程序、数据)进行读/写(执行MOVX指令,或EA=0时执行MOVC指令)时,使控制线C=1,MUX拨向总线输出端。 P0口的总线操作:分时地输出地址和传输数据。 具体有两种情况。,2.4.4 P0口,2、P0口作为总线输出地址或数据 在扩展的程序存储器或数据存储器系统中,对于P0口分时地输出地址和输出数据,端口的操作是一样的。 总线输出通道:MUX开关把CPU内部的地址或数据经反相器3与驱动场效应管T2的栅极接通。 总线输出操作:输出1时,T1导通而T2截止,从引脚输出高电平;输出0时,T1截止而T2导通,从引脚输出低电平。,2.4.4 P0口,3、P0口作为总线输入数据 总线输入通道: 1)控制线C=1,总是将开关MUX拨向反相器3的输出端,总线输入时也是如此。 2)为了能够正确读入引脚的状态,地址/数据自动输出1,使T2截止,T1导通。 总线输入操作: “读引脚”信号有效,三态缓冲器2打开,引脚上的信号进入内部总线。,2.4.5 端口负载能力和接口要求,一、P0口 1、负载能力 (1)一般I/O口的负载能力 每一位输出可以驱动4个LS型TTL负载 (2)用作总线时的负载能力 P0口作总线时,每一位输出可以驱动8个LS型TTL负载。,2.4.5 端口负载能力和接口要求,2、接口要求 (1)一般I/O口的接口要求 P0口的输出级无上拉电阻,当把它用作通用I/O口时,输出级是开漏电路。 用其输出驱动NMOS电路时,要外接上拉电阻。 (2)用作总线时的接口要求 把P0口用作地址/数据总线时(系统扩展有ROM或RAM),则无须外接上拉电阻。 作总线输入时,不必先向端口写1。,2.4.5 端口负载能力和接口要求,二、P1P3口 1、负载能力 P1P3口的输出级接有上拉电阻,它们的每一位输出可以驱动4个LS型TTL负载。 2、接口要求 由于P1P3口的输出级接有上拉负载电阻,无论是作为输入口,还是作为输出口,不管外部电路的类型是什么,均无须外接上拉电阻。,2.5 MCS-51单片机的时钟及CPU时序,主要内容 2.5.1 时钟电路及时钟信号 2.5.2 CPU时序,MCS-51单片机内有一个节拍发生器,即片内振荡器和分频器,能够产生单片机工作的各种时钟信号。,2.5.1 时钟电路及时钟信号,一、时钟电路 MCS-51单片机内部有产生振荡信号的放大电路,可以两种方式产生时钟信号,一种是内部方式,另一种是外部方式。,1、内部方式 就是利用单片机内部的高增益反向放大器,外接晶振等器件构成的振荡电路。,2.5.1 时钟电路及时钟信号,2、外部方式 就是把外部的时钟信号接到XTAL1或XTAL2引脚上,给单片机提供基本的时钟信号。主要用于多电路时钟同步。,2.5.1 时钟电路及时钟信号,二、时钟信号 在单片机中,泛意的时钟信号包括:振荡信号、振荡信号的2分频信号、机器周期信号、指令周期信号。 1、节拍与状态周期 时钟信号:振荡频率的2分频,是基本时序信号。 状态周期S:时钟信号的周期 时钟信号的前后半个周期称为相位1(记为P1)和相位2(P2),也称为节拍1、节拍2,2.5.1 时钟电路及时钟信号,2、机器周期 机器周期:指CPU访问一次存储器所需要的时间。机器周期是量度时间的基本单位 机器周期与时钟周期的关系: 1个机器周期包含6个时钟周期或状态周期 机器周期与振荡周期的关系: 1个机器周期包含12个振荡周期 机器周期计算:设单片机的振荡频率fosc为12MHz,则机器周期为1s。 若振荡频率为6MHz,则机器周期为2s,2.5.1 时钟电路及时钟信号,3、指令周期 指令周期:指CPU执行一条指令所需要的时间。用机器周期量度。 不同的指令有不同的指令周期,有单机器周期、双机器周期、4机器周期三种。,2.5.2 CPU时序,CPU时序即CPU操作时序,包括取指令和执行指令两个阶段。 指令周期分为:单机器周期、双机器周期、4机器周期三种。 指令字节:单字节、双字节、三字节 一些典型指令的操作时序如图2-15所示。,2.5.2 CPU时序,图2-15 MCS-51单片机的CPU时序(1),S1 S2 S3 S4 S5 S6,S1 S2 S3 S4 S5 S6,读操作码,读下一操作码(丢弃),读操作码,读第2字节,时钟信号,ALE,(a)单字节、单周期指令 如:MOV A, Rn,(b)双字节、单周期指令 如:ADD A, #data,S1 P1 P2,S2 P1 P2,S3 P1 P2,S4 P1 P2,S5 P1 P2,S6 P1 P2,2.5.2 CPU时序,时钟信号,图2-15 MCS-51单片机的CPU时序(2),S1 S2 S3 S4 S5 S6,S1 S2 S3 S4 S5 S6,读操作码,读下一操作码(丢弃),读操作码,读下一操作码(
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:大学单片机原理及应用(C语言版)-周国运-课件PPT
链接地址:https://www.renrendoc.com/p-21836325.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!