书签 分享 收藏 举报 版权申诉 / 52
上传文档赚钱

类型PIC单片机基础教程课件第二章.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4290556
  • 上传时间:2022-11-26
  • 格式:PPT
  • 页数:52
  • 大小:781.12KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《PIC单片机基础教程课件第二章.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    PIC 单片机 基础教程 课件 第二
    资源描述:

    1、第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计丁跃军丁跃军 来清民等来清民等 编著编著第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1指令系统概述 2.2字节操作指令 2.3位操作指令 2.4 简单程序设计 第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1 指令系统概述 2.1.1 指令的表示方法1机器指令的表示方法 指令用于规定计算机的基本操作。一台计算机所能指令用

    2、于规定计算机的基本操作。一台计算机所能执行的指令集合就是它的指令系统。执行的指令集合就是它的指令系统。指令共有两种表示方法,分别是机器语言表示方法指令共有两种表示方法,分别是机器语言表示方法和汇编语言表示方法。不同种类的单片机有不同的一和汇编语言表示方法。不同种类的单片机有不同的一套命令套命令(即所谓即所谓“指令系统指令系统”)。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1 指令系统概述2.1.1 指令的表示方法1机器指令的表示方法B13B0操作码操作码操作数操作数第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编

    3、语言程序设计2.1 指令系统概述 2.1.1 指令的表示方法2汇编语言的表示方法 汇编语言是对机器语言的改进,它采用便于人们记汇编语言是对机器语言的改进,它采用便于人们记忆的一些符号(例如简化的英文单词)来表示操作码、忆的一些符号(例如简化的英文单词)来表示操作码、操作数和地址码等。通常把表示指令的符号称之为助操作数和地址码等。通常把表示指令的符号称之为助记符。记符。MOVF 20HMOVF 20H,0 0 ;ANDLWANDLW 0FH0FHMOVWFMOVWF 21H21H第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1 指令系统概述 2.1

    4、.1 指令的表示方法3.3.PIC16F87XPIC16F87X单片机指令单片机指令 PIC16F87XPIC16F87X单片机采用精简指令集(单片机采用精简指令集(RISCRISC)结构,指令效率高,结构,指令效率高,功能强。它的指令为单字的宽字位(功能强。它的指令为单字的宽字位(1414)指令,由此生成的程)指令,由此生成的程序代码短。指令条数少,仅有序代码短。指令条数少,仅有3535条。条。(1)(1)面向字节操作类面向字节操作类(2)(2)面向位操作类面向位操作类(3)(3)常数操作和控制类操作。常数操作和控制类操作。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令

    5、系统和汇编语言程序设计2.1 指令系统概述2.1.2 2.1.2 PICPIC单片机指令的寻址方式单片机指令的寻址方式 1 1寄存器间接寻址寄存器间接寻址 所谓寄存器间接寻址指的是通过寄存器所谓寄存器间接寻址指的是通过寄存器F0F0、F4F4来实现。实际的寄存器地址放在来实现。实际的寄存器地址放在F4F4的低的低5 5位中,位中,通过通过F0F0来进行间接寻址。来进行间接寻址。INDFINDF不是物理上实际不是物理上实际存在的寄存器,而任何寻址存在的寄存器,而任何寻址INDFINDF的指令都是以的指令都是以FSRFSR寄存器内容为地址的寄存器内容为地址的RAMRAM单元中存放着参加单元中存放着

    6、参加运算或操作的数据。运算或操作的数据。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1 指令系统概述2.1.2 2.1.2 PICPIC单片机指令的寻址方式单片机指令的寻址方式 1 1寄存器间接寻址寄存器间接寻址 第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1 指令系统概述 2.1.2 2.1.2 PICPIC单片机指令的寻址方式单片机指令的寻址方式 2 2立即数寻址立即数寻址 所谓立即寻址就是操作数在指令中直接给出。所谓立即寻址就是操作数在指令中直接给出。通常把出现在指令中的操作数称之为立即数

    7、,通常把出现在指令中的操作数称之为立即数,因此就把这种寻址方式称之为立即寻址。因此就把这种寻址方式称之为立即寻址。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1 指令系统概述2.1.2 2.1.2 PICPIC单片机指令的寻址方式单片机指令的寻址方式 2 2立即数寻址立即数寻址立即数寻址立即数寻址第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1 指令系统概述2.1.2 2.1.2 PICPIC单片机指令的寻址方式单片机指令的寻址方式 3 3直接寻址直接寻址 指令中操作数以其所在存储单元地址的形式指

    8、令中操作数以其所在存储单元地址的形式给出,就称之为直接寻址。给出,就称之为直接寻址。这种方式是对任何这种方式是对任何一寄存器直接寻址访问。一寄存器直接寻址访问。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1 指令系统概述2.1.2 2.1.2 PICPIC单片机指令的寻址方式单片机指令的寻址方式 3 3直接寻址直接寻址第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1 指令系统概述2.1.2 2.1.2 PICPIC单片机指令的寻址方式单片机指令的寻址方式 4 4位寻址位寻址 这种寻址方式是对寄存器

    9、中的任一位(这种寻址方式是对寄存器中的任一位(bitbit)进行操作进行操作 第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1 指令系统概述 2.1.3 2.1.3 指令符号的意义说明指令符号的意义说明1.1.PICPIC汇编语言指令格式汇编语言指令格式 PICPIC系列微控制器汇编语言指令与系列微控制器汇编语言指令与MCSMCS5151系列单片系列单片机汇编语言一样,每条汇编语言指令由机汇编语言一样,每条汇编语言指令由4 4个部分组成,个部分组成,其书写格

    10、式如下:其书写格式如下:标号操作码助记符操作数标号操作码助记符操作数1 1,操作数,操作数2 2;注释;注释 第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.1 指令系统概述 2.1.3 2.1.3 指令符号的意义说明指令符号的意义说明2.2.指令符号的意义说明指令符号的意义说明 在在PICPIC系列单片机指令中常把数据存储器系列单片机指令中常把数据存储器RAMRAM当作寄当作寄存器来使用存器来使用(处理处理)并用字母并用字母f(f(或或F)F)表示。表示。d d 代表操作数的目标选择,定义代表操作数的目标选择,定义d=0d=0,结果存入结果存入W

    11、 W;d=1d=1结果存入结果存入(文件文件)寄存器寄存器f f,当使用汇编程序指令当使用汇编程序指令d d缺缺省时,默认省时,默认d=1d=1。b b代表代表(文件文件)寄存器寄存器(8(8位位)的位地址的位地址(0(07 7取值取值)。如寄存器的。如寄存器的8 8位为位为b7b7、b6b1b6b1、b0b0,若若b=1b=1代表寄存器的第代表寄存器的第b1b1位。字母符号位。字母符号k k代表立即数、常代表立即数、常数和数据标号。数和数据标号。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.2 字节操作 指令PIC16F87XPIC16F87X

    12、系列单片机系列单片机字节操作 指令详解详解 见下面表格见下面表格第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.3 位操作 指令PIC16F87XPIC16F87X系列单片机系列单片机位操作 指令详解详解 见下面表格见下面表格第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计表表2-1 2-1 PIC16F87XPIC16F87X单片机指令集单片机指令集数据传送类指令数据传送类指令指令助记符指令助记符功能简述功能简述周期周期14位指令字位指令字影响的状态位影响的状态位MOLW k立即数立即数k送入寄存送入寄存

    13、器器W1110 xx k k k k k k k kMOVWF fW送入送入f寄存器寄存器100 0000 1ffff ffffMOVFf,df送入送入f或或W100 1000dfff ffffZSWAPF f,df寄存器半字节交寄存器半字节交换换100 1110 dfff ffffADDLWkW加立即数加立即数k,结结果送入果送入W或或f111 111xkkkk kkkkOV,C,DC,ZADDWFf,dW加加f,结果送入结果送入W或或f100 0111dfff ffffOV,C,DC,Z第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计算术操作类指令

    14、算术操作类指令指令助记符指令助记符功能简述功能简述周期周期 影响的状态位影响的状态位DECF f,df减减1100 0011 dfff ffffZDECFSZ f,df减减1,为,为0间跳间跳1(2)00 1011 dffff ffffINCF f,df加加1100 1010dfff ffffZINCFSZ f,df加加1,为,为0间跳间跳1(2)00 1111 dfff ffffSUBLW k立即数立即数k减减W结果结果送入送入W或或f111110 xkkkkkkkkOV,C,DC,ZSUBWF f,df减减W,结果送入结果送入或或f100 0010 dfff ffffOV,C,DC,Z第二

    15、章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计逻辑操作类指令逻辑操作类指令指令助记符指令助记符功能简述功能简述周期周期14位指令字位指令字影响的状态影响的状态位位ANDLW k立即数与立即数与W,结果送入结果送入W111 1001 kkkk kkkkZANDWF f,df与与W,结果送结果送入入W或或f100 0101dfff ffffZCLRF ff清清0100 0001 1fff ffffZCLRWW清清0100 0001 0 xxx xxxxZCOMF f,df取反取反100 1001 dfff ffffZ第二章第二章 PICPIC单片机指令系统和

    16、汇编语言程序设计单片机指令系统和汇编语言程序设计IORLW kk或或W,结果结果送入送入W111 1000 kkkk kkkkZIORWF f,df或或W,结果送结果送入入W或或f100 0100 dfff ffffZRLF f,df带进位带进位C循环循环左移左移100 1101dfff ffffCRRF f,df带进位带进位C循环循环右移右移100 1100dfff ffffCXORLW k立即数或立即数或W,结果送入结果送入W111 1010 kkkk kkkkZXORWF f,df异或异或W,结果结果送入送入W和和f100 0110 dfff ffffZ第二章第二章 PICPIC单片机指

    17、令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计PDTO,控制转移类指令控制转移类指令指令助记符指令助记符功能简述功能简述周期周期14位指令字位指令字影响的状影响的状态位态位CLRWDT清除清除WDT定时定时器器100 0000 0110 0100 CALL k调用子程序调用子程序210 0 kkk kkkk kkkk GOTO k无条件跳转无条件跳转211 1000 kkkk kkkk第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计NOP空操作空操作100 0000 0 xx 0000OPTION写写OPTION寄存寄存器器100 0000

    18、0110 0010RETFIE中断返回中断返回200 0000 0000 1001DLINTDRETLW k常数送常数送W,子子程序返回程序返回211 01xx kkkk kkkkRETURN子程序返回子程序返回200 0000 0000 1000SLEEP进入休眠状态进入休眠状态100 0000 0110 0011 第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计位操作类指令位操作类指令指令助记符指令助记符功能简述功能简述周期周期14位指令字位指令字影响的状态影响的状态位位BCF f,b清除清除f寄存器的寄存器的b位位101 00bb bfff ff

    19、ffBSF f,b置置f寄存器的寄存器的b位位101 01bb bfff ffffBTFSC f,bf寄存器的寄存器的b位为位为0间距间距1(2)01 10bb bfff ffffBTFSS f,bf寄存器的寄存器的b位产位产为为0间距间距1(2)01 11bb bfff ffff第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4.1 汇编语言程序设计知识1汇编语言源程序的结构 汇编语言提供了一种不涉及实际存储器地址和机器指令编码的编写源程序的有效方法。我们需要掌握的是:汇编语言的程序格式、语句格式、助记符、伪指令。程序的

    20、4种基本结构:顺序、分支、循环和子程序。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4 汇编语言程序设计2.4.1 汇编语言程序设计知识2PIC 汇编语言的程序流程图(1 1)程序流程图常用的图形符号)程序流程图常用的图形符号 圆角矩形框为起始圆角矩形框为起始/终止框,表示一个程序的开始或结束。终止框,表示一个程序的开始或结束。矩形框为任务框,表示要处理的任务。矩形框为任务框,表示要处理的任务。菱形框为判断框,表示要判断的因素,判断结果将导致程序菱形框为判断框,表示要判断的因素,判断结果将导致程序走入不同的分支。走入不

    21、同的分支。指向线为带有箭头的线段,表示程序的走向。指向线为带有箭头的线段,表示程序的走向。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4 汇编语言程序设计2.4.1 汇编语言程序设计知识2PIC 汇编语言的程序流程图((2)(2)程序流程图的画法程序流程图的画法顺序程序结构顺序程序结构 顺序程序结构在流程图中表示为任务框一个一个地串行顺序程序结构在流程图中表示为任务框一个一个地串行连接。在计算机执行程序时表现为,从头至尾严格按照次序连接。在计算机执行程序时表现为,从头至尾严格按照次序一条语句一条语句地顺序执行,并且每一

    22、条语句均被执行一一条语句一条语句地顺序执行,并且每一条语句均被执行一遍。遍。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4 汇编语言程序设计2.4.1 汇编语言程序设计知识2PIC 汇编语言的程序流程图分支程序流程图分支程序流程图 分支程序流程图包含分支程序流程图包含1个判断框和两个判断框和两个或两个以上的出口。从而形成程序的个或两个以上的出口。从而形成程序的2个或多个分支个或多个分支.第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4 汇编语言程

    23、序设计2.4.1 汇编语言程序设计知识2PIC 汇编语言的程序流程图循环程序流程图循环程序流程图 循环程序的结构包含以下循环程序的结构包含以下4 4个组成部分:个组成部分:循环初始化部分:为循环程序作准备。如循环变量设置,即循环初始化部分:为循环程序作准备。如循环变量设置,即指定或定义一个循环变量作循环次数计数器或地址指针,并给指定或定义一个循环变量作循环次数计数器或地址指针,并给它设置一个初始值。它设置一个初始值。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4 汇编语言程序设计2.4.1 汇编语言程序设计知识2PIC

    24、 汇编语言的程序流程图循环体:要求重复执行的程序段,即循环程序的主体部分。循环体:要求重复执行的程序段,即循环程序的主体部分。循环控制部分:循环循环控制部分:循环控制就是根据循环结束条件,判断是否控制就是根据循环结束条件,判断是否跳出循环。跳出循环。结束部分:对循环结果进行分析、处理和保存。结束部分:对循环结果进行分析、处理和保存。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4 汇编语言程序设计2.4.2 PIC 汇编语言的伪指令

    25、 用来编写汇编语言源程序的语句,主要是指令助记符,其次就是伪指令。所谓伪指令就是“假”指令的意思,不是单片机的指令系统中的真实指令。伪指令与指令系统中的助记符的不同之处是没有机器码与它对应。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4 汇编语言程序设计2.4.2 PIC 汇编语言的伪指令最常用的伪指令介绍(1 1)INCLODE INCLODE 功能功能:读入外部源文件读入外部源文件 格式:格式:INCLUDE INCLUDE 说明:用于把指定文件读入源程序中作为源程序代码的一部分。说明:用于把指定文件读入源程序中作

    26、为源程序代码的一部分。文件名必须用双引号或尖括号给出,如果被指定文件非当前工文件名必须用双引号或尖括号给出,如果被指定文件非当前工作目录下,则需要指令完整的路径。作目录下,则需要指令完整的路径。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4 汇编语言程序设计2.4.2 PIC 汇编语言的伪指令最常用的伪指令介绍(2)(2)EQU EQU 功能:功能:对标号赋值对标号赋值格式:格式:EQU EQU 说明:使说明:使 EQU 两端的两端的8位值相等,即给标号赋位值相等,即给标号赋予一个特定值或者说是给标号定义一个数值。予一

    27、个特定值或者说是给标号定义一个数值。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4 汇编语言程序设计2.4.2 PIC 汇编语言的伪指令最常用的伪指令介绍(3)(3)#DEFINE DEFINE 功能:定义文本替换标号功能:定义文本替换标号格式:格式:#DEFINEDEFINE说明:用于定义文本替换标号,在汇编时把源说明:用于定义文本替换标号,在汇编时把源代码中的代码中的替换成替换成。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4 汇编语言程序

    28、设计2.4.2 PIC 汇编语言的伪指令最常用的伪指令介绍(4)(4)ORG ORG 功能功能:存放程序单元的起始地址存放程序单元的起始地址格式:格式:标号标号 ORG ORG 说明:用于指定该伪指令后面的源程序存放的起始地说明:用于指定该伪指令后面的源程序存放的起始地址,也就是汇编后的机器码目标程序在单片机的程序址,也就是汇编后的机器码目标程序在单片机的程序存储器中开始存放的首地址。存储器中开始存放的首地址。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4 汇编语言程序设计2.4.2 PIC 汇编语言的伪指令最常用的伪

    29、指令介绍(5)(5)END END 功能:程序结束伪指令功能:程序结束伪指令格式:格式:END END 说明:说明:这条伪指令通知汇编器这条伪指令通知汇编器 MPASMMPASM结束对源程序结束对源程序(.(.ASM)ASM)的汇的汇编,即使在后面还有语句,也将不予继续汇编。编,即使在后面还有语句,也将不予继续汇编。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4.3 PIC 汇编语言程序设计基础1设置 I/O 口的输入/输出方向2检查寄存器是否为零 3.比较二个寄存器的大小 第二章第二章 PICPIC单片机指令系统和汇

    30、编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4.4 数据传送程序的设计 数据传送程序设计是最基本的程序设计,数据传送程序设计是最基本的程序设计,也是最常用的汇编程序设计。但是也是最常用的汇编程序设计。但是PIC单片机单片机的数据传送程序和其他的单片机不同,因为的数据传送程序和其他的单片机不同,因为PIC单片机的数据存储器单片机的数据存储器RAM分成分成4个存储区,个存储区,所以对所以对PIC单片机来说,设计数据传送程序时单片机来说,设计数据传送程序时应该随时注意存储区的选择,否则数据传送达应该随时注意存储区的选择,否则数据传送达不到目的。不到目的。第二章第二章

    31、PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4.4 数据传送程序的设计【2-43】用直接寻址方式分别向】用直接寻址方式分别向4个存储区的个存储区的0 x B0、0 x30、ox130、0 x1 B0传送数据。传送数据。;选择存储区;选择存储区0 0,直接寻址单元,直接寻址单元0 0 xB0 xB0实际对应到实际对应到0 0 x30 x30单元单元CLRFCLRFSTATUSSTATUSMOVLWMOVLW 0 xF0 0 xF0 MOVWFMOVWF 0 x300 x30MOVLWMOVLW 0 x0F0 x0FMOVWFMOVWF

    32、 0 xB00 xB0第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计;选择存储选择存储区区1 1,直接寻址单元,直接寻址单元0 0 x30 x30实际对应到实际对应到0 0 xB0 xB0单元单元BSFBSFSTATUSSTATUS,RP0RP0MOVLWMOVLW 0 xF10 xF1MOWWFMOWWF 0 x300 x30MOVLWMOVLW 0 x1F0 x1FMOVWFMOVWF 0 xB00 xB0第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2

    33、.4.5 算术逻辑运算程序的设计算术逻辑运算程序的设计基本算术运算有:定点数、基本算术运算有:定点数、浮点数运算;浮点数运算;无无符号数、符号数、有符号数运算等。有符号数运算等。逻辑运算逻辑运算-逻辑运算包括:逻辑异或、逻辑与、逻逻辑运算包括:逻辑异或、逻辑与、逻辑或;辑或;1加法运算:加法运算:二进制加法运算,可直接运用加二进制加法运算,可直接运用加法指令:法指令:ADDWF 或或 ADDLW BCD加法运算加法运算 第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4.6 延时程序的设计延时程序的设计1简单延时程序的编写

    34、简单延时程序的编写 如果延时时间较短,可以让程序简单地连续执行几条空操作如果延时时间较短,可以让程序简单地连续执行几条空操作指令指令“NOP”NOP”。如果延时时间长,可以用循环来实现。如果延时时间长,可以用循环来实现。2 2延时程序的延时时间计算延时程序的延时时间计算 延时程序中计算指令执行的时间和即为延时时间。如果使延时程序中计算指令执行的时间和即为延时时间。如果使用用4 4MHzMHz振荡,则每个指令周期为振荡,则每个指令周期为1 1SS。所以单周期指令时间为所以单周期指令时间为1 1SS,双周期指令时间为双周期指令时间为2 2SS。在上例的在上例的LOOPLOOP循环延时时间即循环延时

    35、时间即为:(为:(1+21+2)*100+2=302100+2=302(SS)。)。在循环中插入空操作指令即在循环中插入空操作指令即可延长延时时间。可延长延时时间。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4.7 查表程序查表程序 查表程序常用于数据补偿,非线性修正,求非函数和代码转查表程序常用于数据补偿,非线性修正,求非函数和代码转换,这种方法就不需要计算,速度又快,而且实现容易。查表换,这种方法就不需要计算,速度又快,而且实现容易。查表程序用得恰当可能,大大简化程序设计带极大方便。程序用得恰当可能,大大简化程序设

    36、计带极大方便。在单片微机中,要对程序存储器的数据进行访问,必须用在单片微机中,要对程序存储器的数据进行访问,必须用读表操作。而读表操作。而PICPIC系列系列MCUMCU没有查表指今,没有查表指今,PICPIC的查表程序是利用的查表程序是利用子程序带值返回的特点来实现。具体是在主程序中先取表数据子程序带值返回的特点来实现。具体是在主程序中先取表数据地址放入地址放入W W,接着调用子程序,子程序的第一条指令将接着调用子程序,子程序的第一条指令将W W置入置入PCPC,则程序跳到数据地址的地方,再由则程序跳到数据地址的地方,再由“RETLW”RETLW”指令将数据放入指令将数据放入W W返回到主程

    37、序。表格程序是通过一偏移量来修正返回到主程序。表格程序是通过一偏移量来修正PCPC值,由一条值,由一条带参数返回指令实现。带参数返回指令实现。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇编语言程序设计 2.4.8 子程序设计子程序设计 在编程过程中,常常会遇到一些完全相同的计算在编程过程中,常常会遇到一些完全相同的计算和操作,例如求各种数据的加减乘除运算、代码转换和操作,例如求各种数据的加减乘除运算、代码转换和延时等。如果每次都编写完全相同的程序段,会使和延时等。如果每次都编写完全相同的程序段,会使编程相当繁琐、耽误时间,而且浪费大量的程

    38、序存储编程相当繁琐、耽误时间,而且浪费大量的程序存储器空间。因此,对这些基本操作功能都是将它编制成器空间。因此,对这些基本操作功能都是将它编制成标准化的程序段,存储于程序存储器的指定区域,在标准化的程序段,存储于程序存储器的指定区域,在每次需要时就调出使用,这种程序段就称为子程序,每次需要时就调出使用,这种程序段就称为子程序,调用子程序的程序称为主程序或者调用程序。子程序调用子程序的程序称为主程序或者调用程序。子程序结构是程序设计标准化和模块化的有效方法。结构是程序设计标准化和模块化的有效方法。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计2.4 汇

    39、编语言程序设计2.4.92.4.9分支跳转子程序分支跳转子程序 经常需要根据条件判断,确定程序多方向转经常需要根据条件判断,确定程序多方向转向选择,实现对程序的灵活控制。用向选择,实现对程序的灵活控制。用PIC单片机单片机指令可以轻松地构成分支跳转。在程序形式上,指令可以轻松地构成分支跳转。在程序形式上,分支功能跳转子程序与数据查表子程序的结构类分支功能跳转子程序与数据查表子程序的结构类似,只是它是用似,只是它是用GOTO语句替代了语句替代了RETLW语句,语句,并直接进入不同的子程序中。并直接进入不同的子程序中。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语

    40、言程序设计本章小节(1 1)基本概念基本概念指令:指挥计算机完成某个基本操作的命令。指令:指挥计算机完成某个基本操作的命令。程序:完成一项任务所需的所有指令的有序集合。程序:完成一项任务所需的所有指令的有序集合。指令系统:一台计算机所能执行的指令集合就是它的指令系统:一台计算机所能执行的指令集合就是它的指令系统。指令系统。指令的表示方法:有机器语言表示方法和汇编语言表指令的表示方法:有机器语言表示方法和汇编语言表示方法。其中机器语言的指令是用二进制代码表示,示方法。其中机器语言的指令是用二进制代码表示,汇编语言的指令是用助记符表示。汇编语言的指令是用助记符表示。(2 2)PIC16F87XPI

    41、C16F87X系列单片机的指令分类系列单片机的指令分类第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计本章小节PIC16F87XPIC16F87X单片机采用精简指令集(单片机采用精简指令集(RISCRISC)结构,指结构,指令效率高,功能强。它的指令为单字的宽字位(令效率高,功能强。它的指令为单字的宽字位(1414)指令,由此生成的程序代码短。指令条数少,仅有指令,由此生成的程序代码短。指令条数少,仅有3535条。每条指令都由操作码和操作数组成,按指令条。每条指令都由操作码和操作数组成,按指令的操作对象将指令分为面向字节操作类指令、面向的操作对象将指令

    42、分为面向字节操作类指令、面向位操作类指令、常数操作和控制操作类指令。位操作类指令、常数操作和控制操作类指令。(3)PICPIC汇编语言指令格式汇编语言指令格式PICPIC系列微控制器每条汇编语言指令由系列微控制器每条汇编语言指令由4 4个部分组成,个部分组成,其书写格式如下:其书写格式如下:标号操作码助记符操作数标号操作码助记符操作数1 1,操作数,操作数2 2;注释;注释第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计本章小节2、掌握掌握PICPIC单片机指令的寻址方式单片机指令的寻址方式PIC16F87X单片机寻址方式根据操作数的来源单片机寻址方式

    43、根据操作数的来源分为立即数寻址、直接寻址、寄存器间接寻分为立即数寻址、直接寻址、寄存器间接寻址和位寻址四种。址和位寻址四种。3、熟记熟记PIC16F87XPIC16F87X单片机的单片机的3535条指令助记符条指令助记符4 4、学会汇编语言程序设计、学会汇编语言程序设计 第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计本章小节(1)汇编语言程序流程图的基本结构汇编语言程序流程图的基本结构顺序程序结构:从头至尾严格按照次序一条语句一条顺序程序结构:从头至尾严格按照次序一条语句一条语句地顺序执行,且每一条语句均被执行一遍。语句地顺序执行,且每一条语句均被执

    44、行一遍。分支程序流程图:一般包含一个判断框和两个或两个分支程序流程图:一般包含一个判断框和两个或两个以上的出口。从而形成程序的以上的出口。从而形成程序的2个或多个分支。个或多个分支。循环程序流程图:对某一段程序重复执行多次。循环程序流程图:对某一段程序重复执行多次。(2 2)PIC PIC 汇编语言的伪指令汇编语言的伪指令伪指令是程序设计人员向汇编器发布的控制命令,告伪指令是程序设计人员向汇编器发布的控制命令,告诉汇编器如何完成汇编过程和一些规定的操作,以诉汇编器如何完成汇编过程和一些规定的操作,以及控制汇编器的输入、输出和数据定位等。及控制汇编器的输入、输出和数据定位等。第二章第二章 PICPIC单片机指令系统和汇编语言程序设计单片机指令系统和汇编语言程序设计本章小节(3 3)PICPIC汇编语言常用程序设计方法汇编语言常用程序设计方法这是本章的重点,要在实验中反复联系,熟练这是本章的重点,要在实验中反复联系,熟练掌握最基本的数据传送程序的设计、掌握最基本的数据传送程序的设计、算术逻辑运算程序设计、延时程序的设计、查算术逻辑运算程序设计、延时程序的设计、查表程序设计和子程序设计。表程序设计和子程序设计。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:PIC单片机基础教程课件第二章.ppt
    链接地址:https://www.163wenku.com/p-4290556.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库