picin 60 saniye sonra freeze olması

Başlatan koordinat, 07 Mart 2005, 13:50:04

koordinat

arkadaşlar ben 60 saniye sonra picin donmasını istiyorum fakat işlem yaparken bir yandan da saydırımak istemiyorum ama başka bir seçeneğim yok galiba.siz nedersiniz?örnek kodlar var mı?

ete

Kullandığın Pic'e bağlı olarak TMR0 veya TMR1 int oluşturacaksın. Şayet 16F628 kullanırsan onun TMR1'i 16 bit çalışıyor. Yani TMR1  sıfırdan 60.000'e kadar (4 MHzde) sayarsa 60 sn ye eder. Dolayısıyla TMR1'e 5.535 sayısını ver ve TMR1 sıfırlanınca INT oluşacak şekilde işlemi kontrol et.  ITN oluşunca SLEEP komutu ile pic'i uykuya sok.

KOlay Gelsin
ETE
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com

Veli B.

60 sn den sonra reset yiyinceye kadar pic çalışmasın istiyorsun.Doğrumu?

ete

@HexF2,

Ufak ama sonuca etkisi büyük bir hesap hatası yaptığımı fark ettim ikazından sonra.
Doğru hesap aşağıdaki gibi olmalı;

60 Saniye = 60.000 Milisaniye (ms)
60.000 ms = 60.000.000 Mikrosaniye (us)

Dolayısıyla TMR1 her 65.535 sayımından sonra sıfıra dönerse demekki;
60.000.000 / 65.535 = yaklaşık 915 defa TMR1'in çalışması gerekecek.
TMR1'i her seferinde 5.535 den başlatırsak, bu durumda ikinci bir SAYAC değişkeni kullanıp bunu 1000 defa saydırmamız gerekecektir.
Aslında TMR1 için bir 1/8 prescaler değeri var ama çok iyi anlamadım internal clock içinde çalışabiliyormu. Çalışmadığını farz edelim ve konuyu kısaca toparlayalım;
interrup bölümü şöyle olmalı;

Programın MAIN bölümü şöyle olmalı;

on int goto myint

Sure var bit
Sayac var word
Sure=0
Sayac=0
PIE1=1
T1Con=%00110001

Start:
If Sure=1 then
   @ Sleep
 endif
goto start

Disable
myint :
          SAYAC=SAYAC+1
          If Sayac=1000 then
            SURE=1
          TMR1=5535
          PIR1.0=0         ' int bayrağı silinecek
         Resume
Enable
end
         
Bu şekli ile işin hallolur diye düşünüyorum.
Bir dene istersen

Kolay Gelsin
Erol (ETE)
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com

koordinat

Alıntı yapılan: "katana"60 sn den sonra reset yiyinceye kadar pic çalışmasın istiyorsun.Doğrumu?
evet doğru katanacığım.cevaplar için teşekkürler.sorun olursa yazarım.