Merhaba arkadaslar;
Benim projemde sole bı sıkıntım var arkadaslar
Ben atıyorum rb0 a 20 kere sınyal geldıgınde yada sayıcı gıbı bısı 20 kez saydıgında ra0 dan cıkıs vermesını ıstıyorum.Bana basit bir şekilde sadece 20 sinyalde 1 cıkıs verebılcek kodları yazabılırmsnz.
Sagolun yardımlarınızı bekliyorum.
Hoşgeldiniz..
[Lütfen Türkçemize Daha İyi Davranalım..]
Alıntı yapılan: A0px - 17 Eylül 2016, 19:35:37
Merhaba arkadaslar;
Benim projemde sole bı sıkıntım var arkadaslar
Ben atıyorum rb0 a 20 kere sınyal geldıgınde yada sayıcı gıbı bısı 20 kez saydıgında ra0 dan cıkıs vermesını ıstıyorum.Bana basit bir şekilde sadece 20 sinyalde 1 cıkıs verebılcek kodları yazabılırmsnz.
Sagolun yardımlarınızı bekliyorum.
yazabiliriz siz şemasını çıkarabilirmisiniz?
Alıntı yapılan: muhittin_kaplan - 17 Eylül 2016, 22:13:17
Hoşgeldiniz..
[Lütfen Türkçemize Daha İyi Davranalım..]
yeni mezun bir mühendis yaptigi is basvurusuna olumlu yanit alir, sirket görüsmeye çagirir. Konusmanin sonlarina dogru yönetici adama sorar:
- Peki, senin sirketten beklentilerin neler?
- Öncelikli olarak bir araba isterim. Ayrica su anda bulundugum dairenin kirasi biraz fazla. Onu da sirketin karsilamasi iyi olur. Maas olarak da 5,000 Dolar yeterli.
Sirket yöneticisi gayet ciddi dinler, sonra:
- Biz sana son model bir Mercedes ve Tarabya'da bir villa verecegiz. Ayrica bizim bu pozisyon için planladigimiz maas 6000 dolardi, der. Elemanimizin gözleri disari firlar:
- Saka yapiyorsunuz, der. Sirket yöneticisi gayet sakin cevap vermiş:
- Önce siz baslattiniz.
Bazen ne yazacagini bilemiyor insan !
Evet semayı cıkarabilirim ilk etapda en basitinden yazsaniz bile bana fikir olucağından onu geliştirebilirim.Tabiki vaktiniz uygunsa proteus için malzemeleri ve ufak bi açıklamada yapabilirsinz çok sagolun arkadaşlar
#include <16F877.h>
#Fuses XT,NOWDT
#use delay(clock=4000000)// 4 MHz osilatör kullanılacak
int16 say;
Void Main()
{
while(True)
{
if (input(Pin_B0) say++;
if (say==20) output_high(Pin_C0);
while(input(Pin_B0));
}
}
Salih cok tesekkur ederım anladıgım kadarıyla b0 a bı buton koysam c0da bı led koysam ve butona 20 kere bassam ledın yanması gerekıcek degılmı
Alıntı yapılan: A0px - 18 Eylül 2016, 12:28:08
Salih cok tesekkur ederım anladıgım kadarıyla b0 a bı buton koysam c0da bı led koysam ve butona 20 kere bassam ledın yanması gerekıcek degılmı
Evet. Aynı zamanda, RB0 girişi pull-down olarak ayarlandığı kabul edilmiştir.
Alıntı yapılan: Salih - 18 Eylül 2016, 11:47:29
#include <16F877.h>
#Fuses XT,NOWDT
#use delay(clock=4000000)// 4 MHz osilatör kullanılacak
int16 say;
Void Main()
{
while(True)
{
if (input(Pin_B0) say++;
if (say==20) output_high(Pin_C0);
while(input(Pin_B0));
}
}
Salih Derleyici;
if (input(Pin_B0) say++; error veriyor.
Birde pull down olarak kabul edilmiştir.Dedigin durumda benim bir şey yapmama gerek varmı.
Devreme ek birşeyler eklemem gerekiyormu.
Proteusda kurduğumda devreyi c0 pini (1) konumda hep.Kodlarda mı hata var bendemi bilemedim.
Kusura bakma son parantezi unutmuşum.
if (input(Pin_B0)) say++;
Tekrardan Rahatsız ediyorum kusuruma bakmayın.
Salih verdigi kodlar çalıştı fakat stabil çalışmıyor program.
say==20 'yi 5 düşürdüm, butona pull down yaptım ama butona 10 kere bazen 9 kere bazen 11,12 kere basınca çıkış veriyor.
Atladığım bir yermi var acaba.
say'ı 2 yapıyorum 4 5 kere butona basınca çıkış veriyor.
Birbaşka sorum ise bu pic saniyede kac sayma yapar.
Yardımlarınızı bekliyorum.
Şöyle dene düzgün çalışır.
Mesele "buton arkı" forumda ve nette detaylı anlatım var.
#include <16F877.h>
#Fuses XT,NOWDT
#use delay(clock=4000000)// 4 MHz osilatör kullanılacak
int16 say;
Void Main()
{
while(True)
{
if (input(Pin_B0)
{
delay_ms(30);
say++;
if (say==20) output_high(Pin_C0);
while(input(Pin_B0));
delay_ms(30);
}
}
}
4 MHz kristal ile saniyede 1 milyon (asm) komut işler.
Yani buton arkını bile okur.
Yada saniyede 10 bin defa butona basıp bıraksan rahatlıkla okuyabilirsin :)
Çok teşekkürler.yarın hayırlısıyla deneyip son durumu paylaşıcam.
Evet Program şuan gayet stabil çalışıyor delay ms 1 yapsam bile sorunsuz çalışmaktadır.
sağolun arkadaşlar.
Sağolun picproje.