PIC12F683 input algılamıyor

Peak2Peak

Aktif Üye
Katılım
27 Haziran 2020
Mesajlar
289
C++:
#pragma config FOSC = INTOSCCLK // Oscillator Selection bits (INTOSC oscillator: CLKOUT function on RA4/OSC2/CLKOUT pin, I/O function on RA5/OSC1/CLKIN)
#pragma config WDTE = OFF       // Watchdog Timer Enable bit (WDT disabled)
#pragma config PWRTE = OFF      // Power-up Timer Enable bit (PWRT disabled)
#pragma config MCLRE = OFF      // MCLR Pin Function Select bit (MCLR pin function is MCLR)
#pragma config CP = ON          // Code Protection bit (Program memory code protection is disabled)
#pragma config CPD = ON         // Data Code Protection bit (Data memory code protection is disabled)
#pragma config BOREN = OFF      // Brown Out Detect (BOR disabled)
#pragma config IESO = OFF       // Internal External Switchover bit (Internal External Switchover mode is enabled)
#pragma config FCMEN = OFF      // Fail-Safe Clock Monitor Enabled bit (Fail-Safe Clock Monitor is enabled)

#define _XTAL_FREQ 4000000

#include <xc.h>

void main(void)
{
    TRISIO=0x02;//input  output

    while(1)
    {
        if(GP1==0)
        {
            GP2=0;
            __delay_ms(500);
            GP2=1;
            __delay_ms(500);
        }
        else
        {
            GP2=1;
        }
   }
}

Kodum bu şekilde gp1 inputunda 4.2 gerilim gözüküyor ama if bloğunun içine giriyor neyde hata yapıyorum.
 
Last edited by a moderator:
bayrak kullan mutlaka.

ifin içinde bayrağı indir iften çıkınca bayrağı kaldır.
eğer buton okuyorsan pull direnci ve yazılımsal debounce yapmayı dene.
 
if bloğuna giriyor derken, pals üretiyor mu demek istiyorsun? Yoksa her halukarda if bloguna giriyor kod, çünkü program öyle. Doğru GPIO ya baktığından emin ol. GP1 arızalanmış da olabilir. Başka bir GPIO ile dene.
 
if bloğuna giriyor derken, pals üretiyor mu demek istiyorsun? Yoksa her halukarda if bloguna giriyor kod, çünkü program öyle. Doğru GPIO ya baktığından emin ol. GP1 arızalanmış da olabilir. Başka bir GPIO ile dene.
comparatörün çıkışının okumaya çalışıyorum.
+ girişi daha yüksek gerilimde high durumda 4.2V çıkartıyor ve okumaya çalıştığım girişde 10k direnç ile pull up yapılmış durumda.hep ife giriyor.
 
comparatörün çıkışının okumaya çalışıyorum.
+ girişi daha yüksek gerilimde high durumda 4.2V çıkartıyor ve okumaya çalıştığım girişde 10k direnç ile pull up yapılmış durumda.hep ife giriyor.
herşeyi ayırın işlemci giriş çıkışları tamamen çıplak kalsın.

o pini direkt kısa bir telle veya direnç ile SORUNSUZ TEMAS ETTİĞİNDEN emin olarak 1 -HIGH konumuna alın ve gözlem yapın.

Belki comparatorunuz çok çok kısa süreli kendini 0a çekiyor ve bunu fark etmiyor olabilirsiniz.
 
herşeyi ayırın işlemci giriş çıkışları tamamen çıplak kalsın.

o pini direkt kısa bir telle veya direnç ile SORUNSUZ TEMAS ETTİĞİNDEN emin olarak 1 -HIGH konumuna alın ve gözlem yapın.

Belki comparatorunuz çok çok kısa süreli kendini 0a çekiyor ve bunu fark etmiyor olabilirsiniz.
merhaba teşekkürler dediklerinizi yaptım kablo lehimleyerek 5V ve gnd olduklarına emin oldum.Hatta gp4 içinde aynı yaptım.Sonuç alamıyorum.High lowa göre tepki vermiyor.
Bir sorunda input gerilimi değiştirmeden if koşulunu değiştiriyorum bu sefer öbür bloğa giriyor.Acaba kapatmam gereken başka ayarlar mı var?
 
PIC in içindeki komparatörün yapılandırmasına odaklan. Baştan komparatör kullandığını belirtseydin doğrudan oraya bakmanı söylerdim. Yoksa pinlerde falan hata olma olasılığı, komparatör yapılandırma hatasından çok daha düşüktür.
 
merhaba teşekkürler dediklerinizi yaptım kablo lehimleyerek 5V ve gnd olduklarına emin oldum.Hatta gp4 içinde aynı yaptım.Sonuç alamıyorum.High lowa göre tepki vermiyor.
Bir sorunda input gerilimi değiştirmeden if koşulunu değiştiriyorum bu sefer öbür bloğa giriyor.Acaba kapatmam gereken başka ayarlar mı var?
malesef çok çok az pic bilgim var ayarlar kısmında çok fazla yardımcı olamayacağım.

şöyle bir tavsiye verebilirim.
internal osilatör kullanıyorsan ve chipin klon chip ise osilatörün sapıtıyor olabilir ilk defa kullandıpın bir işlemciyse önce blink uygulamaları vs. yap en azından sorunsuz çalıştığını teyit et.
 
malesef çok çok az pic bilgim var ayarlar kısmında çok fazla yardımcı olamayacağım.

şöyle bir tavsiye verebilirim.
internal osilatör kullanıyorsan ve chipin klon chip ise osilatörün sapıtıyor olabilir ilk defa kullandıpın bir işlemciyse önce blink uygulamaları vs. yap en azından sorunsuz çalıştığını teyit et.
çözdüm comparatörü kapatmam gerekiyormuş
 

Çevrimiçi üyeler

Çevrimiçi üye yok.

Forum istatistikleri

Konular
5,844
Mesajlar
99,713
Üyeler
2,481
Son üye
rfdog12

Son kaynaklar

Son profil mesajları

gruptaki arkadaşlara selamlar. sıteyi bu gün fark ettim. Asansör için 2x7 segment LCD gösterge üretmek istiyorum. acaba bu sayfadaki arkadaşlardan destek alabilirmiyim. LCD nin mantık açılımı ektedir.
deneyci wrote on TA3UIS's profile.
Selam.
Amatör telsiz lisansı nasıl alınıyor?
Lisansı olmayanı forumlarına almıyorlar. :)
Bilgi alamıyoruz.
cemalettin keçeci wrote on HaydarBaris's profile.
barış kardeşim bende bu sene akıllı denizaltı projesine girdim ve sensörleri arastırıyorum tam olarak hangi sensör ve markaları kullandınız yardımcı olabilir misin?
m.white wrote on Altair's profile.
İyi akşamlar.Arabanız ne marka ve sorunu nedir.Ben araba tamircisi değilim ama tamirden anlarım.
* En mühim ve feyizli vazifelerimiz millî eğitim işleridir. Millî eğitim işlerinde mutlaka muzaffer olmak lâzımdır. Bir milletin hakikî kurtuluşu ancak bu suretle olur. (1922)
Back
Top