ccs c bilgi terslenmesi

Başlatan yusuffyk, 11 Aralık 2011, 11:55:36

yusuffyk

şu aralar ccs c ile uğraşıyorum basit basit devreler yapıyorum ama şunu yapamadım

deneme için pic16f84a kullnıyorum
ra0 da bi buton var
rb0 da bi led var

benim istediğim ra0 ucuna 5v geldiğindde led sönsün 0v geldiğinde led yansın ama programını yazamadım bu bilgiyi nasıl tersleyeceğiz

şöyle bişşey yaptım ama olmadı

    #include <16F84A.H>
    #use delay(clock=4000000)
    #use fast_io(a)
    #use fast_io(b)
    int1 x;
    int1 ~y;

    void main ()          // Ana Fonksiyon
    
    {

    set_tris_a(0b11111111); 
    set_tris_b(0b00000000); 


    basla:
    x=input (pin_a0);
    x=~y;
    output_bit (pin_b0,~y);
    goto basla;

   }
   
http://yusuffyk.com  ||  http://www.youtube.com/yusuffyk

CaFFeiNe

#1
CCS Help -> Expressions -> Operators

! - Logical negation operator

while(TRUE)
{
   output_bit(PIN_B0, !input(PIN_A0));
}



tacettin

Alıntı Yapx=~y;

yerine
y=~x;


dene rmisin?

yusuffyk

tacettin hocam olmadı denedim ama

CaFFeiNe usta tam olarak onunlada çalıştıramadım biraz daha açarak yazabilir misin
http://yusuffyk.com  ||  http://www.youtube.com/yusuffyk

justice_for_all

#4
    
   #include <16F84A.H>
   #FUSES NOWDT                    //No Watch Dog Timer
   #FUSES XT                       //Resistor/Capacitor Osc with CLKOUT
   #FUSES NOPUT                    //No Power Up Timer
   #FUSES NOPROTECT                //Code not protected from reading
    #use delay(clock=4000000)
    #use fast_io(a)
    #use fast_io(b)
    int1 x;
    int1 y;

    void main ()          // Ana Fonksiyon
    
    {

    set_tris_a(0b11111111); 
    set_tris_b(0b00000000); 


    basla:
    x=input(pin_a0);
    y=~x;
    output_bit (pin_b0,y);
    delay_ms(500);
    goto basla;

   }


bu sekilde denermisin bide.ayrica config ayarlarinida yapmamissin simdi ben calistirdim
Deneyip de başaramayanları değil, yalnızca denemeye bile kalkışmayanları yargıla.   Gökhan Arslanbay

yusuffyk

hocam isis simülasyonda denedim oda çalışmadı
http://yusuffyk.com  ||  http://www.youtube.com/yusuffyk

justice_for_all

az once duzeltme yaptim onu yap tekrar dene cunku bende calisti hala calismiyosa proteusunda bi problem var..
Deneyip de başaramayanları değil, yalnızca denemeye bile kalkışmayanları yargıla.   Gökhan Arslanbay

necati

compiler da ? işaretini tıkla
Bulunacak kısmina     out yaz
alttan     output_bit   tikla
çıkan sayfada CaFFeiNe hocamizin
yazdıgı şekili incele ve çalıştıgını gör

output_bit(PIN_B0,input(PIN_B1));//ayni

output_bit(PIN_B0,!input(PIN_B1));//tersi
[email]entegreterbiyecisi@yahoo.com[/email]

eraygil

if(input(pin_a0))
{
output_low(pin_b0);
}
else
{
output_high(pin_b0);
}


sonsuz döngüde bu komutları yazarsan sorunun çözülmüş olur