Hoşgeldiniz!

Kayıt olarak, topluluğumuzun diğer üyeleri ile görüşebilir, paylaşabilir ve özel mesaj gönderebileceksiniz.

Şimdi Kayıt Ol!

Logic Analyzer nedir ? (ÖĞRENELİM)

FurkanKELESOGLU

Moderator
Yönetici
Katılım
13 Ağu 2019
Mesajlar
9
Beğeniler
6
#1
Logic Analyzer (Mantık Analizörü) ;

Bir mantık analizörü, bir dijital devrede aynı anda birden fazla elektronik sinyali yakalamak, görüntülemek ve ölçmek için bir araçtır. Mantık analizörleri, bir dijital sistemdeki birçok farklı sinyal arasındaki ilişkiyi ve zamanlamayı gösterme yeteneğine sahiptir ve genellikle I2C, SPI ve Seri gibi dijital iletişim protokollerini analiz edebilir. Sonuç olarak, bir mantık analizörü dijital devrelerde ve dijital iletişim sistemlerinde hata ayıklamak için en iyi araçtır. Bir mantık analizörü, verilerin veri hatları üzerinden iletimini görselleştirmenize yardımcı olabilir. Bunu, zaman içinde kaydedilen voltajları bir dizi ikili verilere (1'ler ve 0'lar) dönüştürerek yapar. bunun yanı sıra bazı mantık analizörlerinde Analog analizör kanalıda bulunup analog analiz de yapabilir.

Logic Analyzer (Mantık Analizörü)'i incelerken tanımlar göreceğiz ilk önce bu tanımları acıklamak ile başlayalım.

Channel(Kanal) : Test edilen sistemdeki tek bir sinyal hattı. Mantık analizörleri aynı anda 4 ila 100 kanal arasında herhangi bir yerde izleme yeteneğine sahiptir.

Threshold(Eşik Değeri) : Mantık analizörü veya kullanıcı tarafından ayarlanan bir voltaj seviyesi. Eşiğin altındaki sonda tarafından algılanan voltajlara "0" mantığı atanır ve eşiğin üstündeki voltajlara "1" mantığı atanır.

Sample(Örnek) : Lojik analizör tarafından belirli bir zamanda yakalanan tek bir veri noktası. Lojik analizör, tüm problarda tespit edilen voltajları eşzamanlı olarak eşzamanlı olarak karşılaştırır, bunları mantık 1'ler ve 0'lara çevirir ve bu verileri bellekte saklar.

Sample Rate(Örnekleme Hızı) : Lojik analizörün belirli bir süre içinde örnekleri ne kadar hızlı kaydettiği. Bir mantık analizörü için maksimum numune hızı genellikle saniyede megahertz (MHz) veya mega-numune cinsinden (Msps) verilir; Her iki durumda da, tek bir birim (1MHz veya 1Mps / sn), saniyede bir milyon ardışık numune kaydetmeye eşittir.

Memory Depth(Hafıza Derinliği) : Örnekleri saklamak için kullanılabilir hafıza miktarı. Çoğu mantık analizörü için maksimum bellek derinliği, genellikle kanal başına kaydedilebilecek numune sayısı olarak sunulur.

Trigger(Tetikleme) : Mantık analizörünün örneklemeye ve veri kaydetmeye başlaması için gerekli şartlar. Örneğin, belirli bir kanalda yükselen veya düşen bir voltaj veya birden fazla kanal boyunca belirli bir 1'ler ve 0'lar paterni tetikleyiciler olarak kullanılabilir.

Configure Trigger( Tetikleme Yapılandırması) :

Örneklemeye başlamadan önce, tetikleme koşullarınızı yapılandırmanız gerekecektir. İhtiyacınız olan verileri yakalamanıza yardımcı olacak göz önünde bulundurulması gereken birkaç seçenek vardır.

No Trigger(Tetikleme yok) : Tetikleyici olmadan, mantık analizörü "Başlat" veya "Çalıştır" düğmesine basar basmaz veri örneklemeye ve kaydetmeye başlayacaktır.

Edge Trigger (Kenar Tetikleme) : Mantık analizörünü, tek bir kanalda yükselen veya düşen bir kenarı izleyecek şekilde ayarlayabilirsiniz, bu da kayıt işlemine başlayacaktır.

Pattern Trigger(Desen Tetiklemesi ) : Birden fazla kanal Yakalamaya calışıyorsanız, birkaç kanal boyunca 1'ler ve 0'lar dan bir desen(Pattern) gördüğünde, yakalama işlemini başlatmak için mantık analizcisini ayarlayabilirsiniz. Paralel veri yollarında çerçeve başlangıcı iletimleri arıyorsanız, desen tetikleyicileri yararlı olabilir.

Complex Trigger(Karmaşık Tetikleme) : Bazı gelişmiş mantık analizörleri, tetikleyici oluşturmak için bir dizi if-else ifadesi ayarlamanıza izin verir. Bu tür tetikleyiciler, örneğin bir veri yolu üzerindeki belirli bir adrese iletimlerin aranmasına yardımcı olabilir.

Çoğu mantık analizörü, ekran menüsüyle bir kanal seçerek ve yükselen kenar, düşen kenar, darbe genişliği vb. Dahil bir dizi seçenek arasından seçim yaparak bir tetikleyici yapılandırmanıza izin verir. Birden fazla kanal seçerek ve kanal durumunu ayarlayarak bir desen tetikleyici ayarlanabilir yüksek mantık veya düşük mantık gibi seçenekler.


Mantık Analizörüne Neden İhtiyacımız Var?

Osiloskoplar, dijital sinyalleri mantık analizörlerine benzer bir şekilde ölçebilir ancak mevcut kanal sayısı ile sınırlıdır. Bir osiloskop, bir devredeki iki nokta arasındaki voltajın zaman içinde nasıl değiştiğini veya dalgalandığını ölçmek için doğru araçtır. Bununla birlikte, mantık analizörleri, osiloskoplara göre birçok avantaja sahip dijital devreleri test etmek, hata ayıklamak ve karakterize etmek için son derece yararlıdır.

  • Osiloskoptan daha fazla kanala sahiptir.
  • Dijital bir devrenin çıkışını karakterize edebilir. (örn. FPGA'lar)
  • Genel amaçlı giriş / çıkış (GPIO) pinlerini değiştirerek karmaşık gömülü sistemde hata ayıklama
  • Çeşitli dijital protokolleri hızla ölçün ve kodunu çözün ( Decoder Özelliği)
  • PC tabanlı mantık analizörleri, küçük boyutlarından ve taşınabilirliklerinden dolayı sahada hata ayıklama için harika olabilir

    Buraya Kadar Lojik analizörün ne olduğunu yazdık. bunları yazarken Saleae Sitesinden Referans aldık ve birazda Translater kullanarak buraya aktardık. Şimdi ise Çinden aldığım 24Mhz 8 Kanal lojik analyzer ile denemeler yapalım.
 

FurkanKELESOGLU

Moderator
Yönetici
Katılım
13 Ağu 2019
Mesajlar
9
Beğeniler
6
#2
Şuan Sahip Olduğum 24mhz 8 Kanal Logic analyzer aşağıda ki resimde görüldüğü gibidir.

Screenshot_6.png

Bunlar Klon olup. diğer firmaların arayüzlerini kullanabilir şekilde üretilmiştir. Mesela bunu kullanmak için PC arayüzün'de Salease firmasının Yazılımı olan arayüz programını kullanacağız ( Logic 1.2.18 )

Şimdi Cihazı PC bağlayalım ve Birde PC arayüzünü görelim.

Screenshot_7.png

Evet arayüzümüzü açtık. Yukarıda görüldüğü gibi Connect yazısını gördük. Yani cihazımız Başarılı şekilde bağlandı.

Şimdi arayüzü biraz acıklamaya başlayalım nerden ne var.

Screenshot_8.png

Kabaca Arayüzdeki komponentlerin ne işe yaradığını acıkladık. şimdi Bir UART calışması yapalım ve bunu daha iyi pekiştirelim.

Screenshot_9.png

İlk Olarak Protokollerden Asenkron Serial'i seçtikten sonra karşımıza bir yapılandırma ekranı cıkıyor.

Screenshot_10.png

Burada Asenkron Seri iletişimi yapılandırıyoruz. Şimdi ben Yapacağım örnek için Baud Rate oranını değiştireceğim.

Screenshot_11.png

Ben örnek için PIC18F452 nin UART donanımını kullanarak hatta text basacağım o yüzden 2 Kanala'da Asenkron Seri iletişim tanımlıyorum birini RX hattına diğerini ise TX bağlayacağım.

Yapılandırmayı yaptıktan sonra Kanal 1 i Kanal 1 olarak değilde bu uygulama için ismini değiştireceğim biraz daha anlaşılır olsun. bu arayüzün bize verdiği bir özellik zaten olmasıda gerekiyor nerden ne geliyor nereye gidiyor takip edebilmek için.

Screenshot_12.png

Yapılandırmayı yaptıktan sonra her kanal içinde özellikler var bunlar. fotoğrafta gördüğünüz gibidir. Glitch Filtresi için daha fazla bilgiyi internette veya Salease firmasının anlatım kısmında bulabilirsiniz.
 
Son düzenleme:

FurkanKELESOGLU

Moderator
Yönetici
Katılım
13 Ağu 2019
Mesajlar
9
Beğeniler
6
#3
Evet ilkten 19200 baud Rate oranı ile UART donanımımı yapılandırıyorum ve daha sonrasında sadece 1 kereliğine "www.devsh.org!" textini uart hattına basıyorum. burada ilk kodu sonra yakalama işlemini göreceğiz burada bir şey daha kullandık bundanda bahsedeceğim o yüzden text'i 1 kere gönderdim.

Screenshot_1.png

UART hattına texti basar basmaz sonsuz döngü de programı kitledim. yani PIC18F452 ilk calıştığı an sadece bir kere bu yazıyı gönderecek sonra boş komut işleyip olduğu yerde sayacak. Peki ben bu zamanlamayı nasıl tuturacağım ? öyle ya pic acıldığı gibi şak diye yazıyı gönderecek. ve biz bu yazıyı bilmiyor olalım ne olduğunu nasıl yakalayacağız ? işte burda devreye yakalama modları giriyor.

Bir data gideceği zaman TX hattımız yükselen kenara geçiyor. bizde programa bir yükselen kenar algıladığın an kayıt işlemine başla diyoruz ve sonuçları göreceğiz şimdi.

Screenshot_3.png

Peki veriyi doğru şekilde nasıl aldık ? yükselen kenarı nerden seciyoruz veya Trigger(Tetik) modunu nasıl belirtiyoruz. ayrıca decode ederken decode edeceği formaı belirliyeiliyormuyuz bakalım.

Screenshot_4.png

Peki şimdi de son olarak Decode ederken hangi formatta decode edeceğine bakalım. veya nereden seçiyoruz.

Screenshot_5.png

Ve bir Öğrenelim konusunuda bilgimiz yettiğince anlatmaya calıştık. Konuda yanlış gördüğünüz veya eksik bulduğunuz bir yer var ise lütfen yorum yapmaktan cekinmeyiniz. Hoşcakalın :)
 
Üst Alt