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)
Önemli Bilgilendirme!
Forum sayfamızdan sınırsız faydalanmak için kullanıcı kaydı oluşturup giriş yapmalısınız. Özellikle mesaj eklentileri, linkler kullanıcı girişi yapmazsanız görüntülenmeyecektir. Aşağıdaki linke tıklayarak üye değilseniz kullanıcı oluşturabilirsiniz.
https://destek.delta-turkey.com/ucp.php?mode=register
Forum sayfamızdan sınırsız faydalanmak için kullanıcı kaydı oluşturup giriş yapmalısınız. Özellikle mesaj eklentileri, linkler kullanıcı girişi yapmazsanız görüntülenmeyecektir. Aşağıdaki linke tıklayarak üye değilseniz kullanıcı oluşturabilirsiniz.
https://destek.delta-turkey.com/ucp.php?mode=register
DTC'deki Sıcaklık Değerini Float Olarak Yansıtmak
- mahsumyasar
- Mesajlar: 33
- Kayıt: 15 Ağu 2025, 17:19
- İletişim:
- Durum: Çevrimiçi
- İslam
- Mesajlar: 2002
- Kayıt: 05 Tem 2018, 13:55
- Konum: İstanbul
- İletişim:
- Durum: Çevrimdışı
Re: DTC'deki Sıcaklık Değerini Float Olarak Yansıtmak
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)
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)
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
İslam Karadeniz - Technical Support Engineer - DELTA Electronics Turkey