ds1302 ile zaman ayarlı motor

Başlatan pics, 25 Kasım 2020, 14:32:15

pics

Merhabalar pic'e yeni başladım oyüzden mazur görün pic c ile derlenen bir devrede ds1302 ile zaman alınıyor sonrasında ben bu devrenin mesela pazartesi 2 ile 3 arası motoru çalıştırmasını istiyorum o kodu nasıl yazarım araştırdım biraz ama bulamadım ?

ete

Bu soru çok genel bir soru. Daha spesifik daha özel bşr noktaya işaret eden bir soru olmalı.
Ben yinede mantık kullanarak sorunuza cevap vermeye çalışayım.
DS1302 bir zaman tutan entegre. İçinde registerleri var. Bunlar Saniye, Dakika, Saat, Haftanın Günü, Ayın Günü, Ayın numarası, Yıl gibi değerleri tutar. Bir kere saat ve takvim ayarı verdinizmi kendi osilatörünü kullanarak zamanı ilerletir.
İşlemci ile birlikte bu RTC yi kullanarak her geçen saniyede zamanı ve takvimi okursun.
Şimdi farzedelim DS1302 den zamanı okudum.
Elimde Sn, Dak, Saat , haftanın günü, Ay, Ayın gün ve yıl bilgileri mevcut.
Haftanın günleri Pazar=1 sonrasında gelen günler 2-3-4-5-6-7 şeklinde gidiyor idi hatırladığım.
Okumanın hemen ardından programda;
Şayet Haftanın günü =2 VE Saat>14 den büyük ise VE yine Saat<15 küçük ise git motoru çalıştır şeklinde bir komut satırı eklemen gerekir. Komut şekli aşağıdaki gibi olacak aşağı yukarı.

IF HAFGUN=2 and Saat>14 and Saat<15 THEN MOTOR=1 şeklinde program koduna çevrilebilir.
C dilinde THEN kullanılmıyor ama ben anlayasın diye bu şekilde yazdım. Sen bunu kullandığın C derleyicisine çevirebilirsin.

Ete

pics


Powered by EzPortal