单片机课程总结_第1页
单片机课程总结_第2页
单片机课程总结_第3页
单片机课程总结_第4页
已阅读5页,还剩5页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

1、第一章1. 单片微型计算机的原因 :它将组成微型计算机机所必须的部件(中央处理器 CPU、程序存贮器( ROM)、数据存贮器( RAM)、输入 / 输出( I/O )接口、定时 / 计数器、并行口、串行口、系统总线等)集成在一个超大规模集成电路芯片上。 再外加少许电子零件便可以构成一套简易的计算机系统,故称单片微型计算机。2. 单片机的特点 ,(1) 控制性能和可靠性高 (2) 体积小、价格低、易于产品化第二章1. 单片机的分类生产工艺有两种:一是HMOS工艺,二是 CHMOS工艺2. 在片内程序存储器的配置上,该系列单片机有四种形式,即掩膜EEPROM和 ROMLess(无片内程序存储器 )

2、ROM、EPROM、3.80C51 系列典型产品配置由表可见:( 1)增强型与基本型在以下几点不同:片内 ROM字节数:从 4K 增加到 8K;片内 RAM字节数:从 128 增加到 256;定时 / 计数器从 2 个增加到 3 个;中断源由 5 个增加到 6 个。4.CPU由运算器和控制器两部分电路组成。80C51单片机共有 4 个 8 位的 I/O 口(P0、P1、 P2 和 P3),P0 口为三态双向口,能带 8 个 TTL 门电路,P1、P2 和 P3 口为准双向口, 负载能力为 4 个 TTL门电路。80C51共有 5 个中断源,即外部中断 2 个,定时 / 计数中断 2 个,串行中

3、断 1 个。 7.80C51 引脚:(1)RST/ VPD(9 脚) : RST 即为 RESET, VPD为备用电源 , 所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚出现持续两个机器周期的高电平,就可以实现复位功能。( 2)EA*/ VPP( 31 脚) : 为访问外部程序存储器控制信号 , 低电平有效。当 EA* 端保持高电平时,单片机访问片内程序存储器 4KB。若超出该范围时,自动转去执行外部程序存储器的程序。 当 EA*端保持低电平时, 无论片内有无程序存储器,均只访问外部程序存储器PSW的各状态位定义位 序PSW.7PSW.6PSW.5PSW.4PSW.3P

4、SW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/P(1)CY :进位标志位,在执行某些算术和逻辑指令时,可以被硬件或软件置位或清零。在算术运算中它可作为进位标志,在位运算中,它作累加器使用,在位传送、位与和位或等位操作中,都要使用进位标志位。(2) AC :辅助进位标志,进行加法或减法操作时,当发生低四位向高四位进位或借位时, AC由硬件置位,否则 AC位被置“ 0”。在进行十进制调整指令时,将借助 AC状态进行判断。(3) 用户标志位 F0:该位为用户自定义的状态标记, 用户根据需要可以用指令对其置位或清零,也可以用指令测试 F0 来控制程序的跳转。(4)RS1 和 RS0:

5、工作寄存器组选择控制位,该两位通过软件置“0”或“ 1”来选择当前工作寄存器组。RS1 RS0寄存器组片内RAM地址00第 0 组00H07H01第 1 组08H0FH10第 2 组10H17H11第 3 组18H1FH(5)OV:溢出标志位当执行算术指令时,由硬件置位或清零来指示溢出状态。在带符号的加减运算中, OV 1 表示加减运算结果超出了累加器 A 所能表示的符号数有效范围( 128 127),即运算结果是错误的,反之, OV0 表示运算正确,即无溢出产生。判断 1:在加(减)法中若 D6 位向 D7位有进位(借位),而 D7位不向更高位( CY)有进位(借位)时 OV位置 1;判断

6、2:在加(减)法中若D7 位向更高位( CY)有进位(借位),而 D6 位不向D7位有进位(借位)时OV位置1;无符号数乘法指令MUL的执行结果也会影响溢出标志,若置于累加器A 和寄存器 B 的两个数的乘积超过了 255,则 OV置 1,反之 OV置 0。由于乘积的高 8 位存放于 B 中,低 8 位存放于 A 中, OV置 0 则意味着只要从 A 中取得乘积即可,否则要从 BA寄存器对中取得乘积结果。在除法运算中, DIV 指令也会影响溢出标志,当除数为0 时, OV1,否则 OV0。(6) P :奇偶标志位每个指令周期由硬件来置位或清零用以表示累加器的个数的奇偶性,若累加器中1 的个数为奇

7、数则P1,否则 P0。A 中1程序计数器( PC)的位宽( 16bit )决定了单片机可访问的程序存储器的最大容量为 216 64KPC与 DPTR的异同点:相同点:1、都是与地址有关的16 位寄存器2、都是通过 P0(低)、 P2(高)口输出地址的。不同点:1、PC 对应程序存储器, DPTR对应数据存储器。PC输出与 ALE和 PSEN*有关; DPTR输出与 ALE、WR*、RD*有关。PC只能作为 16 位的寄存器, DPTR可以作为 16 位寄存器也可作为两个 8 位的寄存器PC不能用 MOV指令访问, DPTR是可以的。51 系列单片机的存储器还可以从物理结构上可以分为:片内、片外

8、程序存储器和片内、片外数据存储器 4 部分80C51的程序存储器中有些单元具有特殊功能,使用时应予以注意。其中一组特殊单元是 0000H0002H。系统复位后,( PC)=0000H,单片机从 0000H 单元开始取指令执行程序。如果程序不从 0000H 单元开始,应在这三个单元中存放一条无条件转移指令,以便直接转去执行指定的程序。还有一组特殊单元是 0003H002AH。共 40 个单元,这 40 个单元被均匀地分为五段,作为五个中断源的中断地址区。其中:0003H000AH 外部中断 0 中断地址区000BH0012H 定时器 / 计数器 0 中断地址区0013H001AH 外部中断 1

9、中断地址区001BH0022H 定时器 / 计数器 1 中断地址区0023H002AH 串行中断地址区中断响应后,按中断种类,自动转到各中断区的首地址去执行程序。因此在中断地址区中理应存放中断服务程序。但通常情况下,8 个单元难以存下一个完整的中断服务程序,因此通常也是从中断地址区首地址开始存放一条无条件转移指令,以便中断响应后,通过中断地址区,再转到中断服务程序的实际入口地址去。在实际应用中,常需在RAM区(位寻址区之后的30H 至 7FH共 80 个字节)设置堆栈。 80C51的堆栈一般设在30H7FH的范围内。栈顶的位置由SP寄存器指示。复位时 SP的初值为 07H(开始于 08H),在

10、程序初始化时可以重新设置。堆栈指针 SP, 8 位。它总是指向栈顶。80C51 单片机的堆栈常设在30H7FH这一段 RAM中。堆栈操作遵循“后进先出”的原则,入栈操作时,SP先加 1,数据再压入 SP指向的单元。出栈操作时,先将 SP指向的单元的数据弹出,然后,SP再减 1,这时 SP指向的单元是新的栈顶。可见, 80C51单片机的堆栈区是向地址增大的方向生成的(与常用的 80X86 微机不同);数据指针 DPTR, 16 位。用来存放 16 位的地址。它由两个 8 位的寄存器 DPH和DPL组成。间接寻址或变址寻址可访问片外的64KB范围的 RAM或 ROM数据。CPU时序一个机器周期包含

11、12 个晶振周期或 6 个时钟 ( 状态 ) 周期指令的执行时间称作指令周期(单、双、四周期)SP=07H,第一个入栈内容将写入08H单元;位寻址区第三章80C51的寻址方式有七种。即:寄存器寻址、直接寻址、寄存器间接寻址、立即寻址、基址变址寻址、相对寻址和位寻址寄存器间接寻址寄存器中的内容为地址,由该地址去取要操作的数据的寻址方式称为寄存器间接寻址基址变址寻址以一个基地址加上一个偏移量地址形成要操作数据地址的寻址方式称为基址变址寻址。一般传送指令一、 16 位传送这条指令的功能是将源操作数 data16(通常是地址常数) 送入目的操作数 DPTR 中。源操作数的寻址方式为立即寻址。例如:执行

12、指令 MOV DPTR, #1234H 后(DPH) =12H,(DPL) =34H。ADirectRiRn#data1. 通常源操作数与目的操作数寻址方式不相同(除direct 外);2. 寄存器寻址与寄存器间接寻址互不相通数据;特殊传送指令例 3.3 把外部数据存储器 2040H单元中的数据传送到外部数据存储器 2560H单元中去。解:MOV DPTR,#2040HMOVX A,DPTR;将 2040H单元的内容传送到 A 中 MOV DPTR,#2560HMOVXDPTR,A;将A 中的内容传送到2560H单元中注意:(1)堆栈是用户自己设定的内部RAM中的一块专用存储区,使用时一定先设

13、堆栈指针;堆栈指针缺省为SP=07H。(2)堆栈遵循后进先出的原则安排数据。(3)堆栈操作必须是字节操作,且只能直接寻址。将累加器A 入栈、出栈指令可以写成: PUSH/POP ACC或 PUSH/POP0E0H而不能写成: PUSH/POPA(4)堆栈通常用于临时保护数据及子程序调用时保护现场/ 恢复现场。(5)以上指令结果不影响程序状态字寄存器PSW标志。(除 POP ACC)3.4算术运算类指令(24 条)算术运算指令可以完成加、减、乘、除及自加1 和自减1等运算。这类指令多数以A 为目的操作数。5657进位(借位)标志 CY为无符号整数的多字节加法、减法、移位等操作提供了方便; 溢出标

14、志 OV 可方便的控制补码运算; 辅助进位标志 AC 用于 BCD 码运算。算术运算操作将影响 PSW 中的 OV、CY、AC 和P等。58位操作类指令位操作又称布尔操作,它是以位为单位进行的各种操作。位操作指令中的位地址有 4 种表示形式:直接地址方式(如, 0D5H);点操作符方式(如, 0D0H.5、PSW.5等);位名称方式(如, F0);伪指令定义方式(如, MYFLAG BIT F0)。第五章(一)汇编语句的种类指令语句(硬指令) , 伪指令语句(伪指令), 宏指令语句(宏指令)伪指令伪指令是汇编程序能够识别并对汇编过程进行某种控制的汇编命令。 它不是单片机执行的指令,所以没有对应的可执行机器码,汇编后产生的目标程序中不会再出现伪指令。1、起始地址设定伪指令ORG格式为:ORG 表达式2、汇编结束伪指令END格式为:END该指令的功能是结束汇编。4、字数据定义伪指令DW 标号: DW字数据表功能是从标号指定的地址单元开始,在程序存储器中定义字数据。该伪指令将字或字表中的数据根据从左到右的顺序依次存放在指定的存储单元中。应特别注意:16 位的二进制数, 高 8 位存放在低地址单元, 低 8 位存放在高地址单元。 例如:ORG1400HDATA: DW324AH,3CH 汇编后,

温馨提示

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

评论

0/150

提交评论