Kesinti Destekli Bitbanging ile Arcane Protokollerini Canlandırın


“SoftwareSerial” kitaplıklarımızı genellikle hafife alırız ve kaputun altında neler olup bittiğini araştırmıyoruz – en azından bizi başarısızlığa uğratana kadar. Kesintiye dayalı bitbanging’in gücünden nasıl yararlanacağınızı öğrenmek ister misiniz? [Jim Mack] bize protokol uygulamalarımızı nasıl uçuracağımızı öğretiyor LTC protokolünü bir sıçrama tahtası olarak kullanmak.

LTC (Doğrusal/[Longitudinal] TimeCode), radarımızın altında uçma eğiliminde olan ve bilgisayar korsanlarının çok şey öğrenebileceği, yaygın olarak kullanılan ve güzel hazırlanmış bir protokoldür. Medya üretimi ve oynatımı sırasında ses/video cihazlarının senkronizasyonu için kullanılır. LTC’nin sinyali neredeyse dijital ama tam olarak değil: bir saate ihtiyacı yok ve polaritesi yok. Ek olarak, bir ses sinyalini gerçekten iyi taklit eder, herhangi bir oynatma hızında kodunu çözebilirsiniz ve diğer birçok avantaj ve tuhaflık [Jim] ana hatlar. Yine de zamanlamaları korumanız gerekiyor ve [Jim]’ın makalesi, birincil görevlerinizi rahatsız etmeden bunları nasıl doğru tutacağımızı gösteriyor.

Kesintileri kullanmak, ana döngünüzün başka şeyler yapması anlamına gelir ve arka planda farklı türde görevleri çalıştırmanıza etkin bir şekilde izin verir. [Jim] tanımlanmış bir frekansta başlatılan kesintileri kullanarak, ana döngüde LTC veri işlemesi yaparak ve kesinti işleyici kodunun içinden zaman açısından kritik GPIO kıpırdatarak bir LTC protokolü vericisi uygular. Yol boyunca kod yapısını ve nüansları açıklıyor ve sonunda, çalışmamız ve yeniden kullanmamız için son derece yetenekli ve yapılandırılabilir bir LTC verici projesinin kaynak kodunu bile sağlıyor. RF vericisi bitbanging, IR uzaktan sinyal alımı, UART emülasyonu veya MCU’nuzun çevre birimlerinden yoksun olduğu diğer protokoller olsun, onu çalıştırmayı öğreneceğiniz yer burasıdır.

İçinde [Jim]’in önceki makalesinde, kesinlik ve doğruluğun temellerini açıklamak için büyük çaba sarf etti ve ardından bir ATMega kullanarak bu teorileri tekrar uygulamaya koydu. Bu dizinin bir sonraki yazısında, bir LTC kod çözücü oluşturmak istiyor ve bize zamanlamaya duyarlı görevler için kesintileri doğru şekilde kullanma hakkında daha fazla şey öğretiyor. Bekleyemeyiz!


Kaynak : https://hackaday.com/2022/06/19/animate-arcane-protocols-with-interrupt-backed-bitbanging/

Yorum yapın