16f84a ile harici osilator kullanarak timer yardım

ruzgar78

Üye
Katılım
5 Tem 2009
Mesajlar
26
Puanları
1
Arkadaşlar pic16f628a harici osilator kullanarak 6 saat de bir röleyi açıp kapatmak istiyorum formlarda ve diğer sitelerde araştırdım 16f628a içi dahili osc kullanarak anlatılmış ben probasic biliyorum bu konuda yardımcı olacak arkadaş varmı acaba örnek bi çalışma bile olur.

Saygılar...
 
Arkadaşlar düzeltiyorum 16f84a kullanacağım harici osilatör kullanarak yapmak istiyorum .
 
Tmm harici 4Mhz lik osilatör bağlayarak bu işi yapabilirsin.gecıkme dongüsünü 6 saate hesaplayarak ve döngüyü sağlayarak yapabilirsin.
 
Arkadaşım mesajıma cevap verdiğin için teşekkür ederim pic de yeni sayılırım bunula iligili bir örnek olursa çok yardımcı ollursun buna benze bir çok konu anlatımı buldum fakat hep 16f628a dahili osilatör kullanarak yapmış elinde bir örnek varmı acaba programın kendi içinde yaptırmak istiyorum bunu lcd olmadan
 
16f84a nın 15 ve 16 ıncı bacaklarında zaten 4 Mhz lik bir osilator var devreyi yaptım çalışıyor bu devre içinde aynı zamanda 6 saatde bir gecikme döngüsü yapmak istiyorum bunun için tmr0 nasıl kullancam o konu hakkında bilgi almak istiyorum.16f628a ile basic dilinde bir örnek varsa çok sevinirim
 
Düzeltiyorum takılıp kaldım 16f628a ya 16f 84a ile ilgili bir örnek varsa çok faydası olacak bana ögrenmiş olacagım şimdiden teşekkür ederim
 
16f84a kullanma bikere , sadece 1 tane timer'ı var .
Bu iş için yapılan şudur , birden fazla timer'ı olan bir pic kullanırsın (16f628a) , timer1 için harici 32.768KHz 'lik kristal takarsın. Bu sayede Real Time Clock yapmış olursun. Timer1 pic içinde yazacağın program ile sürekli olarak saniye , dakika , saat , gün değişkenlerini arttırır. Timer1 her kesmede pici sleep'ten kaldırabildiği için değişik uygulamalarda da işini görür.
Timer0 , timer2 de sana kalır.

Başlamadan önce bilinmesi gerekenler:
-timer ile kesme kullanımı
-timer'ın harici saat ile arttırılması
-32,768KHz ile Real Time Clock mantığı

Küçük bir örnek kod vereyim , Her 1.00000 saniyede kesmeye gidiliyor , kesmede yapılan işlem kabaca şudur:
Kod:
;===============SAAT AYARI 1================================================

SAAT1		incf		saniyebir,f	;Her 1sn de bu alt programa gelip saniye sayacı 1 arttırılır
		movlw		.10
		subwf		saniyebir,w
		btfss		STATUS,Z
		GOTO		CIK
		clrf		saniyebir
		incf		saniyeon,f
		movlw		.6
		subwf		saniyeon,w
		btfss		STATUS,Z
		GOTO		CIK
		clrf		saniyeon
		incf		dakikabir,f
		movlw		.10
		subwf		dakikabir,w
		btfss		STATUS,Z
		GOTO		CIK
		clrf		dakikabir
		incf		dakikaon,f
		movlw		.6
		subwf		dakikabir,w
		btfss		STATUS,Z
		GOTO		CIK
		clrf		dakikaon
		incf		saat,f
CIK		nop
		return

bu şekilde saat ve gün de eklenebilir
 
hocam teşekkür ederim bilgilerinden ötürü yanlız ben 16f84a kullandım ve bu devrede her 6 saat de bir 30 dk röle açıp kapatmak isitiyprum bir diğer husus da ben pic basic biliyorum bu timer işini öğrenmek gerek şimdi ta baştan devreyi yenilemek lazım 628a için ve sadece 1 tane timer ile bu uygulamayı yapamıyormuyuz.
 
yapabiliriz imkansız yoktur bi işlerde genelde: )
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…