收藏 分享(赏)

微控制器原理课件.doc

上传人:buyk185 文档编号:5398542 上传时间:2019-02-28 格式:DOC 页数:64 大小:17.58MB
下载 相关 举报
微控制器原理课件.doc_第1页
第1页 / 共64页
微控制器原理课件.doc_第2页
第2页 / 共64页
微控制器原理课件.doc_第3页
第3页 / 共64页
微控制器原理课件.doc_第4页
第4页 / 共64页
微控制器原理课件.doc_第5页
第5页 / 共64页
点击查看更多>>
资源描述

1、 1第一章 PIC 系列单片机概述1.1 PIC 单片机简单介绍1.2 PIC单片机的特点PIC 是美国 Microchip 公司所生产的单片机系列产品型号前缀,其硬件系统设计简洁,指令系统设计精炼。它是最容易学、最容易掌握、最容易应用的单片机之一。(1)哈佛总线结构普通单片机-普林斯顿体系结构 其程序存储器和数据存储器统一编址,也就是两种存储器位于同一个逻辑空间里。其指令总线和数据总线是共用的即时分复用。PIC单片机采用哈佛体系结构 其程序存储器和数据存储器独立编址,也就是两种存储器位于不同逻辑空间里。 (MCS-51 采用哈佛体系结构,但他们与 CPU之间传递信息必须共用一条总线。 ) P

2、IC 单片机还采用哈佛总线结构 :及芯片内部将数据总线和指令总线分离,并且采用不同的宽度。如图 1-2(a)(2)指令字节化 指令字节和数据字节分别用不同的字节宽度代表。2(3)精简指令集(RISC)技术(单片机所能识别的所有指令的集合)PIC的指令系统或指令集约有 75条指令。MCS-51 有 111条。(4)寻址方式简单,寻址空间独立 寻找操作数的方式 PIC只有 4种即寄存器直接寻址、寄存器间接寻址、立即数寻址、和位寻址。 MCS-51 有 7种方式。PIC 程序、数据、堆栈各自采用独立的地址空间。(5)代码压缩率高,运行速度高,功耗低,驱动能力强。端口吸入电流:25mA,输出电流:20

3、mA 一般驱动能力 6070mA代码压缩率指相同程序存储器空间所能容纳有效指令的数量。例如 1KB 程序存储量空间, MCS-51 系列存放 500多条指令,而对 PIC系列单片机存放多达 1024条。(6)I2C 和 SPI串行总线结构 I2C :Inter Integrated Circuit SPI:Serial Peripheral Interface 分别是由 PHILIPS MOTOROLA 公司发明的两种串行总线技术,是在芯片之间实现同步串行数据传输的技术1.3 PIC18系列的内部结构31.4 几种常见的 PIC18 系列单片机45微控制器(单片机):将中央处理器 CPU、随机

4、存取存储器 RAM、只读存储器 ROM、输入/输出端口 I/O 等主要的计算机部件,都集成在一块集成电路芯片上,从而形成一部完整的微型计算机。微控制技术:以软件取代硬件并能提高系统性能的控制技术。八位微控制器:6第 2 章 PIC 体系结构与汇编语言编程2.1 PIC 的 WREG 寄存器782.2 PIC 文件寄存器除了 WREG 寄存器,PIC 还有其他的很多寄存器,都被称为数据存储器或文件寄存器。PIC 的文件寄存器的容量大小因芯片的不同而不同,从 32B 到几千字节不等,且数据 RAM都是 8 位宽。PIC 文件寄存器数据 RAM 分为两类:特殊功能寄存器(SFR)和通用寄存器(GP

5、RAM)。9101112131415162.4.2 影响标志位的运算指令172.5 PIC 数据格式和伪指令2.5.1 PIC 数据类型PIC 微控制器只有 8 位数一种数据类型,而且寄存器也是 8 位的。所有大于 8 位的数据在被 CPU 处理前都会被分解。181920212223第三章 分支、调用和时延循环3.1 分支指令和循环3.1.1 DECFSZ 指令与循环格式:DECFSZ fileReg,d指令说明:该指令,fileReg 中的内容自减 1,当其值为 0 时,程序计数器将跳过下一条指令继续执行。如果把 GOTO 指令放在该指令后面,就可以实现循环功能。3.1.2 BNZ 指令实现

6、循环 BNZ 指令的用法如下:即当零标志位为 0 时(此时文件寄存器 f 不等于 0) ,实现跳转。例 1 编写程序实现(a ):将 WREG 清零;(b): 将 WREG 加 3,执行 10 次,所得结果送入 PORTB 的 SFR。分别用 DECFSZ 和 BNZ 编程。(1) DECFSZ (2) BNZ 243.1.3 其他的条件转移指令必须指出的是,所有的条件转移指令都是短跳转,换而言之,目标地址都必须在程序计数器的 256B 的范围内。3.1.4 循环嵌套单个循环的最大计数值是 255。那如何实现循环次数大于 255 呢?循环嵌套能实现循环次数大于 255 次的循环。如例 2。25

7、3.1.5 无条件分支指令3.2 CALL 指令和栈3.2.1 CALL 指令263.2.2 PIC18 的栈和栈指针栈是 CPU 用来临时存放一些非常重要的信息的读写 RAM。这些信息通常是地址,也可以是数据。用于访问栈的寄存器被称为 SP(stack pointer,栈指针) 寄存器,PIC18 的栈指针是 5位的,其取值范围是 00H-1FH,它可以提供 32 个地址,每个地址是 21 位宽。如图 3-7 所示。当 PIC18 通电时,SP 寄存器的初始值为 0,也就是说,栈的地址 1 是用于栈的第一个地址,因此 SP 指向上一次使用的地址,这也意味着栈的地址 0 是不可用的,实际上,P

8、IC18 只有 31 个栈地址。3.2.3 如何访问 PIC18 的栈压栈 PUSH:把 CPU 的信息放入栈。出栈 POP:把栈信息取出来并传送到 CPU 寄存器。273.2.4 CALL 指令与栈的作用3.2.5 RCALL 指令RCALL 是一个 2B 的指令,这与 4B 的 CALL 指令不同。在保存 PC 到栈和执行 RETURN 指令方面,两者没有什么不同,唯一的不同在于,CALL 的目标地址可以是 PIC18 的 2MB 地址空间的任何一个,而 RCALL 的目标地址只有2KB 的范围。3.3 PIC18 的时延与指令流水线3.3.1 流水线技术影响时延精确性的两个因素:1.晶振

9、频率2.PIC 的设计(1) 哈佛结构(2)RISC 结构( 3)流水线技术, (见图 3-9)28流水线技术由于指令的重叠的读取和执行会带来分支代价,增加额外的指令周期。例如,当执行 BNZ 跳转指令时,BNZ 下面的指令已经被读取,但是当跳转条件成立时,PIC 不去执行 BNZ 下面的指令,而是从新读取跳转地址的指令,增加一个周期。即,BNZ 指令不跳转时,是单周期指令,跳转时则两个周期。大部分 PIC 指令都是单周期指令,也有些指令占用 2-3 个指令周期,如GOTO,BRA,CALL 和所有的分支指令。3.3.2 PIC 的指令周期的计算在 PIC18 里,一个指令周期有 4 个晶振周期组成,即:指令周期=4x 晶振周期3.3.3 PIC 时延的计算293.3.4 PIC 多级执行流水线30第 4 章 PIC I/O 端口编程4.1 PIC 端口内部结构

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 中等教育 > 职业教育

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报