CASE:創(chuàng)建多路分支
CASE語句用來選擇幾個分支程序部分之一。選擇是基于選擇表達式當前值的。
使用“創(chuàng)建多路分支”指令,可以根據(jù)數(shù)字表達式的值執(zhí)行多個指令序列中的一個。
表達式的值必須為整數(shù)。執(zhí)行該指令時,會將表達式的值與多個常數(shù)的值進行比較。如果表達式的值等
于某個常數(shù)的值,則將執(zhí)行緊跟在該常數(shù)后編寫的指令。常數(shù)可以為以下值:
? 整數(shù)(例如,5)
? 整數(shù)的范圍(例如,15..20)
? 由整數(shù)和范圍組成的枚舉(例如,10、11、15..20)
CASE語句按下列規(guī)則執(zhí)行:
·選擇表達式必須返回一個整數(shù)類型的值。
·當CASE語句被處理時,程序檢查是否選擇表達式的值包含在指定的值表之中。如果找到匹配項,列表指定的語句部分將被執(zhí)行。
·如果沒有發(fā)現(xiàn)匹配項,程序選擇ELSE后面的語句,或者如果ELSE分支不存在則無語句可執(zhí)行。
如果表達式的值等于第一個常數(shù)(<常數(shù) 1="">)的值,則將執(zhí)行緊跟在該常數(shù)后編寫的指令(<指令 1="">)。程序?qū)?END_CASE 后繼續(xù)執(zhí)行。如果表達式的值不等于第一個常數(shù)(<常數(shù) 1="">)的值,則會將該值與下一個設(shè)定的常數(shù)值進行比較。以這種方式執(zhí)行 CASE 指令直至比較的值相等為止。如果表達式的值與所有設(shè)定的常數(shù)值均不相等,則將執(zhí)行 ELSE 后編寫的指令(<指令 0="">)。ELSE 是一個可選的語法部分,可以省略。此外,CASE 指令也可通過使用 CASE 替換一個指令塊來進行嵌套。END_CASE 表示 CASE 指令結(jié)束。
根據(jù)管角value輸入數(shù)來決定OUT1輸出的數(shù)
FUNCTION FC1 : INT 建立FC1程序,輸出反饋值得屬性是INT整數(shù)
VAR_input
value:INT;
END_VAR
VAR_outPUT
OUT1:INT;
END_VAR
VAR_TEMP
END_VAR
CASEvalue OF
1:
OUT1:=1 ;
2:
OUT1:=2 ;
3:
OUT1:=3 ;
4:
OUT1:=4 ;
5:
OUT1:=5 ;
6:
OUT1:=6 ;
ELSE: 不是1-6就輸出99
OUT1:=99 ;
END_CASE;
FC1:= OUT1;FC1的反饋值和OUT1值一致.
END_FUNCTION
-
程序
+關(guān)注
關(guān)注
117文章
3797瀏覽量
81428 -
Case
+關(guān)注
關(guān)注
0文章
28瀏覽量
13405 -
常數(shù)
+關(guān)注
關(guān)注
0文章
6瀏覽量
5688
原文標題:PLC -SCL CASE 練習(xí)
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
嵌入式學(xué)習(xí)-飛凌嵌入式ElfBoard ELF 1板卡-本地倉庫管理之分支間的操作
嵌入式學(xué)習(xí)-飛凌嵌入式ElfBoard ELF 1板卡-本地倉庫管理之當前分支內(nèi)的操作
飛凌嵌入式ElfBoard ELF 1板卡-本地倉庫管理之分支間的操作
飛凌嵌入式ElfBoard ELF 1板卡-本地倉庫管理之當前分支內(nèi)的操作
CAN總線十萬個為什么 | 為什么CAN總線分支不能過長?
![CAN總線十萬個為什么 | 為什么CAN總線<b class='flag-5'>分支</b>不能過長?](https://file.elecfans.com/web2/M00/50/DA/pYYBAGLH6TyAB71EAAAPQ7KgtYA038.png)
三格電子新品上市—EtherCAT分支器
![三格電子新品上市—EtherCAT<b class='flag-5'>分支</b>器](https://file1.elecfans.com/web2/M00/0A/C1/wKgZomcoKWOAPxg4AAG_GEATRhQ190.png)
如果想要多路錄音存儲并且多路播放,TLV320AIC3106應(yīng)該如何應(yīng)用?
為什么CAN總線分支在0.3米內(nèi)是最可靠的?
![為什么CAN總線<b class='flag-5'>分支</b>在0.3米內(nèi)是最可靠的?](https://file.elecfans.com/web2/M00/50/DA/pYYBAGLH6TyAB71EAAAPQ7KgtYA038.png)
mpo轉(zhuǎn)sc分支線纜使用在哪些地方
頻分多路復(fù)用和時分多路復(fù)用的區(qū)別有哪些
多路信號發(fā)生器的設(shè)計與優(yōu)化
邏輯器件多路轉(zhuǎn)換器是什么?
哪些場景下用到mpo-lc分支跳線
OpenELA接手繼續(xù)維護Linux 4.14分支
頻分多路復(fù)用的原理 頻分多路復(fù)用方式的分類
![頻分<b class='flag-5'>多路</b>復(fù)用的原理 頻分<b class='flag-5'>多路</b>復(fù)用方式的分類](https://file1.elecfans.com/web2/M00/C3/98/wKgaomXmtwGAbECoAAGsM23fXbE656.jpg)
評論