1. sayfa (Toplam 1 sayfa)

DTC'deki Sıcaklık Değerini Float Olarak Yansıtmak

Gönderilme zamanı: 14 Eki 2025, 11:42
gönderen mahsumyasar
DTC1000 modülünden aldığım anlık sıcaklık değerini alıp toplama, çıkarma ve bölme gibi işlemler yapmak istiyorum. Küsurat değerlerinin kaybolmaması için floata çevirip diğer işlemleri yapmam gerektiğini düşündüm. Denemek amaçlı bu kodu background macroya yazdım. Numerical displayde format kısmında floatingi seçtim ancak sonucunda 0 çıkıyor. Signed decimal seçince değerin küsürat kısımı çıkmıyor. 20.6 iken 21 gösteriyor. Yuvarlama yapıyor. DTCden aldığım bu veriyi en rahat nasıl floata çevirebilirim?

$20 = {Link1}3@TEMP_CTRL-1000
$21 = TODWORD($20)
$22 = FMOV($21)
$23 = FDIV($22, 10) (Signed DW)

Re: DTC'deki Sıcaklık Değerini Float Olarak Yansıtmak

Gönderilme zamanı: 14 Eki 2025, 11:54
gönderen İslam
Merhaba,

Aşağıdaki macro satırlarına göre $0'dan gelen İnteger değer ilk olarak FCNV komutu ile Floating tabana çevirip $10 datasına taşındı, sonrasında FDIV komutu ile 10'a bölünüp sonucu $20 datasına atıldı.

$10 = FCNV($0) (Signed DW)
$20 = FDIV($10, 10) (Signed DW)
float.png