(带图纸和文档)田老师的pic单片机教案单片机资料
收藏
资源目录
压缩包内文档预览:
编号:21243243
类型:共享资源
大小:5.70MB
格式:ZIP
上传时间:2019-07-31
上传人:QQ24****1780
认证信息
个人认证
王**(实名认证)
浙江
IP属地:浙江
30
积分
- 关 键 词:
-
图纸
以及
文档
老师
pic
单片机
教案
资料
- 资源描述:
-
(带图纸和文档)田老师的pic单片机教案单片机资料,图纸,以及,文档,老师,pic,单片机,教案,资料
- 内容简介:
-
第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 第一章 单片机结构原理第一章 单片机结构原理 1.1单片机概述 1.2 PIC单片机基本结构及信号引脚 1.3常用存储器 1.4 时钟电路与时序 1.5复位、唤醒与看门狗功能 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.1 单片机概述 微型计算机微型计算机是一种以电子器件为基础,可以接受 输入信息,并能够对各种输入的数字化信息进行算术 和逻辑运算,最后产生输出的电子设备。 是一种以电子器件为基础,可以接受 输入信息,并能够对各种输入的数字化信息进行算术 和逻辑运算,最后产生输出的电子设备。 微型计算机微型计算机既有快速运算能力,又有极强逻辑判 断能力和大容量存储功能,它是 既有快速运算能力,又有极强逻辑判 断能力和大容量存储功能,它是20世纪人类最卓越的 科学发明之一。 世纪人类最卓越的 科学发明之一。 单片微型计算机单片微型计算机就是将就是将CPU、RAM、ROM、定 时 、定 时/计数器和多种接口都集成到一块集成电路芯片上的 微型计算机。 计数器和多种接口都集成到一块集成电路芯片上的 微型计算机。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.1 单片机概述 单片机的应用单片机的应用 (1)单片机在仪器仪表中的应用(1)单片机在仪器仪表中的应用 (2)单片机在机电一体化中的应用)单片机在机电一体化中的应用 (3)单片机在智能接口和多机系统中的应用)单片机在智能接口和多机系统中的应用 (4)单片机在生活中的应用)单片机在生活中的应用 (5)微处理功能)微处理功能 (6)通讯)通讯 (7)军事(7)军事 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.1 单片机概述 1.1.1二进制数和编码二进制数和编码 一、计算机中的二进制一、计算机中的二进制 二进制的优点:二进制的优点:(1)简单可行。(1)简单可行。 (2)运算规则简单。(2)运算规则简单。 (3)适合逻辑运算。(3)适合逻辑运算。 二进制主要法则: 0+0=01+0=1 0+1=1 1+1=10 0*0=0 1*0=0 0*1=0 1*1=1 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.1 单片机概述 1、二进制转换成十进制 一个十进制数是以10的位权关系来转化的, 同理一个二进制数是以2的位权关系来转化的。 (1010)2=123+022+121+020 =8+0+2+0=(10)10 2、十进制转化成二进制 采取除以2取余数。采取除以2取余数。 2 2 6 余 0 (最低位) 2 1 3 余 1 2 6 余 0 2 3 余 1 2 1 余 1 (最低高) 0 取值顺序 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.1 单片机概述 3、十六进制3、十六进制 在计算机程序除了使用二进制表示数字之外,十六进 制数,也经常用到。在这种进制中,每一位数字表 示十六的幂数。 在计算机程序除了使用二进制表示数字之外,十六进 制数,也经常用到。在这种进制中,每一位数字表 示十六的幂数。 16个数字字符,016个数字字符,09,A ,B ,C ,D ,E ,F。9,A ,B ,C ,D ,E ,F。 4、二进制转换成十六进制4、二进制转换成十六进制 按4位进行分组,每组对应一个十六进制数:按4位进行分组,每组对应一个十六进制数: ( 0110 1110 1101 0101)2= ( 6 E D 5 ) 16 6 E D 5 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.1 单片机概述 二、计算机中的字符编码二、计算机中的字符编码 信息编码是对输入到计算机中的各种非数值型 数据用二进制数进行编码的方式。常用的编码方式 有以下几种: 信息编码是对输入到计算机中的各种非数值型 数据用二进制数进行编码的方式。常用的编码方式 有以下几种: 1、 二1、 二十进制编码十进制编码 二二十进制编码也称为BCD码。这是一种用4位 二进制数来表示一位十进制数的编码方式。它貌似 二进制,实为十进制。这种编码形式比较便于人们 的识别和转换,可以简化人机联系。 十进制编码也称为BCD码。这是一种用4位 二进制数来表示一位十进制数的编码方式。它貌似 二进制,实为十进制。这种编码形式比较便于人们 的识别和转换,可以简化人机联系。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.1 单片机概述 2、ASCII码2、ASCII码 计算机最常用的字符编码是 ASCII码。 ASCII码用7位二进制代码来表示,共有128个 字符,其中34个控制符,94个可见字符。 计算机最常用的字符编码是 ASCII码。 ASCII码用7位二进制代码来表示,共有128个 字符,其中34个控制符,94个可见字符。 ASCII码的最高位用做奇偶校验位,用 来检验代码在传输过程种是否出现错误。 ASCII码的两个次高位主要用来表示控制字符 ASCII码的最高位用做奇偶校验位,用 来检验代码在传输过程种是否出现错误。 ASCII码的两个次高位主要用来表示控制字符。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.1 单片机概述 1.1.2单片机工作原理简述 1.单片机的工作特点 (1)存储器ROM和RAM的相互独立 (2)采用面向控制的指令系统 (3)输入/输出端口的强大功能 (4)品种系列化 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.1 单片机概述 2、单片微型计算机系统的组成2、单片微型计算机系统的组成 单片微型计算机系统的组成与通用计算机 的组成基本相同,都是由硬件系统和软件系 统构成。 单片微型计算机系统的组成与通用计算机 的组成基本相同,都是由硬件系统和软件系 统构成。 硬件(Hardware):硬件(Hardware):是构成单片机的所有实 体部件,好比是人的躯体。它分为五大功能 部件,即运算器、控制器、存储器 (Memory)、输入(Input)设备和输出 (Output)设备。 是构成单片机的所有实 体部件,好比是人的躯体。它分为五大功能 部件,即运算器、控制器、存储器 (Memory)、输入(Input)设备和输出 (Output)设备。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.1 单片机概述 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.1 单片机概述 1.1.3 PIC单片机的主要特点 1 哈佛总线结构 2 流水线结构运行速度快 3 寻址方式简单寻址空间独立 4 精简指令RISC技术 5 低功耗和负载的能力强 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.2 PIC单片机基本结构及信号引脚 1.2.1 PIC单片机内部基本结构 1PIC16F87X系列单片机的分类 PIC16F87X系列单片机是PIC大家庭中的一个分 支,包括:16F870、16F871、16F872、16F873、 16F874、16F876和16F877。其中1998年推出的是 16F873、16F874、16F876和16F877;1999年推出的是 16F870、16F871、和16F872。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.2 PIC单片机基本结构及信号引脚 1.2.1 PIC单片机内部基本结构 2PIC16F87X系列单片机概述 PIC16F87X系列单片机是一种具有FLASH程序存 储器的8位COMS单片机,品种有28引脚采用双列直 插和表面封装的16F870、16F872、16F873、和 16F876 四种型号及40引脚采用双列直插和表面封装 等3种封装形式的16F871、16F874、16F877。它们 属于PIC单片机系列的中级产品,可以满足不同的 应用要求。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 表1-1 PIC16F87X系列单片机功能配置 型号 功能 PIC16 F870 PIC16F8 71 PIC16 F872 PIC16 F873 PIC16F8 74 PIC16 F876 PIC16F8 77 工作频率DC-20DC-20DC-20DC-20DC-20DC-20DC-20 Flash存储 器/B 2K1 4 2K14 2K1 4 4K1 4 4K14 8K1 4 8K14 RAM/B128128128192192368368 EEPROM/B646464128128256256 中断/个10111013141314 I/O端口 A、B、 C A、B、C、 D、E A、B、 C A、B、 C A、B、C、 D、E A、B、 C A、B、C、 D、E 定时器/个3333333 A/D转换通 道/个 5855858 CCP模块/ 个 1112222 串行通讯 模块 USARTUSART无USARTUSARTUSARTUSART 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.2 PIC单片机基本结构及信号引脚 1.2.1 PIC单片机内部基本结构 3PIC16F87X系列单片机的内部结构 PIC16F87X系列单片机是一种高速、低功耗、功能齐全的微 处理芯片,内部含有 系列单片机是一种高速、低功耗、功能齐全的微 处理芯片,内部含有FLASH ROM、RAM、EEPROM、I/O端 口、 端 口、A/D转换器、捕捉器转换器、捕捉器/比较器比较器/PWM、串行通信端口、定时 器 、串行通信端口、定时 器/计数器、中断控制器和中央处理器。它的结构基于文件寄存 器的概念,数据总线、数据存储器总线和程序存储器总线。其 中数据总线和数据存储器总线是 计数器、中断控制器和中央处理器。它的结构基于文件寄存 器的概念,数据总线、数据存储器总线和程序存储器总线。其 中数据总线和数据存储器总线是8位宽,程序存储器总线是位宽,程序存储器总线是14位 宽。集成于片内的数据存储器通过片内的 位 宽。集成于片内的数据存储器通过片内的8位总线与算术逻辑单 元 位总线与算术逻辑单 元ALU连接,可以直接通过内部总线传送信息,以寄存器方式 工作和寻址。 连接,可以直接通过内部总线传送信息,以寄存器方式 工作和寻址。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.2 PIC单片机基本结构及信号引脚 1.2.2 PIC单片机基本信号引脚 PIC16F87X系列单片机 的引脚分为两种:一种 为40脚(包括 871,874, 877这三种),如图1-3 所示;另一种为28脚 (包括 870,872,873, 876这四种) 系列单片机 的引脚分为两种:一种 为40脚(包括 871,874, 877这三种),如图1-3 所示;另一种为28脚 (包括 870,872,873, 876这四种) 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.2 PIC单片机基本结构及信号引脚 1.2.2 PIC单片机基本信号引脚 1、电源和地线引脚、电源和地线引脚 2、时钟振荡器输入、时钟振荡器输入/输 出引脚 输 出引脚 3、复位信号和编程输 入引脚 、复位信号和编程输 入引脚 4、输入、输入/输出端口和第 二、第三功能引脚 输出端口和第 二、第三功能引脚 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 PIC16F877单片机存储器构架 : 8K l4位FLASH程序存储器 5128位数据存储器RAM 2568位可掉电保护数据的EEPROM存储器模块 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 1.3.1 数据寄存器 存储器是单片机中一个 非常重要的部件,专门 用于存放指令、数据和 运算结果。存储器从使 用功能上来分,可分为 随机存储器 存储器是单片机中一个 非常重要的部件,专门 用于存放指令、数据和 运算结果。存储器从使 用功能上来分,可分为 随机存储器RAM (Random Access Memory)和只读存储 器 )和只读存储 器ROM(Read Only Memory)两类。)两类。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 1.3.1 数据寄存器 存储区的选择由状态寄存器STATUS的第六位RP1和第五位RP0决定。 RP1:RP0 区域寄存器地址 0 0 区0:000H 07FH 0 1 区1:080H 0FFH 1 0 区2:100H l7FH 1 1 区3:180H lFFH 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 1.3.2 程序存储器 PIC16F87X单片机内部配置了 8Kl4位的闪速( 87X单片机内部配置了 8Kl4位的闪速(FLASH)程 序存储器,可以很方便进行在 线擦除和烧写,寿命可达1000 次以上。 )程 序存储器,可以很方便进行在 线擦除和烧写,寿命可达1000 次以上。 PIC16F87X程序存储器具有 13位宽的程序计数器 87X程序存储器具有 13位宽的程序计数器PC。PC指 针所产生的13位地址最大可寻 址的程序存储器空间为8K,相 应的地址编码范围为0000H 。PC指 针所产生的13位地址最大可寻 址的程序存储器空间为8K,相 应的地址编码范围为0000H lFFFH。FFFH。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 1.3.2 程序存储器 为了对程序存储器进行 有效管理和使用,一般将 为了对程序存储器进行 有效管理和使用,一般将 PIC单片机的程序存储器 分成几个页面,如图所示 单片机的程序存储器 分成几个页面,如图所示. 分别用分别用“页页0”、“页页1”等表 示。 等表 示。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 1.3.2 程序存储器 程序计数器高8位PCLATH的Bit4-Bit3位构成程序存储器分页 的选择位,对应的地址空间如下: 程序计数器高8位PCLATH的Bit4-Bit3位构成程序存储器分页 的选择位,对应的地址空间如下: PCLATH Bit4:Bit3:PCLATH Bit4:Bit3: 0 0 页0:0000H 07FFH0 0 页0:0000H 07FFH 0 1 页l:0800H 0FFFH0 1 页l:0800H 0FFFH 1 0 页2:1000H 17FFH1 0 页2:1000H 17FFH 1 1 页3:1800H 1FFFH1 1 页3:1800H 1FFFH 程序存储器中有2个单元地址比较特殊,除了具备同其他 单元地址一样的普通用途外,还具有专门用途:0000H:用作 单片机系统的复位矢量;0004H:用作系统特殊模块的中断矢 量。 程序存储器中有2个单元地址比较特殊,除了具备同其他 单元地址一样的普通用途外,还具有专门用途:0000H:用作 单片机系统的复位矢量;0004H:用作系统特殊模块的中断矢 量。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 1.3.3专用寄存器SFR 1. 间接寻址寄存器INDF和FSR寄存器 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 1.3.3专用寄存器SFR 2. 程序状态寄存器STATUS; 表1-9 状态寄存器STATUS的各位功能标志 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 IPR RP1 RP0 TO PD Z DC C 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 程序状态寄存器STATUS 0: 执行加法(或减法)指令时,如果 最高位无进位(或借位); 1:执行加法(或减法)指令时,如果 最高位有进位(或借位)。 0: 执行加法(或减法)指令时,如 果低4位向高4位无进位(或借位); 1:执行加法(或减法)指令时,如果 低4位向高4位有进位(或借位)。 0: 算术或逻辑运算结果不为0; 1: 算术或逻辑运算结果为全0。 0: 选择数据存储器低位区:即区0(FSR的 BIT7=0)或区1(FSR的BIT7=1); 1:选择数据存储器高位区:即区2(FSR的 BIT7=0)或区3(FSR的BIT7=1)。 RP1、RP0 = 0 0 选中区0 RP1、RP0 = 0 1 选中区1 RP1、RP0 = 1 0 选中区2 RP1、RP0 = 1 1 选中区3 B7B6B5B4B3B2B1B0 IPRPR1RP0TOPDZDCC 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 1.3.3专用寄存器SFR 3程序计数器(PCL、PCLATH) 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 1.3.3专用寄存器SFR 4.端口寄存器PORTA-PORTE PIC16F877单片机有5个端口RA、RB、RC、RD和 RE,用于CPU与外界设备交换信息。与这5个端口 对应的是地址位于“区0”的5个端口寄存器,它们 分别是PORTA、PORTB、PORTC、PORTD和 PORTE,CPU与外界交换的信息在这些寄存器中 暂存。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 1.3.3专用寄存器SFR 5.选择寄存器(OPTION-REG) 选择寄存器(选择寄存器(OPTION-REG)是一个可读)是一个可读/写的写的8位寄存器 它的功能是用于配置 位寄存器 它的功能是用于配置TMR0/WDT预定标器、外部预定标器、外部INT中断、中断、 TMR0和端口和端口B的弱上拉等。的弱上拉等。 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 B7 B6 B5 B4 B3 B2 B1 B0 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 选择寄存器(OPTION-REG) 0: 由内部提供的指令周期信号 作为定时器TMR0时钟源。 1: 由T0CKI外部引部脚输入的 脉冲信号作为计数器TMR0时钟源 。 0: 外部时钟T0CKI上升沿触发 TMR0递增; 1: 外部时钟T0CKI下降沿触发 TMR0递增。 1:屏蔽端口B上拉电阻设置;0:允 许端口B上拉电阻设置,是否设置 还要依据各位的锁存的值。 TMR0比率WDT比率PS2 PS1 PS0 1:2 1:1 000 1:4 1:2 001 1:8 1:4 010 1:16 1:8 011 1:32 1:16 100 1:64 1:32 101 1:128 1:64 110 1:256 1:128 111 0: 分频器分配给TMR0; 1: 分频器分配给WDT。 0:外中断RB0/INT选择上升 沿触发; 1:外中断RB0/INT选择下降 沿触发。 B7B6B5B4B3B2B1B0 RBPUINTEDGTOCSTOSEPCFG3PCFG2PCFG1PCFG0 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.3常用存储器 1.3.3专用寄存器SFR 6.电源控制寄存器(PCON) 电源控制寄存器(PCON)是一个8位寄存器,但只有两位有效, 其余未用。 POR(B1):上电复位状态位.当B1=1,表示上 电复位没有发生;当B1=0,表示发生了上电复位。当发生 了上电复位后,必须用软件使B1置位。 BOR(B0):掉电复位状态位.当B0=1,表示没有发生掉电复位 现象;当B0=0,表现发生了掉电复位。当发生了掉电复位 后,必须用软件使B0置位。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 电源控制寄存器(PCON) 1 : 表 示 上 电 复 位 没 有 发 生 ; 0:表示发生了上电复位后,必须用软件使B1置位 。 1:表示没有发生掉电复位现象; 0:表示发生了掉电复位,当发生了掉电复位后,必须用软 件使B0置位。 未用 B7B6B5B4B3B2B1B0 PORBOR 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.4 时钟电路与时序 1.4.1振荡电路与时钟信号 单片机中的振荡器是为CPU提供定时信号的。工作方式: (1)LP方式:低功耗晶体振荡器方式; (2)XT方式:晶体陶瓷谐振器方式; (3)HS方式:高速晶体陶瓷谐振器方式; (4)RC方式:阻容振荡器方式。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.4 时钟电路与时序 1.4.1振荡电路与时钟信号 晶体振荡器陶瓷谐振器方式 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.4 时钟电路与时序 1.4.1振荡电路与时钟信号 RC振荡器 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 1.4 时钟电路与时序 1.4.2 PIC单片机指令时序 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 15复位、唤醒与看门狗功能 1.5.1复位及复位电路 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 15复位、唤醒与看门狗功能 1.5.2 唤醒与低电耗运行 休眠(SLEEP)方式与单片机的唤醒 单片机执行一条单片机执行一条SLEEP指令后,便进入了休眠(指令后,便进入了休眠(SLEEP)方式。)方式。 单片机系统的低功耗设计 (1)选择合适的模块)选择合适的模块 (2)选择合适的工作条件)选择合适的工作条件 (3)选择合适的振荡方式)选择合适的振荡方式 (4)合理处理)合理处理I/O管脚管脚 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 15复位、唤醒与看门狗功能 1.5.3 看门狗与系统的可靠性 监视定时器WDT是PIC单片机最具特色的 内容之一,定时计数脉冲是由芯片内专用的 RC振荡器产生。它的工作既不需要任何外部 器件,也与单片机的时钟电路无关。这样即 使单片机的时钟停止,WDT仍旧能继续工作 。 监视定时器WDT是PIC单片机最具特色的 内容之一,定时计数脉冲是由芯片内专用的 RC振荡器产生。它的工作既不需要任何外部 器件,也与单片机的时钟电路无关。这样即 使单片机的时钟停止,WDT仍旧能继续工作 。 第一章PIC系列单片机结构原理第一章PIC系列单片机结构原理 本章小节 1、了解有关二进制数和二进制编码 2、理解单片机的一般结构 3、掌握PIC16F87X单片机的内部基本结构: 4、了解PIC16F87X单片机的时钟电路、指令时 序和其他功能模块 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1指令系统概述 2.2字节操作指令 2.3位操作指令 2.4 简单程序设计 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.1 指令的表示方法 1机器指令的表示方法 指令用于规定计算机的基本操作。一台计算机所能 执行的指令集合就是它的指令系统。 指令用于规定计算机的基本操作。一台计算机所能 执行的指令集合就是它的指令系统。 指令共有两种表示方法,分别是机器语言表示方法 和汇编语言表示方法。不同种类的单片机有不同的一 套命令 指令共有两种表示方法,分别是机器语言表示方法 和汇编语言表示方法。不同种类的单片机有不同的一 套命令(即所谓即所谓“指令系统指令系统”)。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.1 指令的表示方法 1机器指令的表示方法 B13B0 操作码操作码操作数操作数 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.1 指令的表示方法 2汇编语言的表示方法 汇编语言是对机器语言的改进,它采用便于人们记 忆的一些符号(例如简化的英文单词)来表示操作码、 操作数和地址码等。通常把表示指令的符号称之为助 记符。 汇编语言是对机器语言的改进,它采用便于人们记 忆的一些符号(例如简化的英文单词)来表示操作码、 操作数和地址码等。通常把表示指令的符号称之为助 记符。 MOVF 20H,0 ;MOVF 20H,0 ; ANDLW 0FHANDLW 0FH MOVWF 21HMOVWF 21H 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.1 指令的表示方法 3.PIC16F87X单片机指令3.PIC16F87X单片机指令 PIC16F87X单片机采用精简指令集(RISC)结构,指令效率高, 功能强。它的指令为单字的宽字位(14)指令,由此生成的程 序代码短。指令条数少,仅有35条。 PIC16F87X单片机采用精简指令集(RISC)结构,指令效率高, 功能强。它的指令为单字的宽字位(14)指令,由此生成的程 序代码短。指令条数少,仅有35条。 (1)面向字节操作类(1)面向字节操作类 (2)面向位操作类(2)面向位操作类 (3)常数操作和控制类操作。(3)常数操作和控制类操作。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.2 PIC单片机指令的寻址方式2.1.2 PIC单片机指令的寻址方式 1寄存器间接寻址1寄存器间接寻址 所谓寄存器间接寻址指的是通过寄存器F0、 F4来实现。实际的寄存器地址放在F4的低5位中, 通过F0来进行间接寻址。 INDF不是物理上实际 存在的寄存器,而任何寻址INDF的指令都是以 FSR寄存器内容为地址的RAM单元中存放着参加 运算或操作的数据。 所谓寄存器间接寻址指的是通过寄存器F0、 F4来实现。实际的寄存器地址放在F4的低5位中, 通过F0来进行间接寻址。 INDF不是物理上实际 存在的寄存器,而任何寻址INDF的指令都是以 FSR寄存器内容为地址的RAM单元中存放着参加 运算或操作的数据。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.2 PIC单片机指令的寻址方式2.1.2 PIC单片机指令的寻址方式 1寄存器间接寻址1寄存器间接寻址 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.2 PIC单片机指令的寻址方式2.1.2 PIC单片机指令的寻址方式 2立即数寻址2立即数寻址 所谓立即寻址就是操作数在指令中直接给出。 通常把出现在指令中的操作数称之为立即数, 因此就把这种寻址方式称之为立即寻址。 所谓立即寻址就是操作数在指令中直接给出。 通常把出现在指令中的操作数称之为立即数, 因此就把这种寻址方式称之为立即寻址。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.2 PIC单片机指令的寻址方式2.1.2 PIC单片机指令的寻址方式 2立即数寻址2立即数寻址 立即数寻址立即数寻址 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.2 PIC单片机指令的寻址方式2.1.2 PIC单片机指令的寻址方式 3直接寻址3直接寻址 指令中操作数以其所在存储单元地址的形式 给出,就称之为直接寻址。这种方式是对任何 一寄存器直接寻址访问。 指令中操作数以其所在存储单元地址的形式 给出,就称之为直接寻址。这种方式是对任何 一寄存器直接寻址访问。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.2 PIC单片机指令的寻址方式2.1.2 PIC单片机指令的寻址方式 3直接寻址3直接寻址 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.2 PIC单片机指令的寻址方式2.1.2 PIC单片机指令的寻址方式 4位寻址4位寻址 这种寻址方式是对寄存器中的任一位(bit) 进行操作 这种寻址方式是对寄存器中的任一位(bit) 进行操作 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.3 指令符号的意义说明2.1.3 指令符号的意义说明 1.PIC汇编语言指令格式1.PIC汇编语言指令格式 PIC系列微控制器汇编语言指令与MCS51系列单片 机汇编语言一样,每条汇编语言指令由4个部分组成, 其书写格式如下: PIC系列微控制器汇编语言指令与MCS51系列单片 机汇编语言一样,每条汇编语言指令由4个部分组成, 其书写格式如下: 标号 操作码助记符 操作数1,操作数2;注释标号 操作码助记符 操作数1,操作数2;注释 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.1 指令系统概述 2.1.3 指令符号的意义说明2.1.3 指令符号的意义说明 2.指令符号的意义说明2.指令符号的意义说明 在PIC系列单片机指令中常把数据存储器RAM当作寄 存器来使用(处理)并用字母f(或F)表示。 在PIC系列单片机指令中常把数据存储器RAM当作寄 存器来使用(处理)并用字母f(或F)表示。 d 代表操作数的目标选择,定义d=0,结果存入W; d=1结果存入(文件)寄存器f,当使用汇编程序指令d缺 省时,默认d=1。b代表(文件)寄存器(8位)的位地址(0 d 代表操作数的目标选择,定义d=0,结果存入W; d=1结果存入(文件)寄存器f,当使用汇编程序指令d缺 省时,默认d=1。b代表(文件)寄存器(8位)的位地址(0 7取值)。如寄存器的8位为b7、b6b1、b0,若b=1 代表寄存器的第b1位。字母符号k代表立即数、常数和 数据标号。 7取值)。如寄存器的8位为b7、b6b1、b0,若b=1 代表寄存器的第b1位。字母符号k代表立即数、常数和 数据标号。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.2 字节操作 指令 PIC16F87X系列单片机PIC16F87X系列单片机字节操作 指令详解详解 见下面表格见下面表格 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.3 位操作 指令 PIC16F87X系列单片机PIC16F87X系列单片机位操作 指令详解详解 见下面表格见下面表格 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 表2-1 PIC16F87X单片机指令集表2-1 PIC16F87X单片机指令集 数据传送类指令数据传送类指令 指令助记符指令助记符功能简述功能简述周期周期14位指令字位指令字影响的状态位影响的状态位 MOLW k 立即数立即数k送入寄存 器 送入寄存 器W 1 110xx k k k k k k k k MOVWF fW送入送入f寄存器寄存器100 0000 1ffff ffff MOVFf,df送入送入f或或W100 1000dfff ffffZ SWAPF f,d f寄存器半字节交 换 寄存器半字节交 换 100 1110 dfff ffff ADDLWk W加立即数加立即数k,结 果送入 ,结 果送入W或或f 111 111xkkkk kkkk OV,C,DC, Z ADDWFf,d W加加f,结果送入,结果送入 W或或f 100 0111dfff ffff OV,C,DC, Z 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 算术操作类指令算术操作类指令 指令助记符指令助记符功能简述功能简述周期周期影响的状态位影响的状态位 DECF f,df减减1100 0011 dfff ffffZ DECFSZ f,df减减1,为,为0间跳间跳1(2)00 1011 dffff ffff INCF f,df加加1100 1010dfff ffffZ INCFSZ f,df加加1,为,为0间跳间跳1(2)00 1111 dfff ffff SUBLW k 立即数立即数k减减W结果 送入 结果 送入W或或f 111110xkkkkkkkk OV,C,DC, Z SUBWF f,d f减减W,结果送入 或 ,结果送入 或f 100 0010 dfff ffff OV,C,DC, Z 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 逻辑操作类指令逻辑操作类指令 指令助记符指令助记符功能简述功能简述周期周期14位指令字位指令字 影响的状态 位 影响的状态 位 ANDLW k 立 即 数 与立 即 数 与 W, 结果送入 , 结果送入W 1 11 1001 kkkk kkkk Z ANDWF f,d f与与W,结果送 入 ,结果送 入W或或f 100 0101dfff ffffZ CLRF ff清清0100 0001 1fff ffffZ CLRWW清清01 00 0001 0xxx xxxx Z COMF f,df取反取反100 1001 dfff ffffZ 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 IORLW k k 或或 W, 结 果 送入 , 结 果 送入W 1 11 1000 kkkk kkkk Z IORWF f, d f或或W,结果送 入 ,结果送 入W或或f 1 00 0100 dfff ffff Z RLF f,d f带进位带进位C循环 左移 循环 左移 100 1101dfff ffffC RRF f,d f带进位带进位C循环 右移 循环 右移 100 1100dfff ffffC XORLW k 立即数或立即数或W, 结果送入 , 结果送入W 1 11 1010 kkkk kkkk Z XORWF f,d f异或异或W,结果 送入 ,结果 送入W和和f 1 00 0110 dfff ffff Z 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 PDTO, 控制转移类指令控制转移类指令 指令助记符指令助记符功能简述功能简述周期周期14位指令字位指令字 影响的状 态位 影响的状 态位 CLRWDT 清 除清 除 WDT 定 时器 定 时器 1 00 0000 0110 0100 CALL k调用子程序调用子程序2 10 0 kkk kkkk kkkk GOTO k无条件跳转无条件跳转2 11 1000 kkkk kkkk 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 NOP空操作空操作1 00 0000 0xx 0000 OPTION 写写OPTION寄存 器 寄存 器 1 00 0000 0110 0010 RETFIE中断返回中断返回2 00 0000 0000 1001 DLINTD RETLW k 常 数 送常 数 送 W, 子 程序返回 , 子 程序返回 2 11 01xx kkkk kkkk RETURN子程序返回子程序返回2 00 0000 0000 1000 SLEEP进入休眠状态进入休眠状态1 00 0000 0110 0011 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 位操作类指令位操作类指令 指令助记符指令助记符功能简述功能简述周期周期14位指令字位指令字 影响的状态 位 影响的状态 位 BCF f,b 清除清除f寄存器的寄存器的b 位位 101 00bb bfff ffff BSF f,b置置f寄存器的寄存器的b位位101 01bb bfff ffff BTFSC f,b f寄存器的寄存器的b位为位为 0间距间距 1(2)01 10bb bfff ffff BTFSS f,b f寄存器的寄存器的b位产 为 位产 为0间距间距 1(2)01 11bb bfff ffff 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4.1 汇编语言程序设计知识 1汇编语言源程序的结构 汇编语言提供了一种不涉及实际存储器地 址和机器指令编码的编写源程序的有效方法。 我们需要掌握的是: 汇编语言的程序格式、语句格式、助记符、 伪指令。 程序的4种基本结构: 顺序、分支、循环和 子程序。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4 汇编语言程序设计 2.4.1 汇编语言程序设计知识 2PIC 汇编语言的程序流程图 (1)程序流程图常用的图形符号(1)程序流程图常用的图形符号 圆角矩形框为起始 /终止框,表示一个程序的开始或结束。圆角矩形框为起始 /终止框,表示一个程序的开始或结束。 矩形框为任务框,表示要处理的任务。矩形框为任务框,表示要处理的任务。 菱形框为判断框,表示要判断的因素,判断结果将导致程 序走入不同的分支。 菱形框为判断框,表示要判断的因素,判断结果将导致程 序走入不同的分支。 指向线为带有箭头的线段,表示程序的走向。指向线为带有箭头的线段,表示程序的走向。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4 汇编语言程序设计 2.4.1 汇编语言程序设计知识 2PIC 汇编语言的程序流程图 ((2)程序流程图的画法 顺序程序结构 顺序程序结构在流程图中表示为任务框一个一个地串行 连接。在计算机执行程序时表现为,从头至尾严格按照次序 一条语句一条语句地顺序执行,并且每一条语句均被执行一 遍。 (2)程序流程图的画法 顺序程序结构 顺序程序结构在流程图中表示为任务框一个一个地串行 连接。在计算机执行程序时表现为,从头至尾严格按照次序 一条语句一条语句地顺序执行,并且每一条语句均被执行一 遍。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4 汇编语言程序设计 2.4.1 汇编语言程序设计知识 2PIC 汇编语言的程序流程图 分支程序流程图 分支程序流程图包含 分支程序流程图 分支程序流程图包含1个判断框和两 个或两个以上的出口。从而形成程序的 个判断框和两 个或两个以上的出口。从而形成程序的 2个或多个分支个或多个分支. 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4 汇编语言程序设计 2.4.1 汇编语言程序设计知识 2PIC 汇编语言的程序流程图 循环程序流程图循环程序流程图 循环程序的结构包含以下4个组成部分:循环程序的结构包含以下4个组成部分: 循环初始化部分:为循环程序作准备。如循环变量设置, 即指定或定义一个循环变量作循环次数计数器或地址指针,并 给它设置一个初始值。 循环初始化部分:为循环程序作准备。如循环变量设置, 即指定或定义一个循环变量作循环次数计数器或地址指针,并 给它设置一个初始值。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4 汇编语言程序设计 2.4.1 汇编语言程序设计知识 2PIC 汇编语言的程序流程图 循环体:要求重复执行的程序段,即循环程序的主体部分。循环体:要求重复执行的程序段,即循环程序的主体部分。 循环控制部分:循环控制就是根据循环结束条件,判断是否 跳出循环。 循环控制部分:循环控制就是根据循环结束条件,判断是否 跳出循环。 结束部分:对循环结果进行分析、处理和保存。结束部分:对循环结果进行分析、处理和保存。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4 汇编语言程序设计 2.4.2 PIC 汇编语言的伪指令 用来编写汇编语言源程序的语句,主要是 指令助记符,其次就是伪指令。所谓伪指令就 是“假”指令的意思,不是单片机的指令系统中 的真实指令。伪指令与指令系统中的助记符的 不同之处是没有机器码与它对应。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4 汇编语言程序设计 2.4.2 PIC 汇编语言的伪指令 最常用的伪指令介绍 (1)INCLODE 1)INCLODE 功能: 读入外部源文件功能: 读入外部源文件 格式:INCLUDE 格式:INCLUDE 说明:用于把指定文件读入源程序中作为源程序代码的一部分。 文件名必须用双引号或尖括号给出,如果被指定文件非当前工 作目录下,则需要指令完整的路径。 说明:用于把指定文件读入源程序中作为源程序代码的一部分。 文件名必须用双引号或尖括号给出,如果被指定文件非当前工 作目录下,则需要指令完整的路径。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4 汇编语言程序设计 2.4.2 PIC 汇编语言的伪指令 最常用的伪指令介绍 (2)EQU (2)EQU 功能: 对标号赋值功能: 对标号赋值 格式: EQU 格式: EQU 说明:使说明:使 EQU 两端的两端的8位值相等,即给标号赋 予一个特定值或者说是给标号定义一个数值。 位值相等,即给标号赋 予一个特定值或者说是给标号定义一个数值。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4 汇编语言程序设计 2.4.2 PIC 汇编语言的伪指令 最常用的伪指令介绍 (3)#DEFINE (3)#DEFINE 功能:定义文本替换标号功能:定义文本替换标号 格式:#DEFINE格式:#DEFINE 说明:用于定义文本替换标号,在汇编时把源 代码中的 说明:用于定义文本替换标号,在汇编时把源 代码中的替换成替换成。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4 汇编语言程序设计 2.4.2 PIC 汇编语言的伪指令 最常用的伪指令介绍 (4)ORG (4)ORG 功能: 存放程序单元的起始地址功能: 存放程序单元的起始地址 格式:标号 ORG 格式:标号 ORG 说明:用于指定该伪指令后面的源程序存放的起始地 址,也就是汇编后的机器码目标程序在单片机的程序 存储器中开始存放的首地址。 说明:用于指定该伪指令后面的源程序存放的起始地 址,也就是汇编后的机器码目标程序在单片机的程序 存储器中开始存放的首地址。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4 汇编语言程序设计 2.4.2 PIC 汇编语言的伪指令 最常用的伪指令介绍 (5) END (5) END 功能:程序结束伪指令功能:程序结束伪指令 格式:END 格式:END 说明: 这条伪指令通知汇编器 MPASM结束对源程序(.ASM)的 汇编,即使在后面还有语句,也将不予继续汇编。 说明: 这条伪指令通知汇编器 MPASM结束对源程序(.ASM)的 汇编,即使在后面还有语句,也将不予继续汇编。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4.3 PIC 汇编语言程序设计基础 1设置 I/O 口的输入/输出方向 2检查寄存器是否为零 3.比较二个寄存器的大小 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4.4 数据传送程序的设计 数据传送程序设计是最基本的程序设计, 也是最常用的汇编程序设计。但是 数据传送程序设计是最基本的程序设计, 也是最常用的汇编程序设计。但是PIC单片机 的数据传送程序和其他的单片机不同,因为 单片机 的数据传送程序和其他的单片机不同,因为 PIC单片机的数据存储器单片机的数据存储器RAM分成分成4个存储区, 所以对 个存储区, 所以对PIC单片机来说,设计数据传送程序时 应该随时注意存储区的选择,否则数据传送达 不到目的。 单片机来说,设计数据传送程序时 应该随时注意存储区的选择,否则数据传送达 不到目的。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4.4 数据传送程序的设计 【2-43】用直接寻址方式分别向】用直接寻址方式分别向4个存储区的个存储区的0x B0、0x30、 ox130、0x1 B0传送数据。传送数据。 ;选择存储区0,直接寻址单元0xB0实际对应到0x30单元;选择存储区0,直接寻址单元0xB0实际对应到0x30单元 CLRFSTATUSCLRFSTATUS MOVLW 0xF0 MOVLW 0xF0 MOVWF 0x30MOVWF 0x30 MOVLW 0x0FMOVLW 0x0F MOVWF 0xB0MOVWF 0xB0 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 ;选择存储;选择存储区区1,直接寻址单元0x30实际对应到0xB0单元1,直接寻址单元0x30实际对应到0xB0单元 BSFSTATUS,RP0BSFSTATUS,RP0 MOVLW 0xF1MOVLW 0xF1 MOWWF 0x30MOWWF 0x30 MOVLW 0x1FMOVLW 0x1F MOVWF 0xB0MOVWF 0xB0 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4.5 算术逻辑运算程序的设计算术逻辑运算程序的设计 基本算术运算有:定点数、浮点数运算; 无 符号数、 有符号数运算等。 基本算术运算有:定点数、浮点数运算; 无 符号数、 有符号数运算等。 逻辑运算逻辑运算 - 逻辑运算包括:逻辑异或、逻辑与、逻 辑或; - 逻辑运算包括:逻辑异或、逻辑与、逻 辑或; 1加法运算:二进制加法运算,可直接运用加 法指令: 加法运算:二进制加法运算,可直接运用加 法指令:ADDWF 或或 ADDLWBCD加法运算加法运算 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4.6 延时程序的设计延时程序的设计 1简单延时程序的编写简单延时程序的编写 如果延时时间较短,可以让程序简单地连续执行几条空操 作指令 如果延时时间较短,可以让程序简单地连续执行几条空操 作指令“NOPNOP”。如果延时时间长,可以用循环来实现。如果延时时间长,可以用循环来实现。 2延时程序的延时时间计算2延时程序的延时时间计算 延时程序中计算指令执行的时间和即为延时时间。如果使 用4MHz振荡,则每个指令周期为1S。所以单周期指令时间为 1S,双周期指令时间为2S。在上例的LOOP循环延时时间即 为:(1+2)*100+2=302(S)。在循环中插入空操作指令即 可延长延时时间。 延时程序中计算指令执行的时间和即为延时时间。如果使 用4MHz振荡,则每个指令周期为1S。所以单周期指令时间为 1S,双周期指令时间为2S。在上例的LOOP循环延时时间即 为:(1+2)*100+2=302(S)。在循环中插入空操作指令即 可延长延时时间。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4.7 查表程序查表程序 查表程序常用于数据补偿,非线性修正,求非函数和代码转 换,这种方法就不需要计算,速度又快,而且实现容易。查表 程序用得恰当可能,大大简化程序设计带极大方便。 查表程序常用于数据补偿,非线性修正,求非函数和代码转 换,这种方法就不需要计算,速度又快,而且实现容易。查表 程序用得恰当可能,大大简化程序设计带极大方便。 在单片微机中,要对程序存储器的数据进行访问,必须用 读表操作。而PIC系列MCU没有查表指今,PIC的查表程序是利 用子程序带值返回的特点来实现。具体是在主程序中先取表数 据地址放入W,接着调用子程序,子程序的第一条指令将W置入 PC,则程序跳到数据地址的地方,再由 在单片微机中,要对程序存储器的数据进行访问,必须用 读表操作。而PIC系列MCU没有查表指今,PIC的查表程序是利 用子程序带值返回的特点来实现。具体是在主程序中先取表数 据地址放入W,接着调用子程序,子程序的第一条指令将W置入 PC,则程序跳到数据地址的地方,再由“RETLWRETLW”指令将数据放 入W返回到主程序。表格程序是通过一偏移量来修正PC值,由 一条带参数返回指令实现。 指令将数据放 入W返回到主程序。表格程序是通过一偏移量来修正PC值,由 一条带参数返回指令实现。 第二章 PIC单片机指令系统和汇编语言程序设计第二章 PIC单片机指令系统和汇编语言程序设计 2.4 汇编语言程序设计 2.4.8 子程序设计子程序设计 在编程过程中,常常会遇到一些完全相同的计算 和操作,例如求各种数据的加减乘除运算、代码转换 和延时等。如果每次都编写完全相同的程序段,会使 编程相当繁琐、耽误时间,而且浪费大量的程序存储 器空间。因此,对这些基本操作功能都是将它编制成 标准化的程序段,存储于程序存储器的指定区域,在 每次需要时就调出使用,这种程序段就称为子程序, 调用子程序的程序称为主程序或者调用程序。子程序 结构是程序设计标准化和模块化的有效方法。 在编程过程中,
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。