Zephyrnet Logosu

Metale Yakın

Tarih:

Firmware, donanım ve yazılım arasında sıkışıp kalır. Ne demek istiyorum? Mikrodenetleyici tasarımcıları, çiplere ne kadar ilginç ve kullanışlı donanım çevre birimi ekleyebilecekleri konusunda yarışıyor ve hepsi farklı. kasten. Bu arada, yazılım tasarımcıları donanım çevre birimlerinin karmaşıklıklarından ve kendine özgü özelliklerinden uzaklaşmak istiyorlar çünkü kod genel ve taşınabilir olmak istiyor. Yazılım ve donanım tasarımcıları Montague ve Capulet'lerden oluşuyor ve biz çapraz ateşin ortasında kaldık.

Belki de piyasadaki en kendine özgü mikro denetleyici çevre birimlerinden biri olan RP2040'ın PIO'larından yararlanan bir tasarımın ortasındayım. Bunları çipin doğrudan bellek erişimi (DMA) denetleyicileriyle birleştirmek, CPU'ları tıkamadan oldukça yüksek bant genişliğine sahip işlemlere olanak tanır. Ancak bu kodun geniş bir kitle tarafından kullanılabilir ve genişletilebilir olmasını istediğim için aynı zamanda MicroPython'da yazmaya çalışıyorum. Ve DMA denetleyicilerini yapılandırmak MicroPython için fazlasıyla kendine özgü bir iştir.

Ama bir kaçış kapısı var. Benim durumumda, bu nezaketen machine.mem32 tüm bellek eşlemeli konfigürasyon kayıtları da dahil olmak üzere, çipin belleğine doğrudan okuma ve yazmanıza olanak tanıyan işlev. Elbette, saçma derecede düşük seviyeli, ancak bu, çipin veri sayfasında okuduğunuz her şeyi hemen ve bir Micropython programının göreceli rahatlığı dahilinde yapabileceğiniz anlamına geliyor. Diğer dillerin kendi PEEK ve POKE eşdeğerlerini de kullanın veya satır içi montajcıya izin verin veya kodunuzun geri kalanını düşük seviyede yazmak zorunda kalmadan metale yaklaşmanız için size araçlar sağlayın.

Dürüst olmak gerekirse, genellikle düz bir C veya hatta İleri programcıyım, ancak daha yüksek seviyeli bir dil kullanma ve aynı anda en düşük bit-twiddling seviyelerine inebilme deneyimi bir aydınlanma oldu. Yalnızca Micropython kullanıyorsanız çipinizin veri sayfasını açın ve size neler sunabileceğini görün. Veya bu kaydı yapılandır düzeyinde programlama yapıyorsanız, daha yüksek düzeydeki bir dilden elde edebileceğiniz ekstra avantajlara göz atın. Sen yapabilmek Pastanı al ve onu da ye!

spot_img

En Son İstihbarat

spot_img