55子程序调用指令及应用.PPT

  1. 1、本文档共89页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
55子程序调用指令及应用

2.字“与”指令WAND举例 假设要求用输入继电器X0~X4的位状态去控制输出继电器Y0~Y4,可用字元件K2X0去控制字元件K2Y0。对字元件多余的控制位X5、X6和X7,可与0相“与”进行屏蔽。程序如图5.23所示。 图5.23 应用字“与”指令的程序 图5.24 字“与”指令的位运算过程 KnY、KnM、KnS、T、C、D、V、Z D P K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z S1、S2 FNC27 WOR D 操 作 数 字“或”指令 5.4.2 逻辑字“或”指令WOR 表5.18 WOR指令 1.字“或”指令WOR的说明 (1)S1、S2为两个相“或”的源操作数,D为存储“或”逻辑结果的目标操作数。 (2)指令的功能是将两个源操作数的数据,进行二进制按位相“或”,并将运算结果存入目标操作数。 2.字“或”指令WOR举例 要求用输入继电器组成的字元件K2X0去控制由输出继电器组成的字元件K2Y0,但Y3、Y4位不受字元件K2X0的控制而始终处于ON状态。可用字“或”指令屏蔽X3、X4位,程序如图5.25所示。 图5.26 字“或”指令的位运算过程 图5.25 应用字“或”指令的程序 KnY、KnM、KnS、T、C、D、V、Z D P K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z S1、S2 FNC28 WXOR D 操 作 数 字“异或”指令 5.4.3 逻辑字“异或”指令WXOR 表5.19 WXOR指令 1.字“异或”指令WXOR的说明 (1)S1、S2为两个相“异或”的源操作数,D为存储“异或”逻辑结果的目标操作数。 (2)指令的功能是将两个源操作数的数据,进行二进制按位相“异或”,并将运算结果存入目标操作数。 2.字“异或”指令WXOR举例 要求用输入继电器组成的字元件K2X0的相反状态去控制由输出继电器组成的字元件K2Y0,即X某位为“1”时,Y的相应位为“0”;X某位为“0”时,Y的相应位为“1”。程序如图5.27所示。 图5.27 应用字“异或”指令的程序 图5.28 字“异或”指令运算过程 5.5 子程序调用指令及应用 图5.29 子程序调用与返回结构 FEND 1步 无 FNC6 FEND SRET 1步 无 FNC2 SRET CALL 3步 标号P 1步 标号 P0~P62 标号 P64~P127 FNC1 CALL P 程 序 步 操 作 数 指令助记符 5.5.1 子程序指令CALL、SRET与主程序结束指令FEND 表5.20 CALL、SRET、FEND指令 FEND指令表示主程序结束。END是指整个程序(包括主程序和子程序)结束。一个完整的程序可以没有子程序,但一定要有主程序。 子程序编写在FEND指令的后面,以标号P开头,以返回指令SRET结束。 如果子程序调用条件满足,则中断主程序去执行子程序,标号是被调用子程序的入口地址。在子程序结束处一定要使用返回指令SRET,意思是返回主程序中断处去继续执行主程序的下一条指令语句。 在子程序中,使用定时器的范围是T192~T199。 如果在子程序中再调用其他子程序称为子程序嵌套,嵌套总数可达5级。 标号P63相当于END。 子程序调用指令CALL与跳转指令CJ不能使用相同的标号。 5.5.2 实习操作:子程序调用举例 图5.30 应用子程序调用指令的程序 程序功能是:X1、X2、X3分别接通时,将相应的数据传送到D0、D10,然后调用子程序;在子程序中,将D0、D10存储的数据相加,运算结果存储在D20,用D20存储数据控制输出字元件K1Y0。 5.6 循环指令及应用 1 无 FNC9 NEXT 循环结束 3 K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z FNC8 FOR 循环开始 程序步 操 作 数 指令助记符 5.6.1 循环指令FOR、NEXT 1.循环指令FOR、NEXT的说明 FOR、NEXT指令必须成对出现,缺一不可。位于FOR、NEXT之间的程序称为循环体,在一个扫描周期内,循环体反复被执行。FOR指令的操作数用于指定循环的次数,只有执行完循环次数后,才执行NEXT的下一条指令语句。循环指令的结构如图5.31所示,图中指定循环次数为10次 。 2.循环指令FOR、NEXT举例 【例题5.3】 求 0+1+2+3+…+100 的和,并将和存入D0。 【解】 用

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档