-
第一章单片机概述
《单片机系统设计》是高等学校工科非计算机专业本科生的一门应用类课程,是面向自动化、轨道交通信号与控制以及电气工程自动化专业的理论实践性较强的专业基础课。结合典型的MCS-51单片机学习单片机的基本工作原理、特点、系统组成及应用系统设计技术。通过本课程的学习,使学生掌握单片机的工作原理,建立起计算机的总体概念,培养学生具有单片机硬件系统分析、阅读程序的能力。掌握单片微型计算机的硬件结构特点、工作原理、接口电路,软件汇编语言程序设计及应用系统分析设计的方法。 本课程的目的和任务是使学生从应用的角度了解单片微型计算机的基本原理和基本应用,从而具备对单片机进行软、硬件设计开发的能力。 从本节开始我们正式开始学习单片机系统设计这门课。
-
●1.1单片机概述
单片机是把中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、输入/输出接口、定时器/计数器、中断系统等主要功能部件集成在一块半导体芯片上的数字电子计算机。单片机有两种结构:普林斯顿(Princeton)结构和哈佛(Har-vard)结构。51系列单片机采用的是哈佛结构。目前单片机以采用程序存储器和数据存储器截然分开的结构较多。尽管单片机按其用途和其基本操作处理的位数可分为好多类别,但无论是从世界范围或是从全国范围来看,使用最为广泛的应属51系列单片机,其中就MCS-51单片机系列共有十几种芯片。本节主要对单片机的概念、结构以及分类分别介绍。
-
●1.2单片机的发展和应用
单片机的出现已经有了近40年的历史,它的产生与发展和微处理器的产生与发展大体上同步,也经历了4位、8位、16位、32位、64位单片机阶段共五个阶段,总之,单片机的发展趋势是低功耗CMOS化、微型化及主流与多品种共存。而与之对应着因单片机具有体积小、可靠性高、功能强、灵活方便等优点,广泛应用于各种领域,如测试和控制系统、智能仪表、机电一体化产品、计算机外部设备与智能接口以及家用电器等领域,单片机的广泛应用,对各行各业的技术改造和产品更新换代起到了重要的推动作用。本节主要对单片机的发展历史、趋势以及单片机的应用领域分别介绍。
-
第二章单片机芯片的硬件结构
51单片机的硬件结构具有功能部件种类全、功能强等优点。51系列的单片机为标准的40引脚双列直插DIP封装,由运算器、控制器、存储器、输入设备、输出设备五部分组成。通过第一章对单片机概念、单片机结构、单片机发展以及应用等的相关介绍,我们对单片机有了初步的认识。本章将重点介绍单片机的内部结构及引脚、单片机的存储器配置、程序存储器、数据存储器、单片机的时钟电路与时序、单片机的复位、单片机的并行I/O口等.
-
●2.1单片机的内部结构
51系列单片机是按照工业标准设计制造的,其内核是基于多个内部寄存器结构的累加器,用于数据储存和外部设备管理。 主要由CPU、数据存储器RAM、程序存储器ROM、特殊功能寄存器、4个I/O口、串行口、定时器/计数器、中断系统八个功能部件组成。51单片机共有40个引脚,按引脚功能的不同分为:主电源引脚VCC和GND、外接晶体引脚XTAL1和XTAL2、控制信号引脚、输入/输出端口引脚等。本节课主要介绍了单片机的内部结构及单片机的引脚及相关功能。
-
●2.2单片机的引脚及功能
存储器是单片机的一个重要组成部分。存储器(Memory)是计算机系统中的记忆设备,用来存放程序和数据。计算机中的全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中,它根据控制器指定的位置存入和取出信息。单片机与一般微机的存储器配置方式不同,在物理结构上大多是哈佛型结构,分为程序存储器和数据存储器两个不同的空间,并采用不同的访问指令。在本节课中,介绍了存储器的相关基础知识并按不同的分类分析了51系列单片机存储器结构特点。
-
●2.3存储器概述及程序存储器
在利用单片机处理问题之前,必须先将编好的程序、表格、常数汇编成机器代码后存入单片机的存储器中,该存储器称为程序存储器。程序存储器的操作完全由程序计数器(PC)控制,51单片机专门设置一个16位的PC,用于指示下一时刻CPU将要执行的程序指令在ROM中的位置。程序存储器的操作分为程序运行与查表操作两类。本节课主要讲述了程序存储器相关基础知识并介绍了单片机的内部程序存储器和外部程序存储器的特点、地址范围、寻址方式等。
-
●2.4数据存储器(上)
单片机的数据存储器由读写存储器RAM组成。用于存储实时输入的数据、或中间计算结果。同ROM相同,其空间分为片内和片外两部分。片内RAM按地址范围的不同,分为工作寄存器区、位寻址区、一般RAM区以及堆栈区。片外RAM同ROM相似,通过外部总线扩展RAM从而获得更大的存储空间。本节课先介绍单片机的数据存储器的相关知识,接着对片内数据存储器和片外数据存储器的特点、地址范围和寻址方式等进行讲解,最后重点分析了单片机内部数据存储器中堆栈的操作。
-
●2.5数据存储器(下)
单片机的工作是在时序脉冲的控制下有条不紊地进行的,这个脉冲可由单片机内部的时钟电路产生。单片机在执行指令时,是将一条指令分解为若干基本的微操作,这些微操作所对应的脉冲信号在时间上的先后次序(或指令执行中各信号之间的相互时间关系)称为计算机的时序。51单片机的时序由四种周期构成,即振荡周期、时钟周期、机器周期和指令周期。本节课分为两部分,第一部分讲述了时钟信号的两种产生方式,第二部分介绍了51单片机由四种周期构成的时序。
-
●2.6单片机的堆栈及复位
本节我们学习的主要内容有:单片机的复位目的,复位条件,复位电路以及低功耗工作方式。复为目的就是对单片机的片内电路重新进行初始化,使有关部件都恢复到原先规定的初始状态。复位条件,要求必须在51单片机的RST引脚保持两个机械周期(24个震荡周期)以上的高电平。复位电路是由单片机提供的RST引脚,外接电路、电容元件组成的。51单片机采用两种半导体工艺生产,HMOS工艺和CHMOS工艺。CHMOS工艺的单片机耗电少,还提供空闲方式和掉电保护工作方式两种节电工作方式。
-
●2.751单片机时钟电路与时序
51单片机提供4个8位的并行I/O口。4个口都属于特殊功能寄存器,且每个口都拥有唯一的地址。每个口既可按位寻址,也可按字节寻址,CPU通过相应的指令区分。具有内部程序存储器的单片机可用P0口作通用I/O;访问外部存储器时,它是一个复用的地址/数据总线。P1口也是一种准双向I/O口,通常作一般I/O口用;P2口既可作为通用I/O口使用,又可作为地址总线口输出高8位地址;P3口与P1口的输出驱动部分及内部上拉电阻相同,但比P1口多一个第二功能控制部分的逻辑电路。
-
●2.8单片机的并行I/O口
本节介绍单片机的并行I/O口。
-
第三章51单片机的指令系统
本章介绍了51单片机的指令格式及寻址方式,重点介绍了六大类指令的格式,工作过程,并对指令的应用举例说明。本章是理解51单片机汇编语言程序的基础。
-
●3.1指令格式与寻址方式
本节主要介绍指令格式与寻址方式
-
●3.251单片机指令系统
本节主要介绍51单片机指令系统。
-
第四章51单片机程序设计
本章首先介绍了51单片机汇编语言程序的基本要素及程序结构,介绍了常用的汇编伪指令的使用,并结合程序设计举例讲解;其次介绍了面向51单片机的C语言程序、C51的数据结构和存储类型,最后结合例子程序进行讲解。
-
●4.1汇编语言程序设计概述
汇编语言程序设计概述
-
●4.2基本程序设计
基本程序设计
-
●4.3汇编语言程序设计举例
汇编语言程序设计举例
-
●4.4面向51单片机的C语言程序
面向51单片机的C语言程序
-
●4.5Keil µVsion4集成开发环境
Keil µVsion4集成开发环境
-
第五章单片机中断系统与定时器
本章主要分为两部分: 1、介绍51单片机中断的基本概念,控制寄存器及中断系统的应用; 2、讲述51单片机定时计数器工作原理及工作方式。
-
●5.1中断系统概述
介绍中断系统基本概念
-
●5.2MCS-51单片机中断系统
介绍51单片机中断系统
-
●5.3中断系统控制寄存器
介绍51单片机中断系统相关寄存器
-
●5.4MCS-51单片机定时计数器
介绍51单片机定时计数器工作原理及相关寄存器
-
第六章单片机串行数据通信
首先介绍计算机数据通信基础知识,在此基础上讲解51单片机串行口工作原理及介绍相关控制寄存器,随后分别举例讲述串行口的每一种工作方式及其应用。
-
●6.1计算机数据通信基础知识
介绍计算机数据通信基础知识
-
●6.251单片机串行口及控制寄存器
介绍51单片机串行口工作原理及相关控制寄存器
-
●6.351单片机串行口工作方式及应用
介绍51单片机串行口工作方式
-
●6.451单片机多机通信
介绍51单片机串行口多机通信工作原理
-
第七章单片机外部存储器扩展
由于单片机的结构、集成工艺等关系,单片机内部资源有限,内部功能略显不足,为此应经常根据需要对单片机进行资源扩展,在51单片机外围扩展存储器芯片、I/O口芯片及其他功能芯片,从而构成一个功能更强的单片机系统。系统扩展和接口技术一般有5方面内容:外部总线的扩展;外部存储器的扩展;输入/输出接口的扩展;管理功能器件的扩展(如定时器/计时器、键盘/显示器、中断优先级编码器等);A/D和D/A接口技术。
-
●7.1单片机存储器概述
单片机的芯片内集成计算机的基本功能部件,已具备很强的功能。例如,51系列单片机中的89C51,一块芯片就是一个完整的最小微机系统。但对于一些较大的应用系统来说,单片机毕竟是一块集成电路芯片,其内存功能略显不足,这时应根据需要对单片机进行资源扩展。系统扩展一般有两项主要任务:其一,把系统所需的外设和单片机连接起来,使单片机系统能与外界进行信息交换。其二,扩大单片机的存储容量。
-
●7.2存储器的扩展
当单片机内部的存储器不够用时,必须进行存储器的扩展,目前使用半导体存储器,由于51单片机地址总线宽度是16位,所以在片外可扩展的存储器最大容量为64KB。存储器的存储容量的确定与待扩展的存储器芯片的地址总线有关,通常把单片机系统地址笼统地分为低位地址和高位地址;在进行存储器扩展时,通常使用线选法和译码法两种编址方法。本节讲述单片机存储器扩展的基础知识及其扩展方法,重点是学习单片机存储器扩展的具体实现。
-
●7.3程序存储器扩展
单片机的程序存储器扩展使用只读存储器芯片(ROM)。ROM中的信息一旦写入就不能随意更改,特别是不能在程序运行过程中写入新的内容,而只能读存储单元内容,故称之为只读存储器。根据编程方式地不同,ROM分为掩膜式ROM、PROM、可擦除ROM、电擦除可改写ROM和快擦除ROM五种。本节课主要对可擦除ROM(EPROM芯片2716)介绍其容量、引脚及工作方式;并通过对程序存储器的扩展举例,加深学生对程序存储器的理解。
-
●7.4数据存储器扩展
数据存储器就是随机存储器(RAM),在单片机系统中用于存放可随时修改的数据。与ROM不同,RAM可以进行读写两种操作。但RAM是易失性存储器,断电后所存信息立即消失。按其工作方式,RAM又分为静态(SRAM)和动态(DRAM)两种,由于51单片机片内RAM仅256B,当系统需要较大容量的RAM时,就需要片外扩展数据存储器,最大可扩展64KB。由于单片机是面向控制的,实际需要扩展容量不大。因此一般采用静态RAM较为方便。本节主要介绍了单片机数据存储器扩展的相关知识,并通过具体的扩展举例分析。
-
●7.551系列单片机存储器系统的特点和使用
通过学习51单片机内部存储器的结构,以及外部存储器的扩展结构,读者认为单片机的存储器具有复杂性这一特点。而复杂性又表现在三个方面,一是存储器的种类(程序存储器和数据存储器同时存在),二是存储器的位置(内外存储器同时存在),最后是存储器的地址空间(存储器地址空间的重叠和连续)。关于51单片机存储器的正确使用,首先要学会区分4个不同的存储空间,使之不混淆,其次要学会内外程序存储器的衔接。
-
第八章单片机IO扩展及应用
从结构、功能及数量上来看,51单片机本身的I/O口功能有限;另由于I/O操作设备种类的速度差异、设备种类繁多和数据信号形式多种多样等原因,单片机的I/O操作单靠单片机本身的口电路是无法实现的。为此,必须扩展接口电路。本章将从简单I/O口概念、并行I/O口的扩展以及可编程I/O口芯片的使用等方面口进行介绍。
-
●8.1单片机IO扩展概述
IO口的概念、51单片机芯片I/O口的直接使用方法和IO口的功能。
-
●8.2单片机简单并行IO口扩展
介绍了常用TTL芯片及其作为输入输出接口扩展芯片的应用及实例。
-
●8.3可编程并行IO接口芯片8255A
可编程并行IO接口概述、8255A的内部结构及引脚功能、工作方式及数据IO操作、与单片机的硬件连接及编程应用。
-
第九章人机接口技术
单片机应用系统通常都需要进行人一机对话。本章要介绍的非编码键盘、LED显示器就是用来完成人-机对话活动的通道。
-
●9.1键盘及其与单片机的接口
在单片机系统中使用的按键可能包括独立按键、矩阵键盘;介绍了独立按键、矩阵键盘与单片机的硬件接口连接及按键的识别原理。
-
●9.2LED显示器及接口设计
LED显示器中的发光二极管的共阴极接法、共阳极接法;LED显示器与单片机的连接,包括静态显示接口和动态显示接口。常见的单片机键盘显示接口基于8255A实现扩展。
-
第十章数模及模数转换器接口技术
在自动控制领域中,常用单片机进行实时控制和数据处理,而被测、被控的参量通常是一些连续变化的物理量,即模拟量,如:温度、速度、电压、电流、压力等。但是单片机只能加工和处理数字量,因此,在单片机应用中凡遇到有模拟量的地方,就要进行模拟量与数字量或数字量与模拟量的转换,也就出现了单片机的数/模及模/数转换的接口问题。A/D和D/A转换器就是把微型计算机的应用领域扩展到检测和过程控制的必要装置,是把计算机和生产过程、科学实验过程联系起来的重要桥梁。目前,这些数/模及模/数转换器都已集成化,并具有体积小、功能强、可靠性高、误差小、功耗低等特点,能很方便地与单片机进行接口。
-
●10.189C51与DAC的接口
D/A(数/模)转换器输入的是数字量,经转换后输出的是模拟量。为把数字量转换为模拟量,在D/A转换芯片中要有解码网络,常用的主要为二进制权电阻解码网络和梯形电阻解码网络。转换过程是先将各位数码按其权的大小转换为相应的模拟分量,然后再以叠加方法把各模拟分量相加,其和就是D/A转换的结果。D/A转换器是单片机应用系统与外部模拟对象的一种重要控制接口,单片机输出的数字信号必须经D/A转换器变成模拟信号后,才能对控制对象进行控制。本节主要对DAC0832的内部结构、引脚功能以及与单片机的接口分别介绍。
-
●10.289C51与ADC的接口
A/D(模/数)转换把模拟量信号转化成与其大小成正比的数字量信号。A/D转换是微机测控系统中输入通道的一个环节,并不是所有输入通道都要配备A/D转换器。只有模拟量输入通道,并且输入计算机接口不是频率量而是数字量时,才用到A/D转换器。A/D转换电路的种类很多,目前最常用的是逐次逼近式和双积分式。ADC0809是一种逐次逼近式8路模拟输入、8位数字量输出的A/D转换器。本节主要对ADC0809的内部结构、引脚功能以及与单片机的接口分别介绍。
-
第十一章单片机的串行总线扩展
随着微处理技术的飞速发展,单片机的应用领域不断扩大,与之相应的总线技术也不断创新。本章主要介绍了有关单片机总线的基本概念、总线的分类及其结构,系统而详细地介绍了当前最常见、应用最广泛的几种单片机总线系统,如SPI总线、I2C总线和1-wire总线;讨论了三种常见总线的基础知识、原理、性能特点和通信;另外,介绍了几种目前应用比较广泛的现场总线技术并列举了一些典型的系统扩展实例,旨在使学生对单片机总线及其扩展技术有一个深入的了解。
-
●11.1SPI串行扩展接口
SPI串行扩展接口是一种同步的高速串行通信协议,它可以使单片机与外围模块之间进行数据交换,主要应用在EEPROM、FLASH、实时时钟、AD转换器之间。系统可直接与多种标准外围器件直接接口,是一种同步串行外设接口,允许MCU与各种外围设备以串行方式进行通信,是一种高速的、全双工、同步的通信总线。本节主要对SPI接口及SPI外围接口的扩展分别介绍,并通过两种实例模拟实现SPI操作,便于学生理解。
-
●11.2IIC总线技术
I2C是一种两线式串行总线,用于连接微控制器及其外围设备,是近几年来在通信控制领域广泛采用的一种新型总线标准,能用于替代标准的并行总线。I2C是同步通信的一种特殊形式,具有接口线少、控制方法简化、器件封装形式小、通信速率较高等优点,即简单又有效。本节先介绍I2C相关概念和术语,接着分析性能特点,然后分别从构成、信号类型、工作流程、基本操作等方面叙述了I2C总线原理,最后结合一个具体的实例分析介绍了常用的I2C芯片及其相关应用。
-
●11.31-wire总线
1-wire总线是一种外围设备串行扩展总线,适用于单片机系统,可控制一个或多个从器件。单线总线只采用一根数据线完成从器件供电和主从设备之间的数据交换,加上地线共需两根线,即可保证器件全速运行,具有节省I/O资源、结构简单、成本低廉、便于总线扩展维护等优点。本节为了较为全面地介绍1-wire总线,从两部分展开讨论,第一部分从单线总线的电气连接、基本操作、单线总线的器件ROM码、命令及常用的单线总线器件介绍1-wire总线基本知识,第二部分主要介绍了1-wire总线通信及接口。