单片机原理及应用教材.doc

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

单片机原理及应用常州轻工职业技术学院前言当今,单片微型计算机技术迅速发展,由单片机技术开发的智能化测控设备和产品广泛应用到各个领域,单片机技术产品和设备促进了生产技术水平的提高。企业迫切需要大量熟练掌握单片机技术,并能开发、应用和维护管理这些智能化产品的高级工程技术人材。单片机以体积小、功能强、可靠性好、性能价格比高等特点,已成为实现工业生产技术进步和开发机电一体化和智能化测控产品的重要手段。本教材内容分为十章。以MCS-51系列单片机为介绍对象,分别介绍MCS-51系列单片机结构原理、MCS-51单片机指令系统、汇编语言程序设计、并行I/O口的使用、并行I/O口的扩展方法及使用、中断系统和定时/计数器、A/D转换接口和D/A转换接口技术、键盘与显示器接口技术等内容。本教材由杨文新、龚益民、韩迎辉老师编写,谢丽华、刘军良老师参与本书图表的绘制。编者2004年7月目录第一章认识单片机……………………………………………3第二章MCS-51单片机指令系统………………………………14第三章汇编语言程序设计……………………………………27第四章并行I/O口…………………………………………33第五章并行I/O口的扩展…………………………………40第六章中断系统………………………………………………49第七章定时/计数器………………………………………55第八章A/D转换接口……………………………………60第九章D/A转换接口………………………………………63第十章键盘与显示器接口…………………………………67附录一WAVE软件的操作使用附录二ASCII码表附录三MCS-51单片机指令系统表附录四单片机练习题附录五单片机实验指导书第一章认识单片机一、什么是单片机单片机是将CPU、存储器、输入/输出接口、定时/计数器等集成在一块芯片上,是目前销量最大、应用面最广、价格最便宜的微型计算机。如图1-1所示:例1-1单片机彩灯控制系统(单片机控制8个发光二极管每隔0.1秒轮流点亮。)使用单片机实验板进行演示。二、典型单片机产品1.MCS-51系列美国Intel公司生产的8位字长单片机。基本型产品有8051、8031、8751等。2.AT89C51系列美国ATMEL公司生产的8位字长单片机。与MCS-51系列单片机兼容,内含4KB的flash存储器。三、MCS-51单片机的内部的硬件结构及引脚(一)MCS-51单片机内部的总体硬件结构8051单片机的内部基本结构,如图1-2所示。(二)MCS-51单片机的引脚8051单片机是HMOS工艺制造,外形为40条引脚,如图1-3所示。因为受芯片引脚数量的限制,有很多引脚具有双功能。1、主电源引脚VCC:芯片工作电源端,接+5V。Vss:电源接地端。2、时钟振荡电路引脚XTAL1:内部晶体振荡电路的反相器输入端。接法如图1-5。XTAL2:内部晶体振荡电路的反相器输出端。接法如图1-5。3、控制信号引脚RST————RST为复位信号输入端。外部接复位电路。接法如图1-4。ALE————ALE为地址锁存允许信号。在不访问外部存储器时,ALE以时钟振荡频率的1/6的固定频率输出,用示波器观察ALE引脚上的脉冲信号是判断单片机芯片是否正常工作的一种简便方法。PSEN————外部程序存储器ROM的读选通信号。到外部ROM取指令时,PSEN自动向外发送负脉冲信号。EA————为访问程序存储器的控制信号。I/O口CPU程序存储器定时/计数器外设取指令图1-1单片机结构框图4、并行I/O端口引脚P0口(P0.0~P0.7);P1口(P1.0~P1.7);P2口(P2.0~P2.7);P3口(P3.0~P3.7)。(三)复位电路与时钟电路1.复位电路(1)复位电路单片机的RST引脚是复位信号输入端,RST引脚上保持两个机器周期(24个时钟周期)以上的高电平时,可使单片机内部可靠复位。单片机常用的外部复位电路如图1-4。(a)引脚图(b)逻辑符号图1-3MCS-51引脚图振荡器和时钟电路程序存储器4KBROM数据存储器256BRAM/SFR8051CPU两个16位定时器/计数器中断系统64K字节总线扩展控制并行I/O端口全双工串行口外部时钟源外部计数脉冲外中断控制外部设备串行通讯图1-28051单片机的内部基本结构(2)复位状态复位后,单片机内部的各寄存器的内容将被初始化,包括程序计数器PC和特殊功能寄存器,其中(PC)=0000H,特殊功能寄存器的状态见表1-1。复位不影响片内RAM和片外RAM中的内容。表1-1复位后特殊功能寄存器的初始状态2.时钟电路时钟电路用于产生时钟信号,时钟信号是单片机内部各种微操作的时间基准,在此基础上,控制器按照指令的功能产生一系列在时间上有一定次序的信号,控制相关的逻辑电路工作,实现指令的功能。电容容量范围为30PF±10PF,石英晶体频率的范围为1.2~12MHZ,常用6MHZ或12MHz。3.时序单位SFR名称初始状态SFR名称初始状态ACC00HTMOD00HB00HTCON00HPSW00HTH000HSP07HTL000HDPL00HTH100HDPH00HTL100HP0~P3FFHSBUF不确定IPХХХ00000BSCON00HIE0ХХ00000BPCON0ХХХХХХХB(a)上电复位电路(b)上电复位兼手动复位电路图1-4MCS-51的复位电路图1-58051的外接石英晶体的时钟电路(1)时钟周期(是时钟信号频率fosc的倒数)时钟周期=1/fosc(2)机器周期:机器周期=12×时钟周期(3)指令周期一条指令从被读取到被执行的整个过程所需的时间称为指令周期。思考题:fosc分别为6MHZ和12MHZ时,机器周期分别为多少?四、MCS-51单片机的内部硬件的主要功能(一)中央处理单元CPU它由运算器和控制器两部分组成。1.运算器运算器是进行各种算术运算和逻辑运算的部件。与运算器有关的寄存器包括ACC、B、PSW。(1)累加器ACC(8位寄存器)(2)B寄存器(8位)(3)程序状态字寄存器PSW(8位)PSW主要用于存放程序状态信息以及运算结果的标志,所以又称标志寄存器。其格式如下(D1位没有定义):D7D6D5D4D3D2D1D0CYACF0RS1RS0OV—PCY——进位标志位。AC——辅助进位标志位。F0——用户标志位RS1、RS0——工作寄存器区选择控制位OV——溢出标志位。P——奇偶标志位。2.控制器(1)控制器的组成控制器是由程序计数器PC、指令寄存器、译码器、定时与控制电路等组成的。(2)程序计数器PCPC是一个16位的寄存器,PC中的内容是下一条将要执行的指令代码的起始存放地址。当单片机复位之后,(PC)=0000H,引导CPU到0000H地址读取指令代码,CPU每读取一个字节的指令,PC的内容会自动加1,指向下一个地址,使CPU按顺序去读取后面的指令,从而引导CPU按顺序执行程序。(二)存储器1.8051的存储器分为两大存储空间:程序存储器(ROM)空间(1)片内4KB的程序存储器,其地址为0000H~0FFFH(2)片外64KB的程序存储器,其地址为0000H~FFFFH数据存储器(RAM)空间OSC时钟ALE图1-6时序图(1)片内256B的数据存储器,00H~7FH为通用的数据存储区,80H~FFH为专用的特殊功能寄存器区(2)片外64KB的数据存储器,其地址为0000H~FFFFH与8051不同的是,8751片内包含4KB的EPROM程序存储器,而8031内部不包含程序存储器。2.程序存储器(1)程序存储器主要用于存放程序和表格常数。(2)程序存储器分为片内、片外两部分,总容量最大为64KB,地址为0000H~FFFFH。(3)EA引脚的接法对于8051、8751等片内有程序存储器的芯片,EA引脚应该接高电平;对于8031这种片内无程序存储器的芯片,EA引脚应该接低电平。3.数据存储器数据存储器主要用于存放各种数据。以下只对内部数据存储器进行介绍。7FH30H2FH20H1FH00H图1-8内部数据存储器的结构FFFFHFFFFH1000H0FFFH0FFFHFFH80H7FH0000H0000H00H0000H程序存储器内部数据存储器外部数据存储器60KB外部ROM4KB内部ROM(EA=1)4KB外部ROM(EA=0)特殊功能寄存器内部RAM64KB外部RAM图1-78051的存储器结构用户区位寻址区(位地址00~7F)工作寄存器区3(R0~R7)工作寄存器区2(R0~R7)工作寄存器区1(R0~R7)工作寄存器区0(R0~R7)(1)低128B的内部数据存储器按其功能不同划分为三个区域。①工作寄存器区(00H~1FH)该区均分为四个小区,任何时候,只有一个区的工作寄存器可以工作,称为当前工作寄存器区。当前区的选择可通过对寄存器PSW中的RS1、RS0两个位的设置来进行,见表1-2。表1-2当前工作寄存器区的选择思考题:单片机复位时,当前工作寄存器区是哪个?②位寻址区(20H~2FH)位寻址区有16个单元组成,共128个位,每个位具有位地址,表1-3中表格数据是每个位的位地址。每个单元也可作一般的数据缓冲单元使用。表1-3片内RAM的位寻址字节地址2FH2EH2DH2CH2BH2AH29H28H27H26H25H24H23H22H21H20H③用户区(30H~7FH)为一般数据缓冲区,堆栈区通常也设置在这个区域内。(2)高128字节(特殊功能寄存器区)8051内部有21个特殊功能寄存器(简称SFR),它们均为8位的寄存器,离散分布在80H~FFH区域,剩下107个单元是没有定义的,用户不能使用。见表1-4。RS1RS0当前工作寄存器区000区011区102区113区位地址映象7FH7EH7DH7CH7BH7AH79H78H77H76H75H74H73H72H71H70H6FH6EH6DH6CH6BH6AH69H68H67H66H65H64H63H62H61H60H5FH5EH5DH5CH5BH5AH59H58H57H56H55H54H53H52H51H50H4FH4EH4DH4CH4BH4AH49H48H47H46H45H44H43H42H41H40H3FH3EH3DH3CH3BH3AH39H38H37H36H35H34H33H32H31H30H2FH2EH2DH2CH2BH2AH29H28H27H26H25H24H23H22H21H20H1FH1EH1DH1CH1BH1AH19H18H17H16H15H14H13H12H11H10H0FH0EH0DH0CH0BH0AH09H08H07H06H05H04H03H02H01H00H有11个SFR的字节地址可被8整除(地址以0和8结尾),可以位寻址(表中已给出它们的位地址)。表1-4特殊功能寄存器地址对照表SPR名称符号D7位地址/位定义D0字节地址B寄存器BF7F6F5F4F3F2F1F0(F0H)累加器AACCE7E6E5E4E3E2E1E0(E0H)程序状态字PSWD7D6D5D4D3D2D1D0(D0)CYACF0RS1RS0OV------P中断优先级控制IPBFBEBDBCBBBAB9B8(B8H)----------------PSPT1PX1PT0PX0I/O端口3P3B7B6B5B4B3B2B1B0(B0H)P3.7P3.6P3.5P3.4P3.3P3.2P3.1P3.0中断允许控制IEAFAEADACABAAA9A8(A8H)EA------EAET1EX0ET0EX0I/O端口2P2A7A6A5A4A3A2A1A0(A0H)P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0串行数据缓冲SBUF(99H)串行控制SCON9F9E9D9C9B9A9998(98H)SW0SW1SW2RENTB8RB8TIRII/O端口1P19796959493929190(90H)P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0定时/计数器1(高字节)TH1

1 / 113
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功