外部I/0設(shè)備指令是FX系列與外設(shè)傳遞信息的指令,共有10條。分別是10鍵輸入指令TKY(FNC70)、16鍵輸入指令HKY(FNC71)、數(shù)字開關(guān)輸入指令DSW(FNC72)、七段譯碼指令SEGD(FNC73)、帶鎖存的七段顯示指令SEGL(FNC74)、方向開關(guān)指令ARWS(FNC75)、ASCII碼轉(zhuǎn)換指令ASC(FNC76)、ASCII打印指令PR(FNC77)、特殊功能模塊讀指令FROM(FNC78)和特殊功能模塊寫指令T0(FNC79)。
(1)數(shù)據(jù)輸入指令 數(shù)據(jù)輸入指令有10鍵輸入指令TKY(FNC70)、16鍵輸入指令HKY(FNC71)和數(shù)字開關(guān)輸入指令DSW(FNC72)。
10鍵輸入指令(D)TKY的使用如圖3-72所示。源操作數(shù)[S.]用X0為首元件,10個鍵X0~X11分別為對應數(shù)字0~9。X30接通時執(zhí)行TKY指令,如果以X2(2)、X9(8)、X3(3)、X0(0)的順序按鍵,則[D1.]中存入數(shù)據(jù)為2830,實現(xiàn)了將按鍵變成十進制的數(shù)字量。當送入的數(shù)大于9999,則位溢出并丟失。使用32位指令DTKY時,D1和D2組合使用,位大于99999999則位溢出。
圖3-72 10鍵輸入指令的使用
當按下X2后,M12置1并保持至另一鍵被按下,其它鍵也一樣。M10~M19動作對應于X0~X11。任一鍵按下,鍵信號置1直到該鍵放開。當兩個或更多的鍵被按下時,則首先按下的鍵有效。X30變?yōu)镺FF時,D0中的數(shù)據(jù)保持不變,但M10~M20全部為OFF。此指令的源操作數(shù)可取X、Y、M、和S,目標操作數(shù)[D.]可取KnY、KnM、KnS、T、C、D、V和Z,[D2.]可取Y、M、S。16位運算占7個程序步,32運算時占13個程序步。該指令在程序中只能使用一次。
16鍵輸入指令(D)HKY的作用是通過對鍵盤上的數(shù)字鍵和功能鍵輸入的內(nèi)容實現(xiàn)輸入的復合運算。如圖3-73所示,[S.]4個輸入元件,[D1.]4個掃描輸出點,[D2.]為鍵輸入的存儲元件。[D3.]指示讀出元件。十六鍵中0~9為數(shù)字鍵,A~F為功能鍵,HKY指令輸入的數(shù)字范圍為0~9999,以二進制的方式存放在D0中,如果大于9999則溢出。DHKY指令可在D0和D1中存放大為99999999的數(shù)據(jù)。功能鍵A~F與M0~M5對應,按下A鍵,M0置1并保持。按下D鍵M0置0,M3置1并保持。其余類推。如果同時按下多個鍵則先按下的有效。
圖3-73 16鍵輸入指令的使用
該指令源操作數(shù)為X,目標操作數(shù)[D1.]為Y。[D2]可以取T、C、D、V和Z,[D3.]可取Y、M和S。16位運算時占9個程序步,32位運算時為占17個程序步。掃描全部16鍵需8個掃描周期。HKY指令在程序中只能使用一次。
數(shù)字開關(guān)指令DSW的功能是讀入1組或2組4位數(shù)字開關(guān)的設(shè)置值。如圖3-74所示,源操作數(shù)[S]為X,用來輸入點。[D1]為目標操作數(shù)為Y,用來選通點。[D2]數(shù)據(jù)存儲單元,它可取T、C、D、V和Z。[n]數(shù)字開關(guān)組數(shù)。該指令只有16位運算,占9個程序步,可使用兩次。圖中,n=1指有1組BCD碼數(shù)字開關(guān)。輸入開關(guān)為X10~X13,按Y10~Y13的順序選通讀入。數(shù)據(jù)以二進制數(shù)的形式存放在D0中。若n=2,則有2組開關(guān),第2組開關(guān)接到X14~X17上,仍由Y10~Y13順序選通讀入,數(shù)據(jù)以二進制的形式存放在D1中,第2組數(shù)據(jù)只有在n=2時才有效。當X1保持為ON時,Y10~Y13依次為ON。一個周期完成后標志位M8029置1。
圖3-74 數(shù)字開關(guān)指令的使用
(2)數(shù)字譯碼輸出指令 數(shù)字譯碼輸出指令有七段譯碼指令SEGD(FNC73)和帶鎖存的七段顯示指令SEGL(FNC74)兩條。
七段譯碼指令SEGD(P) 如圖3-75所示,將[S.]元件的低4位所確定的十六進制數(shù)(0~F)經(jīng)譯碼后存于[D.]的元件中,以驅(qū)動七段顯示器,[D.]的8位保持不變。如果要顯示0,則應在D0中放入數(shù)據(jù)為3FH。
圖3-75 七段譯碼指令的使用
帶鎖存的7段顯示指令SEGL的作用是用12個掃描周期的時間來控制一組或兩組帶鎖存的七段譯碼顯示。
(3)方向開關(guān)指令 方向開關(guān)指令ARWS(FNC75)是用于方向開關(guān)的輸入和顯示。如圖3-76所示,該指令有四個參數(shù),源操作數(shù)[S]可選X、Y、M、S。圖中選擇X10開始的4個按鈕,位左移鍵和右移鍵用來輸入的位,增加鍵和減少鍵用來設(shè)定位的數(shù)值。X0接通時的是位,按一次右移鍵或左移鍵可移動一位。位的數(shù)據(jù)可由增加鍵和減少鍵來修改,其值可顯示在7段顯示器上。目標操作數(shù)[D1]為輸入的數(shù)據(jù),由7段顯示器監(jiān)視其中的值(操作數(shù)可用T、C、D、V、和Z),[D2]只能用Y做操作數(shù),n=0~3其確定的方法與SEGL指令相同。ARWS指令只能使用一次,而且必須用晶體管輸出型的PLC。
圖3-76 方向開關(guān)指令的使用
(4)ASEII碼轉(zhuǎn)換指令 ASCII碼轉(zhuǎn)換指令ASC(FNC76)的功能是將字符變換成ASCII碼,并存放在的元件中。如圖3-77所示,當X3有效時,則將FX2A變成ASCII碼并送入D300和D301中。源操作數(shù)是8個字節(jié)以下的字母或數(shù)字,目標操作數(shù)為T,C,D。它只有16位運算,占11個程序步。
圖 3-77 ASEII碼轉(zhuǎn)換指令說明
特殊功能模塊讀指令FROM(FNC78)和特殊功能模塊寫指令T0(FNC79)將在后面介紹。