首页 理论教育 外部输入输出设备指令

外部输入输出设备指令

时间:2023-07-02 理论教育 版权反馈
【摘要】:外部I/O设备指令如表4-13所示。表4-13 外部I/O设备指令外部I/O设备指令是FX系列与外设传递信息的指令,共有10条。M10~M19动作对应于X0~X9。该指令在程序中只能使用一次。当X1保持为ON时,Y10~Y13依次为ON。图4-61 方向开关指令的使用4.ASCII码转换指令ASCII码转换指令ASC的功能是将字符变换成ASCII,并存放在指定的元件中。

外部输入输出设备指令

外部I/O设备指令如表4-13所示。

表4-13 外部I/O设备指令

978-7-111-38047-4-Chapter04-69.jpg

外部I/O设备指令(FNC70~FNC79)是FX系列与外设传递信息的指令,共有10条。

1.数据输入指令

数据输入指令有10键输入指令TKY(FNC70)、16键输入指令HKY(FNC71)和数字开关输入指令DSW(FNC72)。

(1)10键输入指令

10键输入指令(D)TKY是用于十字键输入数值的指令。

示例及使用:如图4-57所示,源操作数[S.]用X0为首元件,10个键X0~X9分别为对应数字0~9。X30接通时执行TKY指令,如果以X2(2)、X9(8)、X3(3)、X0(0)的顺序按键,则[D1.]中存入数据为2830,实现了将按键变成十进制的数字量。当送入的数大于9999,则高位溢出并丢失。使用32位指令DTKY时,D1和D2组合使用,高位大于99999999,则高位溢出。

978-7-111-38047-4-Chapter04-70.jpg

图4-57 10键输入指令的使用

当按下X2后,M12置1并保持至另一键被按下,其他键也一样。M10~M19动作对应于X0~X9。任一键按下,键信号置1直到该键放开。当两个或更多的键被按下时,则首先按下的键有效。X30变为OFF时,D0中的数据保持不变,但M10~M20全部为OFF。此指令的源操作数可取X、Y、M和S,目标操作数[D1.]可取Kn Y、Kn M、Kn S、T、C、D、V和Z,[D2.]可取Y、M、S。16位运算时占7个程序步,32位运算时占13个程序步。该指令在程序中只能使用一次。

(2)16键输入指令

16键输入指令(D)HKY的作用是通过对键盘上的数字键和功能键输入的内容实现输入的复合运算。

示例及使用:如图4-58所示,[S.]指定4个输入元件,[D1.]指定4个扫描输出点,[D2.]是键输入存储元件,[D3.]指示读出元件。16键中0~9为数字键,A~F为功能键,HKY指令输入的数字范围为0~9999,以二进制的方式存放在D0中,如果大于9999则溢出。DHKY指令可在D0和D1中存放最大为99999999的数据。功能键A~F与M0~M5对应,按下A键,M0置1并保持。按下D键M0置0,M3置1并保持。其余类推。如果同时按下多个键,则先按下的有效。

该指令源操作数为X,目标操作数[D1.]为Y,[D2]可以取T、C、D、V和Z,[D3.]可取Y、M和S。16位运算时占9个程序步,32位运算时占17个程序步。扫描全部16个键,需要8个扫描周期。HKY指令在程序中只能使用一次。

978-7-111-38047-4-Chapter04-71.jpg

图4-58 16键输入指令的使用

(3)数字开关输入指令

数字开关输入指令DSW的功能是读入1组或2组4位数字开关的设置值。(www.xing528.com)

示例及使用:如图4-59所示,源操作数[S.]为X,用来指定输入点。[D1.]为目标操作数Y,用来指定选通点。[D2.]指定数据存储单元,它可取T、C、D、V和Z。n指定数字开关组数。该指令只有16位运算,占9个程序步,可使用两次。图中,n=1指有1组BCD码数字开关。输入开关为X10~X13,按Y10~Y13的顺序选通读入。数据以二进制数的形式存放在D0中。若n=2,则有2组开关,第2组开关接到X14~X17上,仍由Y10~Y13顺序选通读入,数据以二进制的形式存放在D1中,第2组数据只有在n=2时才有效。当X1保持为ON时,Y10~Y13依次为ON。一个周期完成后的标志位M8029置1。

978-7-111-38047-4-Chapter04-72.jpg

图4-59 数字开关输入指令的使用

2.数字译码输出指令

数字译码输出指令有七段译码指令SEGD(FNC73)和带锁存的七段显示指令SEGL(FNC74)两条。七段译码指令SEGD用于控制一位七段数码管。SEGD的操作功能是将源操作数的低4位二进制数(1为十六进制数)译码后送目标操作数。

示例及使用:七段译码指令SEGD(P)如图4-60所示,将[S.]指定元件的低4位所确定的十六进制数(0~F)经译码后存于[D.]指定的元件中,以驱动七段显示器,[D.]的高8位保持不变。如果要显示0,则应在D0中放入数据3FH。

978-7-111-38047-4-Chapter04-73.jpg

图4-60 七段译码指令的使用

带锁存的7段显示指令SEGL的作用是用12个扫描周期的时间来控制一组或两组带锁存的七段译码显示。

3.方向开关指令

方向开关指令ARWS(FNC75)用于方向开关的输入和显示。

示例及使用:如图4-61所示,该指令有四个参数,源操作数[S.]可选X、Y、M、S。图中选择X10开始的4个按钮,位左移键和右移键用来指定输入的位,增加键和减少键用来设定指定位数的数值。X0接通时指定的是最高位,按一次右移键或左移键可移动一位。指定位的数据可由增加键和减少键来修改,其值可显示在7段显示器上。目标操作数[D1.]为输入的数据,由7段显示器监视其中的值(操作数可用T、C、D、V和Z),[D2.]只能用Y做操作数,n=0~3,其确定的方法与SEGL指令相同。ARWS指令只能使用一次,而且必须用晶体管输出型的PLC。

978-7-111-38047-4-Chapter04-74.jpg

图4-61 方向开关指令的使用

4.ASCII码转换指令

ASCII码转换指令ASC(FNC76)的功能是将字符变换成ASCII,并存放在指定的元件中。

示例及使用:如图4-62所示,当X3有效时,则将FX2A变成ASCII并送入D300和D301中。源操作数是8个字节以下的字母或数字,目标操作数为T、C、D。它只有16位运算,占11个程序步。

978-7-111-38047-4-Chapter04-75.jpg

图4-62 ASCII码转换指令的使用

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈