




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
要求上课带教材练习本和笔课上请把手机关闭或调静音,确实有需要,请去教室外接听按时交作业,作业须做在练习本上说明:课程设计可以提前进行第二章单片机的基本结构与工作原理命令程序存储器程序CPU和数据存储器总线和接口功能模块第二章单片机的基本结构与工作原理如果把一个单片机系统看成是一个人体
如何理解单片机的工作原理和方式?
数据存储器和程序存储器的区别?总线的概念?地址的概念?数据的概念?纯数据操作?动作?第二章单片机的基本结构与工作原理2.1 单片机的基本组成2.2 80C51单片机的引脚功能和结构框图2.2.180C51的引脚功能2.2.280C51的内部结构框图和组成2.380C51CPU的结构和特点2.3.1中央控制器2.3.2运算器2.3.3时钟电路及CPU的工作时序第二章单片机的基本结构与工作原理2.4 存储器结构和地址空间2.4.1程序存储器2.4.2数据存储器2.5 布尔(位)处理器2.6 80C51单片机的工作方式2.6.1复位方式2.1 单片机的基本组成图2-1MCS-51单片机基本结构示意图按功能划分:由8个部分组成123456872.280C51单片机的引脚功能和结构框图2.2.180C51的引脚功能2.2.280C51的内部结构框图和组成第二章单片机的基本结构与工作原理图2280C51/80C52的封装及逻辑图MCS-51单片机的引脚(40脚)返回本章首页Vcc,GND2XTAL1,XTAL22RESET1(/EA)/Vpp1ALE/(/PROG)
1(/PSEN)
1P0.0—P0.78P1.0—P1.78P2.0—P2.78P3.0—P3.782.2.180C51的引脚功能
电源和晶振4根
VCC、VSS:电源的正端与接地
XTAL1,XTAL2:
片内振荡电路输入/输出端(2)I/O口:4个口,32根(3)控制线:共4根。①输入:
RESET:
复位端(正脉冲有效,宽度个机器周期)(/EA)/Vpp:片外程序存储器访问允许信号,低电平有效。在编程时,其上施加21V或12V的编程电压。
2.2.180C51的引脚功能②输入、输出:(/ALE)/PROG:
地址锁存允许/编程脉冲输入端。
P0口寻址外部低8位地址时接外部锁存器G端;
ALE端平时会输出周期正脉冲:ffosc/6;对片内ROM编程时编程脉冲由此端加入。③输出控制线:/PSEN:寻址外部程序存储器时选通外部EPROM的读控制端(OE)低有效。2.2.280C51的内部结构框图和组成第二章单片机的基本结构与工作原理
图2-380C51的内部结构框图2.380C51CPU的结构和特点CPU控制器运算器2.3.1中央控制器
中央控制器是识别指令,并根据指令性质控制计算机各组成部件进行工作的部件,中央控制器程序计数器PC数据指针指令寄存器IR指令译码器条件转移逻辑电路定时控制逻辑电路程序计数器PC(ProgramCounter)PC
不是一个特殊功能寄存器SFR,但其作用又十分重要和特殊!!!特点:▼它是16位的,按机器周期自动增1计数器▼一切分支/跳转/调用/中断/复位等操作的本质就是:改变PC值▼总指向下一条指令所在首地址(当前PC值)▼不可寻址程序计数器PC(ProgramCounter)程序计数器PC的输出,即程序存储器的地址,与P0、P2口之间的关系如图2--4所示。图2-4程序计数器PC的输出与P0、P2口之间的关系
数据指针DPTR51系列中唯一出现在符号指令中的一个16位寄存器可分为两个8位的寄存器使用用作访问外部存储空间(数据、I/O、程序空间)此时,DPTR的输出,即片外数据存储器的地址,与P0、P2口之间的关系如图2--5所示。
数据指针DPTR图2—5DPTR的输出与P0、P2口之间的关系
数据指针DPTRDPTR寄存器也可以作为访问程序存储器时的基址寄存器。MOVCA,@A+DPTRJMP@A+DPTRDPTR寄存器既可以作为一个16位寄存器处理如,MOVDPTR,#16位地址
INCDPTR也可以作为两个8位寄存器处理,其高8位用DPH表示,低8位用DPL表示。如:CJNEA,DPL,$CJNEA,DPH,$PC与DPTR对比①两者都是与地址有关的、16位的寄存器。其中,PC与程序存储器的地址有关,而DPTR与数据存储器的地址有关。作为地址寄存器使用时,PC与DPTR都是通过P0和P2口输出的。但是,PC的输出与ALE及PSEN有关;DPTR的输出,则与ALE、WR、RD相联系。PC与DPTR对比②PC只能作为16位寄存器对待;由于有自动加1的功能,故又称为计数器;PC是不可以访问的;有自己独特的变化方式;它的变化轨迹决定了程序执行的流程。DPTR可以作为16位寄存器对待,也可以作为两个8位寄存器对待;DPTR是可以访问的。指令寄存器IR、指令译码器及控制逻辑指令寄存器IR是用来存放指令操作码的专用寄存器图2--6指令寄存器和指令译码器
定时控制逻辑电路产生一系列定时控制信号,控制计算机的各组成部件进行相应的工作,执行指令。
2.3.2运算器运算器主要用来实现对操作数的算术逻辑运算和位操作注:A--arithmetic运算器算术逻辑运算单元ALU累加器ACC(A)B寄存器程序状态标志寄存器PSWBCD码运算修正电路算术逻辑运算单元ALU(图2--7)算术逻辑运算单元ALU算术逻辑运算单元ALU算术/逻辑运算可完成的操作:①带进位和不带进位的加法、减法及8位数的乘、除法运算;②逻辑运算AND、OR和XOR;③增量或减量;④位置位、位复位和位取反等;⑤左移位、右移位;⑥半字节交换;⑦BCD码运算修正。累加器A累加器是CPU中使用最频繁的一个寄存器,简称ACC或A寄存器。其作用为:①累加器A是ALU单元的输入之一,又是ALU运算结果的存放单元。
②CPU中的数据传送大多都通过累加器,故又相当于一个数据的中转站。在CPU中与它打交道的部分有:程序存储器ROM中的常数“MOVCA,@A+DPTR”、“MOVCA,@A+PC”;B寄存器B寄存器在乘法和除法指令中作为ALU的输入之一。B寄存器可以作为内部RAM中的一个单元来使用。程序状态字寄存器(PSW)
(ProgramStatusWord)
CYACF0RS0OVPRS1PSW.7PSW.0▼CY(PSW.7)进位/借位标志位。若ACC在运算过程中发生了进位或借位,则CY=1;否则=0。它也是布尔处理器的位累加器,可用于布尔操作。▼AC(PSW.6)半进位/借位标志位。若ACC在运算过程中,D3位向D4位发生了进位或借位,则CY=1,否则=0。机器在执行“DAA”指令时自动要判断这一位,我们可以暂时不关心它。▼F0(PSW.5)可由用户定义的标志位。PSW.6PSW.5程序状态字寄存器(PSW)
CYACF0RS0OVPRS1PSW.7PSW.0RS1,RS0=01则选择了工作寄存器组
1区R0~R7分别代表08H~0FH单元。RS1,RS0=10则选择了工作寄存器组
2区R0~R7分别代表10H~17H单元。RS1,RS0=11则选择了工作寄存器组
3区R0~R7分别代表18H~1FH单元。PSW.4PSW.3RS1,RS0=00则选择了工作寄存器组
0区R0~R7分别代表08H~0FH单元。片内RAM前32个单元(00H—1FH)是工作寄存器区
(由PSW中的RS1,RS0决定)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区R0R2R1R3R4R5R6R707H02H01H00H06H04H05H03H08H1FH工作寄存器区3工作寄存器区2工作寄存器区1工作寄存器区0程序状态字寄存器(PSW)
CYACF0RS0OVPRS1PSW.7PSW.0▼OV(PSW.2)溢出标志位。
OV=1时特指累加器在进行带符号数(-128—+127)运算时出错(超出范围);OV=0时未出错。▼PSW.1未定义。▼P(PSW.0)奇偶标志位。
P=1表示累加器中“1”的个数为奇数
P=0表示累加器中“1”的个数为偶数
CPU随时监视着ACC中的“1”的个数,并反映在PSW中PSW.2PSW.12.3.3时钟电路及CPU的工作时序时钟电路:产生单片机工作所需要的时钟信号时序:是指令执行中各信号之间的相互关系。时钟电路在80C51单片机内带有时钟电路,因此,只需要在片外通过XTAL1和XTAL2引脚接入定时控制元件(晶体振荡器和电容),即可构成一个稳定的自激振荡器。在80C51芯片内部有一个高增益反相放大器,在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容。时钟电路1.2~12MHz0~40MHz图2-880C51单片机的时钟电路时钟电路如图2--9(b)所示,用晶振和电容构成谐振电路。C1和C2虽然没有严格要求,通常选择在10~30pF左右。在设计电路板时,晶振、电容等均应尽可能靠近芯片,以减小分布电容,保证振荡器振荡的稳定性。当用电感或陶瓷谐振器作定时控制元件时,也是用电感或陶瓷谐振器构成谐振电路。此时的电容C1、C2在40pF±10pF。时序定时单位
80C51的时序定时单位节拍:最小单位,一个晶振周期状态:一个状态包含两个节拍机器周期:80C51采用定时控制方式,因此它有固定的机器周期。是振荡脉冲的12分频指令周期:执行一条指令所需要的时间称为指令周期。80C51的指令周期根据指令的不同,可包含有一、二、四个机器周期。计算当振荡脉冲频率为l2MHz时,一个机器周期为:1μs当振荡脉冲频率为6MHz时,一个机器周期为:为2μs80C51指令时序单字节单机器周期指令单字节双机器周期指令单字节则均为四机器周期的(乘除指令)双字节单机器周期指令双字节双机器周期指令三字节指令都是双机器周期的图2--10所表示的是几种典型单机器周期和双机器周期指令的时序。图2-1080C51的取指/执行时序2.4存储器结构和地址空间80C51单片机系列的存储器采用的是哈佛(Harvard)结构片内驻留了一定容量的程序存储器和数据存储器及众多的特殊功能寄存器外部存储器扩展能力,寻址范围分别可达64KB,寻址和操作简单方便。2.4存储器结构和地址空间内部程序存储器外部程序存储器内部数据存储器外部数据存储器片内外统一64K程序存储器128字节内部数据存储器64K外部数据存储器或扩展I/O物理上分逻辑上分存储器思考问题程序放何处?数据存在何处?在何处进行处理?可寻址片内RAM256字节(包括位及SFR)
(00-FFH),可寻址片外RAM64K字节
(0000H—FFFFH);可寻址片外ROM64K字节
(0000H—FFFFH);片内FlashROM4K字节
(000H—FFFH);FFFFH0000H可寻址片外RAM
64K字节FFFFH1000H可寻址片外ROM
60K字节FFFH000H可寻址片内或片外4K字节7FH00H片内RAM
128字节FFH80H存储器配置2.4.1程序存储器作用:用于存放经调试正确的应用程序和表格之类的固定常数大小:可扩展的地址空间为64KBEA引脚接高电平时,程序从片内程序存储器开始执行,当PC值超出片内ROM容量时,会自动转向片外程序存储器空间执行。EA引脚接低电平时,迫使系统全部执行片外程序存储器程序。程序存储器的某些单元被保留用于特定的程序入口地址2.4.1程序存储器7个特定地址被保留:复位或非屏蔽中断0000H外部中断00003H计时器T0溢出000BH外部中断10013H计时器T1溢出001BH串行口中断0023H计时器T2/T2EX下降沿002BH
在程序设计时,通常在这些中断入口处设置无条件转移指令,使之转向对应的中断服务程序段处执行。2.4.2数据存储器数据存储器(datamemory)由随机存取存储器RAM构成,用来存放随机数据。在80C51单片机中,数据存储器又分片内数据存储器(internaldatamemory)和片外数据存储器(enternaldatamemory)两部分。片内数据存储器(IRAM)最高地址只有8位,因而最大寻址范围为256个字节。存储器配置(片内RAM)片内RAM
128字节(00H—7FH)SFR分布在80H-FFH其中92个位可位寻址80HFFH所有的RAM区(包括位寻址区、工作寄存器区)都可以用于存放数据,故也称为数据缓存寄存器00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区51系列
128字节片内RAM前32个单元是工作寄存器区(00H—1FH)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区存储器配置(片内RAM)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区R0R2R1R3R4R5R6R707H02H01H00H06H04H05H03H08H1FH工作寄存器区3工作寄存器区2工作寄存器区1工作寄存器区00FH10H17H18H片内RAM前32个单元是工作寄存器区(00H—1FH)存储器配置(片内RAM)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区片内RAM中有128个可按位寻址的位。
位地址:00H—7FH
分布在:20H—2FH单元存储器配置(片内RAM)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区27H22H21H20H26H24H25H23H28H2FH单元地址07060504030201000F0E0D0C0B0A090817161514131211101F1E1D1C1B1A191827262524232221202F2E2D2C2B2A292837363534333231303F3E3D3C3B3A393847464544434241407F7E7D7C7B7A7978位地址总共128个可按位寻址的位片内RAM中有128个可按位寻址的位。
位地址:00H—7FH
分布在:20H—2FH单元存储器配置(片内RAM)堆栈:
在片内RAM中,常常要指定一个专门的区域来存放某些特别的数据,它遵循顺序存取和后进先出(LIFO/FILO)的原则,这个RAM区叫堆栈。堆栈指针寄存器SP(StackPointer):总是指向栈顶,压栈时先(SP)+1然后数据进栈;弹栈时数据先出栈然后(SP)-1。功用:1)子程序调用和中断服务时CPU自动将当前PC
值压栈保存,返回时自动将PC值弹栈。2)保护现场/恢复现场3)数据传输堆栈及堆栈指示器(SP)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区
SP栈顶下一个进栈的数据将存在此数据进栈已经进栈的数据存放在此初始SP复位后SP=07H,数据进栈时:首先SP+1指向08H单元,第一个放进堆栈的数据将放进08H单元,然后SP再自动增1,仍指着栈顶……堆栈区由特殊功能寄存器堆栈指针SP管理
堆栈区可以安排在RAM区任意位置,一般不安排在工作寄存器区和可按位寻址的RAM区,通常放在RAM区的靠后的位置。从堆栈取出数据时:取出的数据是最近放进去的一个数据,也就是当前栈顶的数据。然后SP再自动减1,仍指着栈顶……00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区
SP栈顶当前要出栈的数据数据出栈SP-1指向下一个将要出栈的数据初始SP堆栈区由特殊功能寄存器堆栈指针SP管理
堆栈区可以安排在RAM区任意位置,一般不安排在工作寄存器区和可按位寻址的RAM区,通常放在RAM区的靠后的位置。从堆栈取出数据时:取出的数据是最近放进去的一个数据,也就是当前栈顶的数据。然后SP再自动减1,仍指着栈顶……00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区SP-1指向新的栈顶,也就是下一个将要出栈的数据数据出栈初始SP堆栈区由特殊功能寄存器堆栈指针SP管理
堆栈区可以安排在RAM区任意位置,一般不安排在工作寄存器区和可按位寻址的RAM区,通常放在RAM区的靠后的位置。51单片机特殊功能寄存器(SFR)▼特殊功能寄存器SFR(专用寄存器)专用于控制、选择、管理、存放单片机内部各部分的工作方式、条件、状态、结果的寄存器。▼不同的SFR管理不同的硬件模块,负责不同的功能——各司其职换言之:要让单片机实现预订的功能,必须有相应的硬件和软件,而软件中最重要的一项工作就是对SFR写命令(要求)。特殊功能寄存器区特殊功能寄存器除程序计数器PC和4个通用工作寄存器组外,其余所有的寄存器都在这个地址空间之内。
80C51系列中的80C51,共定义了21个特殊功能寄存器,其名称和字节地址列于表23中。80C52中,除上述80C51的21个之外,还增加了5个特殊功能寄存器,共计26个。除此而外,其它地址访问无效。特殊功能寄存器(SFR)名称和地址如书:表2-3序号标识符名称字节地址位地址ACC累加器0E0H0E0H~0E7HBB寄存器0F0H0F0H~0F7HPSW程序状态字0D0H0D0H~0D7HSP堆栈指针81HDPTR数据指针(DPH、DPL)83H、82HP0P0口80H80H~87HP1P1口90H90H~97H特殊功能寄存器(SFR)名称和地址8P2P2口0A0H0A0H~0A7H9P3P3口0B0H0B0H~0B7H10IP中断优先级控制0B8H0B8H~0BFH11IE中断允许控制0A8H0A8H~0AFH12TOMD定时器/计数器方式控制89H13TCON定时器/计数器控制88H88H~8FH14T2CON定时器/计数器2控制0C8H0C8H~0CFH15TH0定时器/计数器0(高位字节)8CH特殊功能寄存器(SFR)名称和地址16TL0定时器/计数器0(低位字节)8AH17TH1定时器/计数器1(高位字节)8DH18TL1定时器/计数器1(低位字节)8BH19TH2定时器/计数器2(高位字节)0CDH20TL2定时器/计数器2(低位字节)0CCH21RCAP2H定时器/计数器2自动再装载(高位字节)0CBH22RCAP2H定时器/计数器2自动再装载(低位字节)0CAH特殊功能寄存器(SFR)名称和地址23SCON串行口控制98H98H~9FH24SBUF串行数据缓冲器99H25PCON电源控制97H特殊功能寄存器在128B空间中的分布示于表2-4。从表中可以看出,在128B空间中存在着大片的空白,这为80C51系列功能的增加提供了极大的可能性。2.5布尔(位)处理器
CY:在布尔运算中,CY是数据源之一,又是运算结果的存放处,位数据传送的中心。
位寻址的RAM:RAM区中的0~127位(包含在20H~2FH单元内)。位寻址的寄存器:特殊功能寄存器(SFR)中的可以位寻址的位。位寻址的并行I/O口:并行I/O口中的可以位寻址的位。位操作指令系统:位操作指令可实现对位的置位、清0、取反、位状态判跳转、传送、位逻辑运算、位输入/输出等操作。2.680C51单片机的工作方式
共有复位、程序执行、低功耗以及编程和校验四种工作方式。1复位操作
2.6.1复位方式
复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。复位操作还对单片机的个别引脚信号有影响。例如在复位期间,ALE和PSEN信号变为无效状态,即ALE=l,PSEN=1。PC与SFR复位状态表寄存器复位状态寄存器复位状态PC0000HTCON00HA00HT2CON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0~P3FFHSCON00HIPXX000000BSBUFXXHIE0X000000BPCON0XXX0000BTMOD00H复位信号图2--13复位电路结构图复位方式上电自动复位按键电平复位和外部脉冲复位2.6.2程序执行方式由于复位后PC=0000H,因此程序执行总是从地址0000H开始的。2.6.3低功耗工作方
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校游泳池管理制度
- 学校自备水管理制度
- 学校饮水点管理制度
- 学生租赁车管理制度
- 宅急送服务管理制度
- 安全生产规管理制度
- 安监+风险管理制度
- 宋代酒专卖管理制度
- 定制化仓储管理制度
- 审核与评审管理制度
- 东莞市招聘事业编制教职员笔试真题2024
- 2025至2030中国保健食品产业发展趋势分析与未来投资战略咨询研究报告
- CJ/T 303-2008稳压补偿式无负压供水设备
- 自动扶梯考试试题及答案
- 2024-2025学年七年下学期期末测试卷(英语)人教版(含答案无听力部分)
- 2025年人教部编版语文五年级下册期末检测真题及答案(2套)
- 新疆昆玉经济技术开发区招聘考试真题2024
- 宠物店铺转让合同协议书
- T/CAEPI 70-2023水泥窑协同处置生活垃圾焚烧飞灰水洗除盐工艺技术要求
- 高支模质量问题的分析与整改
- 计算机体系结构计算题示例答案
评论
0/150
提交评论