PIC12F683 input algılamıyor

Peak2Peak

Aktif Üye
Katılım
27 Haziran 2020
Mesajlar
291
Kod:
#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ş
 

Forum istatistikleri

Konular
7,559
Mesajlar
126,559
Üyeler
3,058
Son üye
mgozalan

Son kaynaklar

Son profil mesajları

Python Geliştirmeye eklediğim yapay zeka sunucusu, yeni başlayanlar için roket etkisi
Bir insanın zeka seviyesinin en kolay tesbiti, sorduğu sorulardır.
yapay zeka interneti yedi bitirdi, arama motoru kullanan, forumlara yazan kaldı mı ?
Freemont2.0 herbokolog Freemont2.0 wrote on herbokolog's profile.
nick iniz yakıyor
:D
az bilgili çok meraklı
Back
Top