avatar_ete

IR_HABERLEŞME PROJESİ

Başlatan ete, 21 Haziran 2015, 18:44:10

ete

Bu hata sigorta ayarlarının derleme esnasında iki defa işlenmesi durumunda ortaya çıkar.
Birisi programın içineki ayarlar, diğeride MPASM klasöründe yer alan işlemciye ait INC dosyasındaki ayarlar. Birinden birini kapatmalısın. EN uygunu INC dosyasındakiler.
Aşağıdaki linki dikkatlice oku. Hepsini okuduktan sonra Özellikle aşağıdaki satır ve sonrasına dikkat et.

"Sigorta ayarlarıda derlemenin 64 bit yada 32 bit yapılmasına göre değişiklik arzeder."

https://etepic.com/index.php/topic,1687.0.html

Ete


fero

VERDİĞİNİZ ÖRNEKLERİ BU SEFER DEİĞİŞİKLİK YAPMADAN DİREK YÜKLEYİP PROTEUSTA DENEDİM FAKAT ÇALIŞMADI HOCAM ?. HEWRHANGİ Bİ HATA DA VERMEDİ. VERDİĞİNİZ DEVREYE GÖRE DENEDİM HEPSİNİ . AND KAPILI OLACAK OLANLARA DİKKAT EDEREK YAPTIM .HATA VERMEDİĞİ İÇİN SADECE ÇALIŞMADIĞINI SÖLEYEBİLİRİM HOCAM??

ete

#107
Büyük harflerle mesaj yazmayın. Bak bakalım bir başkası yazmışmı büyük harflerle?
Anlamını bilmiyorsan söyleyeyim. Kızgınlık ifadesi bağırma vs anlamına geliyor. Mesjını küçük harfe çevir.

Çalışmayan nedir, daha önce verilmiş bir kod bile olsa buraya çalıştıramadığın kodu burada vermen gerekiyor.
Elindeki kumandayı ben aynı kodla kullanıyorum. Sorun programda değil ama çevresel şartlarda kurduğun devrede elindeki kumanda da her şeyde olabilir. Örnek vereyim. O kumandanın pili CR2025 olması gerekiyor. Birkere bile CR2032 taktın ise vede sonradan 2025 takmış olsan bile pil boşluk yapıp çalıştırmıyor kumandayı. İçini açacaksın pil yatağındaki + terminale değen uçlar yatmış duruyor onları tekrar bir cımbız vs ile kaldıracaksın yeniden takacaksın o pilleri. Pilinde sağlam olacak.

Diğer sorunlar için devre şeman ve programı görmek gerekir.
Bir şey daha ekleyeyim. İnfrared vericilerin verdiği sinyain aynısını almak için IR_GÖZ dediğimiz eleman çıkışını direk kullanmak gerekir. Böylece vericiden HIGH geldiğinde gözden de HIGH çıkar. Bu mantığa uygun program (NEC protokolü için) NEC_DUZ_KES şeklinde isimlendirildi.
Göz çıkışını bir NPN transistörden geçirirseniz gelen sinyali ters çevirmiş olursunuz. Bu durumda vericiden HIGH geldiğinde siz transistör çıkışından LOW alırsınız. Bu sisteme ait programda NEC_TERS_KES şeklinde isimlendirilmiştir. Kullanıcılar bu hususa dikkat edip uygun programı seçmeliler.

Diğer bir dikkat edilecek husus ise verilen programların çalışma  (OSC) frekanslarının değiştirilmemesidir. Zira programda PULSIN komutu kullanılmış olup bu komut OSC frekansına bağlı olarak bir değer okur. Frekans değişirse okunan değerde değişecektir. Yeni frekansa göre okunacak değerler hesaplanıp programdan değiştirilmesi gerekir. Ama tavsiyem kendi sisteminizi 4 Mhz OSC frekansına göre ayarlarsanız sorun çıkmayacaktır.
 
Ete

fero

Kusura bakmayın hocam herhangi bir kızgınlık belrtisi olsun diye büyük yazmadım.dikkat etmemişim.
devre ve kod sizin verdiğiniz nec_ters ve nec_duz_kesme projelerindeki kod ve devreleri denedim. board üzerinde değil sadece proteus ta deneyip orda alıcı kısmında çıkışları aktif edemedim iki proje kodu ve devresinde.ama verici kısmı çalışıyor.simülasyon dan kaynaklanan bir çallışmama sorunu olabilir mi hocam?? kullandığpım program proteus 8.9

Dtmf

Kumandanin calisip calismadigini cep tel.kamerasi ile test edebilirsin kumanda tuslara bastigida kizilotesi isigi gorebilirsin

ete

Bir soru sorulurken her türlü detayın tam olarak verilmesi önemlidir.
Proteusda denedim çalışmadı derken nasıl bir devre şeması uyguladın.
Rar dosyasında yer alan devre şeması çalışıyor. Az evvel tekrar denedim.
Tuşa biraz uzunca basmak gerekiyor simulasyondaki yavaşlama nedeni ile.
Ama 10-20 sn sonra rölenin çektiğini gözlemleyebiliyorum. Devre simulasyonda da çalışıyor.
Sorun sende yada simule programında olabilir.
Bu arada alıcı tarafında ters şeklinde uzantısı olan dosya kullanılacaktır. Düz olan orada çalışmaz.

Ete

fero

hocam iyi günler.kumanda tuşlarını bi şekilde okudum.aldıgım kodlar aşağıda.
 0xFFA857
 0xFFE01F
 0xFFA25D
sormak istediğim bu kodların hangi kısmını ve nasıl verdiğiniz projedeki IR_ALICI yazılımına eklicem?

'Tus Kodları:
' Kanal+ =16 -- Kanal- =17
' Ses +  =18 -- Ses -  =19
' oN-oFF =21

BASLA:

      gosub TUSGIR
      IF TUS=1 THEN  'AÇMA - KAPAMA       
        PORTB.0=1
        GOTO BASLA
      endif
     
      if tus=2 THEN
         PORTB.1=1
         GOTO BASLA
      ENDIF
     
      IF TUS=3 THEN
         PORTB.2=1
         GOTO BASLA
      ENDIF             
           
      IF TUS=4 THEN
         PORTB.3=1
         GOTO BASLA
      ENDIF
             
      PORTB=0       
'      pause 50
      GOTO BASLA

ete

Okuduğun 32 bitlik değerin ortasında yer alan 8 biitlik değerler kullanacağın tuş kodları oluyor. Bu durumda  0xFFA857 kodunda kullanacağın değer $A8 ,  0xFFE01F kodunda kullanacağın değer $E0 ve  0xFFA25D kodunda kullanılacak değer $A2 olmaktadır. Okumanın doğru yapıldığını test edilmesi $FF den çıkartılmış halini vermesi gerekir. Deneyel,im $FF-A8=$57 dir demekki doğru okumuşsun.
Diğerlerinide test edersen doğru olduklarını görebilirsin.
Programda ;
      IF TUS=1 THEN  'AÇMA - KAPAMA       
        PORTB.0=1
        GOTO BASLA
      endif
satırlarında IF TUS=1 THEN yerine IF TUS=$A8 THEN yazılacaktır.
Diğerlerinide tuş kodlarına göre ayarlayabilirsin.
Çıkan sayılar bana enteresan geldi. Ama okuma doğru gözüküyor.

Ete

fero


ete

Sonucu bildirirsin ymarım.
Ete

fero

hocam verdiğiniz düzenlemeyi IR_PROJESİ dosyasında ve NEC_TERS_KESME dosyasındaki alıcı yazılımlarına ekleyerek denedim fakat hiçbir çıkış alamadım.verdiğiniz kod kalıbına göre ekleme yaptım sadece.kumanda olarak nec protokolü kullanan bir kumanda kullanıyorum.

ete

Önceden hangi yazılımla o tuş kodlarını okudun ise aynı programda verdiğim düzeltmeleri yapman gerekirdi.
Kodları okuyabildiğine göre sistemin çalışması gerekiyordu. Neden çalıştıramadığını anlamadım doğrusu.
Biraz daha uğrşman gerekecek. Tuşları doğru okuyorsan buda çalışır.

Ete

Powered by EzPortal