38 khz üretmek?

Başlatan 90alper90, 11 Şubat 2006, 16:24:43

90alper90

Arkadaşlar ben pıcle seri iletişim yaptım ama bunu ır olarak kullanmak istiyorum. bunun için datayı 38 khz le gönderenilecek bir programa ihtiyacım var. Yani pıcın bacağına data gelince bir ır ledle bu datayı 38 khzle göndermesi lazım. Bir de alıcı gözlerde data çıkışı alıcı göz 38 khz i alınca nasıl değişiyor +5v tan gnd a mı düşüyor yoksa +5v mu oluyor? Herkese teşekkürler

ipek

selam internette ir repater diye aradigin da bir suru devre geliyor eger
pic programinda değilde disaridan halledeceksen 555 entegresi ile 38khz
uretiyorsun bunun cikisi ir ledleri suren fet transistor neyse ona gidiyor
pic ten gelen bilgide 2 nolu trigger ayagina gidiyor boylece trigg oldugu
sure tx var beklemede akim minimum kaliyor batarya ile kontrol edilen
cihazlara uygun siteni ziyaret ettim oldukca hos devamini diliyorum
kolaygelsin...

90alper90

teşekkür ederim 555 kullanmak istemiyorum zamanla ayarı kayabilir diye diüşnüyorum pıc kullansam çok iyi olur

herkese başarılar

arslan74

;****************************************************



PULS

movlw	d'32'
movwf	sure_1

call	DELAY_1ms


SINYAL_0


		MOVLW	b'10101010'
		MOVWF	PORTB
		NOP
		NOP
		NOP
		NOP
		NOP


SINYAL1_1

		MOVLW	b'01010101'
		MOVWF	PORTB
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP
		NOP

		decfsz	sure_1
		GOTO	SINYAL_0
		GOTO	PULS




;***********************************************************



36khz için yazılmış bir kod. 4mhz kristal ile 1ms puls üretiyor.

mustaphaerdem

pic basic de bu işi nasıl halledicez. çok uğraştım ama ir iletişim mantığını bilmediğim için bir program yazamadım.
Korkarak yaşıyorsan sadece hayatı seyredersin.

argeelektronik

38 khz lik sabit frekans elde etmek için 4.915 mhz lik kristali CD4060 ile bölerek elde edebilirsin veya  38 khz lik kristal piyasada azda olsa bulunuyor turus elektronikte bulabilirsin ama bir kristal için biraz pahalı 5 $
Altında Çürümekten Kurtulamıyacağın Topraklar Üzerinde Böbürlenerek Yürüme, Üzerine Tükürmeye Bile Miğdenin kaldıramıyacağı Kurtçuklara Yem Olacak Bedeninle...

mustaphaerdem

benim amacım illede 38 khz elde etmek değil. ir iletişim mantığını bilmediğim için pic basic de hiçbir kod oluşturamıyorum.
ilgilendiğin için sağol.
Korkarak yaşıyorsan sadece hayatı seyredersin.

arslan74

biraz site içide dolaş, aradığın cevabları bu site içinde bulacaksın.

https://www.picproje.org/index.php/topic,7861

mustaphaerdem

benim amacım illede 38 khz elde etmek değil. ir iletişim mantığını bilmediğim için pic basic de hiçbir kod oluşturamıyorum.
ilgilendiğin için sağol.
Korkarak yaşıyorsan sadece hayatı seyredersin.

90alper90

Verilen linkte arkadaşlar yazmışkı 38 khz üreten ledin de belirli bir frekansla çalışıp durması lazım yani sürekli 38khz verirse alıcı bunu gürültü olarak algılıyor. Sonra denilmiş ki alıcı ır aldığında data ucunu bir saniye boyunca lojik o a çekiyor. Şimdi benim dediğimde ır led sinyali 1ms gönderecek sonra belirli bir süre sonra tekrar 10 msn çalışacak. Şimdi 1ms yelik ır led yandığında alıcı datayı 0 a çekecek ama orada 1 sn boyunca 0 da kalıyor yazmış oysa ki 1ms ye sonra 5v olması lazım. Arkadaşlar ne olur biraz daha yardım. Başka bir pic 38khz üretse ve gelen hıgh a göre ledi çalıştırsa sinyal gidince ledi söndürse olur mu?

arslan74

Arkadaşlar sizler gercekten bir şeyler öğrenecek kapasidemisiniz,yada öğrenme istediğindemisiniz.
Ben daha önce ir ile hiç bir çalışmam olmamasına rağmen deneme yanılma yoluyla bunun çalışma prensibini öğrendim, kimsedende yardım almadım. Gerekli bütün bilgiler internette veriliyor, hatta bir sürü örnek kodlar var. Aramakla uğraşmamanız için size örnek kodda verdim. Oysa sizler veriğim kodu incelemek yerine bir sürü gereksiz ve alakasız sorular soruyorsunuz. Önce verdiğin programı bir pic'e yükle sonra cıkışına bir IR led bağlaman yeterli. Karşısına sadece bir hibrit alıcı koyman yeterli. Cıkışna led bağladınmı bu sistem calışır. Bu kadar basit ve acık şeyler de anlamadığınız noktayı hala anlamış değiliz. Birileri bu bilgileri sizin kafanızın içine sokamaz herhalde.

Bunları ancak kendiniz deneyerek kavraya bilirsiniz. Bunları yapmadan sorduğunuz her soruz mantıksız sorular oluyor.

Lütfen soduğunuz sorular birşeyleri öğrenmek için olsun. Burda kimse kendisi zahmet etmeden ona öyle bitmiş hazır proje vermez. Önce kendisi birşeyler yapmalı takıldığı yerde bizler bilgimiz ölçüsünde yardımcı oluruz.
Önce sizlerden bir birşey görmeliyiz. Kendiniz neler yaptınız, nelerde takıldınız bunları belirtin, yada acık acık, ben bunları öğrenerek kendimi yormak istemiyorum bana bitiş böye hazır bir kod lazım deyin.

Selamlar...

90alper90

Dikkatli okusaydınız son yazdğım konuda kod istemediğimi anlardınınız. Şimdi ben teknik şeyleri öğrenmeden kafamdan kod sallayarak deneme mi yapayım bir kere sizin verdiğiniz kodlar asm ( yalnış mı anladım asm ye çok benziyor yalnış anladıysam özür)değil mi ama ben asm kodlarından anlamıyorum! Ben sizden hazır projede istemedim ayrıca ben yaptığım projeleri de herkse veriyorum. SAdece verilen linkte yazanları bir daha sorayım dedim yani bunları anlamadan nasıl yapabilirim ortamda net bir bilgi yok internette aradımda google ne yazayım ki devre bulayım hep hazır kitler çıkıyor. Sorduğum soruların alakasız olduğunu düşünmüyorum. ALıcı gözlerle ilgili bir sürü karmaşa var. Ayrıca ır yi sitemde 8 kanallı iletişim var onu uzaktan yapmak için kullanacağım
Teşekkürler

mustaphaerdem

Diyosun ki " Önce verdiğin programı bir pic'e yükle sonra cıkışına bir IR led bağlaman yeterli. Karşısına sadece bir hibrit alıcı koyman yeterli. Cıkışna led bağladınmı bu sistem calışır. Bu kadar basit ve acık şeyler de anlamadığınız noktayı hala anlamış değiliz."
   Böyle yapınca ir çalışma mantığını anlamış mı oluyoruz. Sadece yükle ve çalıştır.


   Sırf şu yüzden şu sitede soru sormaya çekiniyorum.

   Ben yine de herkesten özür diliyorum. Bu foruma yakışmayan kelimeler kullandıysam.
Korkarak yaşıyorsan sadece hayatı seyredersin.

arslan74

Merhaba,

mustaphaerdem:
Alıntı YapTarih: Cmt Şub 11, 2006 11:40 pm    Mesaj konusu:  

--------------------------------------------------------------------------------

benim amacım illede 38 khz elde etmek değil. ir iletişim mantığını bilmediğim için pic basic de hiçbir kod oluşturamıyorum.
ilgilendiğin için sağol.

cevab olarak:
Alıntı YapTarih: Cmt Şub 11, 2006 11:50 pm    Mesaj konusu:  

--------------------------------------------------------------------------------

biraz site içide dolaş, aradığın cevabları bu site içinde bulacaksın.

https://www.picproje.org/index.php/topic,7861

diye yazmışım. Orada ben hibrit alıcının calışma mantığını yazmışın. ardakasından tekrar.

Alıntı YapTarih: Pzr Şub 12, 2006 2:19 am    Mesaj konusu:  

--------------------------------------------------------------------------------

benim amacım illede 38 khz elde etmek değil. ir iletişim mantığını bilmediğim için pic basic de hiçbir kod oluşturamıyorum.
ilgilendiğin için sağol.

diye cevab yazmışsın. Ben sana ir nin çalışma mantığını verdiğim linkte düzgün bir şeklide anlattım. Sen linki okumak yerini böyle bir cvb yazmışsın. Bu ne demek şimdi? Okumadan nasıl anlayabilirsin, yok okuduysan eğer o zaman okuduğun yerden anlamadığın kısmı söylersin bizde acıklama yaparız. Sana acıklama yapmama rağmen bir önceki mesajın aynısını cvb olarak vermen acıkcası beni üzdü, birazda kızdırdı o yüzden arkasından böyle biraz sert cvb verdim.

Ben öğrenmek isteyen herkese bildiğim konularda yardımcı olmaya çalışıyorum.

oysa "90alper90" biraz zahmet edib öğrenmeye çalışmış. anlamadığı kısımları yazmış. Benim sözüm daha cok "mustaphaerdem" olmasına rağmen "90alper90" üzerine alınmış ve cvb yazmış.

Şimdi size genişçe anlatayım o zaman belki daha iyi anlarsınız. Önce yazdığım kodun ne anlamına geldiğini aıklamaya calışayım.

Bu kod sırayla 1ms süreyle led'i kapatiyor ve 1ms süreyle led'e 36khz lik frekans oluşturuyor.

karşısındaki hibrid alıcısındada 1ms lik pulslar oluşur. Bu durumda puls'in boyu 2ms olur.

Alıcı programada 1ms lık puls geliyormu diye bakacaksın.

Zaten cıkışa led bağladınmı? Led'i yanık göreceksin, cünkü 2ms genlikte puls olack. Burda benim kast ettiğim önemli nokta şu: Eğer alıcı diyelim 36khz bir alıcı ise biz sürekli 36khz puls üretirsek o zaman alıcı süekli dışaryıa cıkış verir mantığıdır. Cünkü bu şekilde calışmıyor, mutlaka puls göndermlisin. Bu pulsarda "lojik 0 = hiç sinyal yok", "lojik 1 = 36khz sinyal var" anlamında kullanılıyor.

90alper90 demiki:
Alıntı Yapbir kere sizin verdiğiniz kodlar asm ( yalnış mı anladım asm ye çok benziyor yalnış anladıysam özür)değil mi ama ben asm kodlarından anlamıyorum!

Evet bu kod asmde yazılmış. Ama asm dilini kaba taslakta olsa bilmeden Pic program yazmaya çalışırsan ilerde mutlaka tıkanacaksındır. Cünkü yüksek seviyeli diller böyle yüksek hız gerektiren durumlarda verimli kod üretemezler. Mutlaka ASM yide bilmen gerek, ilerde tıkanmaman için söylüyorum. Kaldıki bu kod en basit şeklide yazılmış bir ASM programıdır.
biraz inceledimi çalışma prensibi ortaya cıkar. En azsından 36khz program üreten kısmı ASM kullanman daha cok yerinde olur. Basic dilinin içinde ASM kodları ekleyebiliyorsun. Basic yazmak daha cok zor olur kanaatindeyim.

   movlw   d'32'      ; 4MHZ İLE 1MS PULS ELDE ETMEK İÇİN
    movwf   sure_1   ; 32 DEĞERİ YÜKLEDİM.

SINYAL_0 

      BSF LED     ; (LEDİ YAK) LED OLARAK HANGİ CIKIŞI TANIMLAMIŞSAN
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 


SINYAL1_1 

      BCF LED ;(LEDİ KAPAT) LED OLARAK HANGİ CIKIŞI TANIMLAMIŞSAN.
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 
      NOP 

      decfsz   sure_1 
      GOTO   SINYAL_0 
      RETURN                ;ALT PROGRAMDAN CIK.

mustaphaerdem

ikinci kez aynı mesajı bilerek göndermedim. yanlışlıkla olmuş. ama siz yanlış anlamışsınız. iki kere aynı msj ı gönderdiğimi daha yeni anladım.
Korkarak yaşıyorsan sadece hayatı seyredersin.