单片机复习整理_第1页
单片机复习整理_第2页
单片机复习整理_第3页
单片机复习整理_第4页
单片机复习整理_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、精选优质文档-倾情为你奉上单片机复习整理第一章主要内容:单片机组成结构 1)内部数据存储区大小、结构,存储器组织结构 2)特殊功能寄存器 微型计算机基本结构:1、 并行总线:8位数据总线、16位地址总线及相应的控制总线,两个独立的地址空间。2、 三张图的作用;(一)(二)这些部分包括:1) 一个8位的微处理器(CPU)2) 片内数据存储器RAM(128B/256B), 用以存放读/写数据,如运算的中间结果、最终结果及显示的数据等。3) 片内程序存储器ROM/EPROM(4KB/8KB),用以存放程序、一些原始数据和表格。4) 四个8位并行I/O接口P0P3,每个口既可以用作输入,也可以用作输出

2、。l 两个定时器/计数器(P3.4、P3.5)l 两个外部中断源(P3.2、P3.3)l 一个全双工的串行I/O口(P3.0、P3.1)5)、片内振荡器和时钟产生电路XTAL1、XTAL2,用来为单片机提供脉冲。 (8051 单片机内部结构的简图P13)(三)引脚配置图3、程序状态字寄存器PSW:PSW共8位。程序状态字寄存器PSW用来存放运算结果的一些状态。程序在运行过程中,当执行加法、减法、十进制调整、带进位位逻辑左、右移位、对位操作时,通常会产生进位位、半进位位、溢出位等。有时程序的流向需要根据程序运行过程中位状态条件去执行,因此计算机的CPU内部都设置了一个程序状态寄存器,用来保存当前

3、指令执行后的状态,以供程序查询和判断。 l RS1(D4)、RS0(D3):工作寄存器组选择位。l OV(D2):溢出标志位。当进行算术运算时,若运算结果发生溢出,则OV=1,否则OV=0.l P(D0):奇偶标志位。用来判断累加器A中有奇数个1还是有偶数个1.4、控制器1) 程序计数器PC(程序指针):PC是专用16位寄存器,存放的是将要执行指令的地址,它决定了程序执行的流向。单片机上电工作时,PC指针指向程序存储器0000H单元,即单片机复位后PC=0000H。当程序顺序执行时,CPU每取出指令的一个字节,PC就自动加1,指向下一个字节;当执行中断服务、子程序调用、转移、返回时,把要转向的

4、地址送PC。2) 堆栈指针(SP):(先进后出) 用于保护断点和保护现场的存储区称为堆栈。SP用来存放堆栈地址,堆栈地址可以指向片内数据存储区128字节的任意位置。在8051单片机复位时,SP指向内部数据存储区07H,即堆栈区的栈底为07H。SP指针除了可以选用默认值07H外,也可以通过编程设定在内部RAM低128字节区域(如MOV SP,#45H;堆栈区的栈底设为45H)。编程设定堆栈区时,要防止堆栈区与内部数据存储区的数据冲突。(可能简答) 堆栈指针(Stack Pointer,SP)是指在片内RAM的l28B(52子系列为256B)空间中开辟的堆栈区的栈顶地址,并随时跟踪栈顶地址变化。

5、堆栈是按先进后出的原则存取数据的,开机复位后,单片机栈底地址为07H。 3) 数据指针DPTR:数据指针DPTR是一个16位寄存器。通常用于指向外部数据存储区64KB范围内任意地址,以便对外部数据存储区进行读写操作。它可以对64KB的外部数据存储器和I/O进行寻址,DPTR可分为高8位数据指针寄存器(DPH)和低8位数据指针寄存器(DPL),地址分别为83H和82H。5、程序存储器(ROM)为只读存储器,ROM所存数据稳定,断点后所存数据也不会改变;其结构较简单,读出较方便,因而常用于存放编好的用户程序和常数。程序存储器以16位的程序计数器PC作为地址指针,故寻址空间为64KB。片内有4KB的

6、ROM空间,地址范围0000H0FFFH。片外可扩展60KB程序存储空间,地址范围1000HFFFFH。 程序存储器用于存放编好的程序或表格常数。51子系列片内有4KB ROM,52子系列片内有8KB ROM,二者片外地址线均为16位,最多可扩展64KB ROM,片内片外统一编址。 若EA端保持低电平,则所有取指令操作均在片外程序存储器中进行,0000H地址在片外。 若EA端保持高电平,0000H地址在片内,所有取指令操作均在片内程序存储器中进行。 在程序存储器的开始部分,定义了一段具有特殊功能的地址段,用作程序起始和各种中断的入口。 6、数据存储器RAM为随机读写存储器,RAM存储单元的内容

7、可按需随意取出或存入。这种存储器在断电时将丢失其存储内容,主要用于存放运算的中间结果和现场检测的数据等。 8051内部RAM分为两个区:其一是数据存储区RAM有128个单元,可读写数据,地址空间为00HFFH(低128个单元(00H7FH)的内部数据RAM块)。其二是专用寄存器区,用来存放单片机的21个特殊功能寄存器,地址空间为80HFFH。(高128个单元(80H0FFH)的专用寄存器SFR块。)l 通用寄存器(工作寄存器区):00H1FH为通用寄存器区,共32个单元。l 位寻址区:20H2FH为位寻址区,共16个单元。16个单元共128位,位地址00H7FH。l 当单片机内部RAM不够用时

8、,可扩展外部RAM 但由于8051单片机的地址总线16根,所以最多可外扩展216=65536=64KB,地址范围0000HFFFFH。llll7、特殊功能寄存器区(最核心的部分) 特殊功能寄存器符号在内部RAM的地址位地址功能位符号地址*ACCE0HACC.7ACC.0E7HEOH累加器,暂存数据*BF0HB.7B.0F7HF0H寄存器*PSWD0HPSW.7PSW.0D7HD0H程序状态字SP81H堆栈指针DPH83H数据指针高8位DPL82H数据指针低8位*P080HB0.7B0.087H80HI/O端口,P0口*P190HB1.7B1.097H90HI/O端口,P1口*P2A0HB2.7

9、B2.0A7HA0HI/O端口,P2口*P3B0HB3.7B3,.0B7HB0HI/O端口,P3口*IPB8HIP.7IP.0BFHB8H中断优先控制器*IEA8HIE.7IE.0AFHA8H中断允许控制器TMOD89H定时器方式选择*TCOM88HTCON.7TCON.08FH88H定时器控制寄存器TL08AH定时器T0低8位TH08CH定时器T0高8位TL18BH定时器T1低8位TH18DH定时器T1高8位PCON87H电源控制及波特率选择*SCON98HSCON.7SCON.09FH98H串行口控制寄存器SBUF 99H串行口数据缓冲器特殊功能寄存器的字节寻址:对专用寄存器只能使用直接寻

10、址方式,在指令中可 写成寄存器符号或单元地址形式。 MOV PSW,#01H or MOV 0D0H,#01H 8、单片机的引脚组成。9、单片机专用控制线:单片机有四根专用控制线,用来完成单片机复位控制、外部程序存储器读控制、地址锁存允许控制及外部程序存储器访问控制l RST(9脚):RST为复位信号输入引脚。单片机通电或按下复位键时,利用电容充电原理在RST引脚产生两个机器周期(24个时钟周期)以上的高电平,完成一次复位操作。 复位电路有上电自动复位电路和按键手动复位电路两种方式。 上电自动复位电路 上电自动复位是通过外部复位电路的电容充电来实现的,该电路通过电容充电在RST引脚上加了一个高

11、电平,高电平的持续时间取决于RC电路的参数。 按键手动复位电路 按键手动复位是通过按键实现人为的复位操作。 l PSEN(29脚):外部程序存储器的读选通信号。当访问外部ROM时,产生负脉冲作为外部ROM的选通信号。l (30脚):ALE是地址锁存允许信号。单片机外接时钟电路后自然产生,输出信号的频率为时钟振荡频率的1/6。一个机器周期两次,高电平有效。在防问外部存储器时,该信号上升沿在S1P2期间将P0口送出的低8位地址信息锁存在外接锁存器输出端并维持至S4P2期间即ALE再次变为高电平前。PROG是对8751内部EPROM编程时的编程脉冲输入端。l EA/VPP(31脚):访问外部程序存储

12、器控制信号。若单片机内部有程序存储器,则EA必须接高电平。若单片机内部无程序存储器(如8031单片机),硬件连接时应将EA接地。对于带有EPROM的单片机,在EPROM编程期间,该脚用于施加21V的编程电压Vpp。lll (完整总线图在P30)l 思考与练习:1、8051系列单片机的存储器空间是如何划分的?各自的地址空间是多少?如何能正确对程序存储器、数据存储器操作?如何能正确对片内、片外数据存储器操作?2、简答:单片机的最小系统。第二章:基本I/O应用 软件延时子程序设计应用 1 一般来说,I/O接口电路应有一下功能:l 数据缓冲l 信号变换l 电平转换l 传送控制命令和状态信息2、输入输出

13、接口的工作方式 1.无条件传送方式:用这种方式传送数据时,可认为外围设备随时处于准备就绪状态。CPU要输入数据时,只要执行输入数据的指令就可输入所需信息。3、汇编语言的指令分析。 1.汇编语言的指令类型:l 基本指令:即指令系统中的指令。它们都是机器能执行的指令,每一条指令都有对应的机器码,共有110条。l 伪指令:汇编时用于控制汇编的指令。它们都是机器不执行的指令,无机器码,常用7条。 2.伪指令介绍:l ORG:汇编起始地址。用来说明以下程序段编译后在程序存储器中存放的起始地址。l EQU:赋值指令给变量标号赋予一个确定的数值。利用循环指令操作,设计一个循环程序,达到时间延时的目的。观看延

14、时程序名的DELAY.ASM DELAY: MOV R6,#256DELAY1: MOV R7,#250 DJNZ R7,$ DJNZ R6,DELAYSJMP $思考:如果写成子程序形式,应该如何修改?如果嵌入到程序中,应该如何修改?void delayms(uint xms) uint m,n; for(m=xms;m>0;m-) for(n=110;n>0;n-); 第三章:中断 1)单片机的中断源 2)几个中断源的中断响应过程 3)中断服务程序初始化 2中断方式 (1) 外部中断外部中断是指从单片机外部引脚INT0(P3.2)和INT1(P3.3)输入中断请求信号的中断,即

15、外部中断源有两个。如输入/输出的中断请求、实时事件的中断请求、掉电和设备故障的中断请求都可以作为外部中断源,从引脚INT0和INT1输入。外部中断请求和有电平触发和跳变(边沿)触发两种触发方式。这两种触发方式可以通过对特殊功能寄存器TCON编程来选择。 (2) 内部中断内部中断是单片机芯片内部产生的中断。MCS-51单片机(51子系列)的内部中断有定时/计数器T0和T1的溢出中断,串行口的发送/接收中断。CPU中断响应过程:(简答)1) 保护断点CPU响应中断后,执行一条中断系统提供的LCALL指令,与软件中调用子程序执行的LCALL指令一样,即把程序计数器PC的内容(CPU要执行的下一条指令

16、地址)压入堆栈保护,并将该中断源对应的中断服务程序入口地址送入PC。2) 转入中断服务程序入口如CPU响应外部中断0中断申请后,即将要执行的指令地址压入堆栈保护,然后赋值(PC)=0003H,以转入外部中断0的入口处3) 执行中断服务程序(用户程序安排)第四章:定时器 考点定时、计数工作原理,定时器工作方式、定时器初始化、定时器应用 1、定时、计数工作原理工作方式寄存器TMOD:字节地址89H。用于设定定时/计数器T0、T1的工作方式,低四位用于T0,高四位用于T1。1) GATE门控位。该位用来设定时/计数工作受内部TR0控制还是收内部TR0和外部中断引脚INT0共同控制。GATE=0,定时/计数工作受内部TR0控制。由软件编程TR0=

温馨提示

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

评论

0/150

提交评论