Gokrtl

Gökhan Kartal
Staff member
Katılım
27 Şubat 2019
Mesajlar
7,855
Bu abi neyce yazıyor.
DAkika 7.33
Youtube videolarında belirli bir dakikadan başlatmak istersen link sonuna :453 (iki nokta ve saniye cinsinden rakam) yazabilirsin.
Örneğin senin videoyu 7.33 den başlatmak için (7*60)+33 = 453sn
Örnek link: SioDX22yDl8:453
 

taydin

Timur Aydın
Staff member
Katılım
24 Şubat 2018
Mesajlar
13,798
Assembly dilinde yazıyor. Sen boşver onun neyce yazdığını :) ikinci timer'i yapılandır ve timer'in çıkışının bir porttan çıkmasını sağla.
 

Ahmet

Kıdemli Üye
Katılım
31 Mayıs 2021
Mesajlar
2,597
Assembly dilinde yazıyor. Sen boşver onun neyce yazdığını :) ikinci timer'i yapılandır ve timer'in çıkışının bir porttan çıkmasını sağla.
Az sonra yapacağım bunu abi benim bms'nin başında bekliyorum şarjın tamamen dolmasına az kaldı akım çekmeyi kesecek mi onu bekliyorum kesmezsse 6 tane pilim aşırı şarjdan mefta olur.
 

taydin

Timur Aydın
Staff member
Katılım
24 Şubat 2018
Mesajlar
13,798
Mantığı kafanda oturtmaya başladın mı? Bir hardware counter 1 s pals üretiyor ve porttan çıkıyor, başka bir porttan gelen sinyal de diğer hardware counter'i saydırıyor. Sen de her 1 s sonunda saydırılan counter'i okuyorsun, bu kadar.

Eğer saydırılan counter 32 bit ise, teorik olarak 4 GHz e kadar frekans ölçümü yaparsın :D Ama tabi işlemcinin frekans limiti bellidir, o yüzden muhtemelen 10 MHz'e kadar falan ölçüm yaparsın.

Eğer saydırılan counter 16 bit ise, işte o zaman kesme lazım olacak. Her 16 bit dolduğunda başka bir counter'i kesmede arttırman lazım, böylece efektif olarak 32 bit counter elde etmiş olacaksın. Veya belki başka bir counter daha varsa, bir counter bitince diğerini saydırmasını sağlayabiliyorsundur. Bu ayrıntıları dahasheet'te inceleyip bulman lazım.
 

Ahmet

Kıdemli Üye
Katılım
31 Mayıs 2021
Mesajlar
2,597
Mantığı kafanda oturtmaya başladın mı? Bir hardware counter 1 s pals üretiyor ve porttan çıkıyor, başka bir porttan gelen sinyal de diğer hardware counter'i saydırıyor. Sen de her 1 s sonunda saydırılan counter'i okuyorsun, bu kadar.

Eğer saydırılan counter 32 bit ise, teorik olarak 4 GHz e kadar frekans ölçümü yaparsın :D Ama tabi işlemcinin frekans limiti bellidir, o yüzden muhtemelen 10 MHz'e kadar falan ölçüm yaparsın.

Eğer saydırılan counter 16 bit ise, işte o zaman kesme lazım olacak. Her 16 bit dolduğunda başka bir counter'i kesmede arttırman lazım, böylece efektif olarak 32 bit counter elde etmiş olacaksın. Veya belki başka bir counter daha varsa, bir counter bitince diğerini saydırmasını sağlayabiliyorsundur. Bu ayrıntıları dahasheet'te inceleyip bulman lazım.
FREQQQ.png

Olmuş mu abi bu mantık
 

Gokrtl

Gökhan Kartal
Staff member
Katılım
27 Şubat 2019
Mesajlar
7,855
Mantığı kafanda oturtmaya başladın mı?
Ulan Ahmet, bizim yüzümüzden adamın başında saç kalmayacak.
Gidiyorum geliyorum "Mantığı kafanda oturttun mu?" yorumuna denk geliyorum.
Kendimi Timur abinin yerine koyup aynı soruyu soruyorum içimde bir şeyler ölüyor, umutsuzluğa düşüyorum :katil2:
 

Ahmet

Kıdemli Üye
Katılım
31 Mayıs 2021
Mesajlar
2,597
Ulan Ahmet, bizim yüzümüzden adamın başında saç kalmayacak.
Gidiyorum geliyorum "Mantığı kafanda oturttun mu?" yorumuna denk geliyorum.
Kendimi Timur abinin yerine koyup aynı soruyu soruyorum içimde bir şeyler ölüyor, umutsuzluğa düşüyorum :katil2:
DSLILFBSDKJBSLFBSDLJBFKJSBFKSD N
Ben normalde dişimin keseceğini yaparım kesmeyeceğine asla bulaşmam.
Ama Timur abi kesmesi için alttan çeneme biraz bastırıyor.
Ya dişimi kırarım yada keserim.

Bazen kafam almıyor.
 

taydin

Timur Aydın
Staff member
Katılım
24 Şubat 2018
Mesajlar
13,798
Tecrübe etmeyince birçok alternatif geliyor akla. Ama çoğunun işe yaramayacağını ancak tecrübe kazanınca anlıyorsun. Keşke vaktin olsa da çalışmayan metotları da deneyebilsen, oradan da mutlaka birşeyler öğrenirsin.

Ama youtube'da veya başka bir yerde başkasının yaptığı bir çalışmaya bakıp aynısını yaparsan, o biraz ezbercilik olur. Youtube'da çalışıyor görünen herşey gerçek hayatta da çalışır diye bir kural yok. Başkasının programını inceleyince de olayı anladığını zannedersin, ama o mantığa göre sıfırdan yeniden yazabiliyorsan gerçekten anlamışsındır. Yoksa "frekans metrede hardware counter kullanılır" diye anlamışsın, ama counter'i yapılandıramıyorsun, sinyali işlemcinin portuna yönlendiremiyorsun, counter sonuna geldiğini anlayamıyorsan demekki ezberden gitmişsin demektir.

Başkasının çalışmalarına fikir edinmek için bakılabilir, ama doğrusu, oradan anladığına göre kendi yaptığını sıfırdan yapmaktır. Ancak böyle derinlemesine öğrenirsin.
 

Ahmet

Kıdemli Üye
Katılım
31 Mayıs 2021
Mesajlar
2,597
Tecrübe etmeyince birçok alternatif geliyor akla. Ama çoğunun işe yaramayacağını ancak tecrübe kazanınca anlıyorsun. Keşke vaktin olsa da çalışmayan metotları da deneyebilsen, oradan da mutlaka birşeyler öğrenirsin.

Ama youtube'da veya başka bir yerde başkasının yaptığı bir çalışmaya bakıp aynısını yaparsan, o biraz ezbercilik olur. Youtube'da çalışıyor görünen herşey gerçek hayatta da çalışır diye bir kural yok. Başkasının programını inceleyince de olayı anladığını zannedersin, ama o mantığa göre sıfırdan yeniden yazabiliyorsan gerçekten anlamışsındır. Yoksa "frekans metrede hardware counter kullanılır" diye anlamışsın, ama counter'i yapılandıramıyorsun, sinyali işlemcinin portuna yönlendiremiyorsun, counter sonuna geldiğini anlayamıyorsan demekki ezberden gitmişsin demektir.

Başkasının çalışmalarına fikir edinmek için bakılabilir, ama doğrusu, oradan anladığına göre kendi yaptığını sıfırdan yapmaktır. Ancak böyle derinlemesine öğrenirsin.
Sen yap karışmıyorum dersen PulseIn kullanacaktım abi.

Birde birşey soracağım 1 saniye on 1 saniye off mu olacak yoksa 1 saniye on çok kısa süreli off mu olacak
 

taydin

Timur Aydın
Staff member
Katılım
24 Şubat 2018
Mesajlar
13,798
Sen yap karışmıyorum dersen PulseIn kullanacaktım abi.

Birde birşey soracağım 1 saniye on 1 saniye off mu olacak yoksa 1 saniye on çok kısa süreli off mu olacak

Mantığını anlaman önemli, ondan sonra nasıl yaparsan yap. Önemli olan AND gate'in 1 saniye süreyle açık olması. Veya hızlı ölçüm yapmak amacıyla 100 ms veya 10 ms gate süresi de olabilir. Böylece ölçüm sıklığı artar, çözünürlük azalır. AND gate'i kapattıktan sonra sonucu ekrana yazacaksın ve sonra tekrar AND gate'i açacaksın.
 

Ahmet

Kıdemli Üye
Katılım
31 Mayıs 2021
Mesajlar
2,597
16000000 / ( 256 x 1) - 1 = 1 saniye çıkması gerek değil mi?

Sonucu 62499 çıkıyor ben 62499 girdiğimde 900ms'de bir kez çıkış alıyorum bu avr yanlış formül mü vermiş :mad: :mad:
 

Gokrtl

Gökhan Kartal
Staff member
Katılım
27 Şubat 2019
Mesajlar
7,855
16000000 / ( 256 x 1) - 1 = 1 saniye çıkması gerek değil mi?

Sonucu 62499 çıkıyor ben 62499 girdiğimde 900ms'de bir kez çıkış alıyorum bu avr yanlış formül mü vermiş :mad: :mad:
Çıkan doğru, senin hesap yanlış.

Screenshot_20220701-142023.png
 

Gokrtl

Gökhan Kartal
Staff member
Katılım
27 Şubat 2019
Mesajlar
7,855
Bu formül en baştan beri standartımız abi.

çalışma frekansı bölü presacler oranı çarpı istenen süre eksi bir
Valla ben işlem sonucunu 1 saniyeye pek benzetemedim. Ama tabi konuya vakıf değilim.
 

Ahmet

Kıdemli Üye
Katılım
31 Mayıs 2021
Mesajlar
2,597
Bu abi çok güzel anlatıyor timer registerleri.

Artık benim yabancı üstatlar listesinde sadece Great Scott yok bu abi de var.

 

Gokrtl

Gökhan Kartal
Staff member
Katılım
27 Şubat 2019
Mesajlar
7,855
Yabancı üstadlar listene benide ekle. Ustalık derecesinde yabancıyım konuya :katil2:
 

Ahmet

Kıdemli Üye
Katılım
31 Mayıs 2021
Mesajlar
2,597
Yabancı üstadlar listene benide ekle. Ustalık derecesinde yabancıyım konuya :katil2:
aklım bulandı CS10-11-12 WGM görmekten.

Yakında yaparım 1 saniyelik pulse.
ondan sonra daha kuyunun dibi derin ben daha kovamı atamadım kuyuya
 

taydin

Timur Aydın
Staff member
Katılım
24 Şubat 2018
Mesajlar
13,798
Sen halledersin Ahmet. Alt tarafı 1 s lik pals çıkacak bir pinden yav :katil2:
 

Ahmet

Kıdemli Üye
Katılım
31 Mayıs 2021
Mesajlar
2,597
Sen halledersin Ahmet. Alt tarafı 1 s lik pals çıkacak bir pinden yav :katil2:
C++:
pinMode(9, OUTPUT);   
                            
  TCCR1A = 1 << (COM1A1) | 1 <<(COM1A0);//çıkış level high
  TCCR1B = 0 <<(CS10) | 0 <<(CS11) | 1 <<(CS12); //scala 256
  ICR1 = 16000000 / (256 * 1) -1;  //256 scalaya göre 1 saniye hesaplama                                   
  OCR1A =  0x89; //OCR1A(D9) çıkış

Abi dışarıdan görüldüğü gibi hazır içerik asla aramam sadece göz atarım yapan varmı.

tam 1 saatdir bunları set ediyorum değiştiriyorum datasheetden bakıp başkalarını yazıyorum scala değiştiriyorum tek başardığım çıkış level yüksek seviyeye alma 9 numaralı pini 1 seviyesine alabiliyorum ama pulse çıkaramıyorum
 
Top