如何在step7程序中將16進(jìn)制數(shù)轉(zhuǎn)換成10進(jìn)制?
劉玉蓉
發(fā)布于2014-11-19 17:28
30
0
標(biāo)簽:
有一組變量格式為16進(jìn)制數(shù),比如B#16#14,我在程序中需要使用 "14"來(lái)做些邏輯判斷,請(qǐng)問(wèn)應(yīng)該怎么轉(zhuǎn)換好?14轉(zhuǎn)成10進(jìn)制為20,又不方便做邏輯,請(qǐng)教下怎么處理這個(gè)問(wèn)題好
問(wèn)題補(bǔ)充:
我嘗試用SCL中直接比較16進(jìn)制是可行的,比如地址為,DB1.DBB0,比較時(shí)直接寫(xiě) IF DB1.DBB0 = 16#14 THEN
但是LAD中怎么進(jìn)行方便的這樣的邏輯呢
佳答案
1、問(wèn)題很簡(jiǎn)單,不要顧及在PLC中存儲(chǔ)的數(shù)據(jù)格式,因?yàn)槎际鞘M(jìn)制數(shù)的。只考慮用來(lái)比較的數(shù)據(jù)14,如果這個(gè)14是十六進(jìn)制數(shù),則直接進(jìn)行比較。如果這個(gè)14是十進(jìn)制數(shù),則將其轉(zhuǎn)換為十六進(jìn)制數(shù)0E,再進(jìn)行比較。
2、在編程時(shí),如果一個(gè)字長(zhǎng)數(shù)據(jù)與14(十進(jìn)制數(shù))進(jìn)行比較,直接應(yīng)用:
L 14指令取數(shù)即可,系統(tǒng)會(huì)自動(dòng)將14(十進(jìn)制數(shù))轉(zhuǎn)換為十六進(jìn)制數(shù)0E。
3、問(wèn)題補(bǔ)充:LAD中怎么進(jìn)行方便的這樣的邏輯呢?
比較的輸入端直接寫(xiě)入十進(jìn)制數(shù)或十六進(jìn)制數(shù)均可,但注意要采用正確的數(shù)據(jù)類(lèi)型。見(jiàn):
見(jiàn)《S7-300的數(shù)據(jù)類(lèi)型》其中,8、常數(shù)的表示方法。連接:
https://blog.gkong.com/more.asp?name=zhyo720211&id=2005