1. sayfa (Toplam 1 sayfa)

MACRO YARDIM

Gönderilme zamanı: 18 Tem 2020, 13:51
gönderen es_fb
Merhaba herkese delta hmi bu şekilde bir macro yazdım karşılaştırma olarak kullanıyorum. $M0 ve ENRCP 0 VE 4 LER SAYI GİRDİSİ OLARAK KULLANIYORUM.
$M0 DEKİ DEĞER ENRCP0 İLE EŞİTSE CALL 1 EŞİT DEĞİLSE CALL 2 Yİ çağırmam lazım bu şekilde oluyor . asıl sorun enrcp4 ü kullanınca ortaya çıkıyor.
$M0 enrcp0 eşitse cal 1
$M0 enrcp4 eşit olmadığı için oda cal 2 yi çağırıyor.ve sıralı olarak sürekli flaşör olarak çağırıyorlar.buda işeme yaramıyor.
Benim istediğim cal1 çağırdığımda cal2 aktif olsada iptal etmem yani öncelik cal 1 olması lazım.
not: Ayrı encrp4 de cal kullanırsam sorun yok olur ama 512 cal kapasitesi yetmiyor. yani işlem çok uzun ben sadece 2 komut üzerinden yardımınızı istiyorum.

IF $M0 == ENRCP0
CALL 1
ENDIF
IF $M0 != ENRCP0
CALL 2
ENDIF
IF $M0 == ENRCP4
CALL 1
ENDIF
IF $M0 != ENRCP4
CALL 2

Re: MACRO YARDIM

Gönderilme zamanı: 20 Tem 2020, 10:07
gönderen Uğur
Aşağıdaki şekilde yaparsanız iki şarttan herhangi biri aktif olursa 1. olmazsa 2. alt programı çağırır.

Kod: Tümünü seç

IF $M0 == ENRCP0 THEN CALL 1
IF $M0 == ENRCP4 THEN CALL 1
CALL 2
END

Re: MACRO YARDIM

Gönderilme zamanı: 20 Tem 2020, 15:33
gönderen es_fb
Benimde demek istediğim hangi şart CALL 1 çağırırsa CALL 2 iptal olsun hiç bir durumda çağrılmasın.

CALL 1 de

BITON ({Link2}1@M1)
RET

CALL 2 de

BITOFF ({Link2}1@M1)

Benim hatam 1 şart kabul olunca call 1 geliyor . Ama 2 şart kabul olmadığı için oda call 2 yi getiriyor.oda flaşör gibi çalışıyor

Re: MACRO YARDIM

Gönderilme zamanı: 20 Tem 2020, 15:50
gönderen Uğur
Yukarıdaki yazdığım şekilde denerseniz her hangi şart aktif olursa 1 hiçbiri olmazsa 2 çağırılacak.