GPIO hattından IC'ye güç sağlama


10

Bir Li madeni para hücresinden beslenecek düşük güçlü bir uygulamam var. Seçtiğim MCU ile tatmin edici bir uyku akımı elde ettim.

Ancak ADC IC uygulaması farklı bir konudur: 900µA aktif değilken - madeni para hücresi uygulaması için çok fazla.

Bu yüzden neden kullanılmadığı zaman ADC'nin gücünü izole etmediğini düşündüm. İki fikir akla geldi: ADC'nin Vdd'sindeki yüksek taraf bir FET veya sadece ADC'nin Vdd (veya Vss) pinini MCU GPIO pinlerinden birine bağlayan (akımın MCU'nun kaynağı / lavabo spesifikasyonunda olduğu varsayılarak).

Bu fikri tartışan birçok makale, uygulama notu vb. Olacağını varsayıyordum, ancak henüz bir şey bulamadım. Denemeye başlamadan önce, kimse beni çevrimiçi olarak alakalı makalelere / uygulama notlarına yönlendirebilir mi? Yoksa sadece kötü bir fikir mi? ve eğer öyleyse neden?

(Ya, çoğu MCU'da yerleşik ADC'ler olduğunu biliyorum. Sorgunun kapsamı dışındaki nedenlerden dolayı, bu harici ADC IC'yi gerçekten kullanmalıyım.)

Teşekkürler!


ADC'nizin modeli nedir?
Nick Alexeev

Yanıtlar:


8

Bir cihazı GPIO piminden çalıştırmak genellikle kötü bir fikirdir. Çok düşük güç rejiminde, belki de ondan kurtulabilirsiniz, ancak çok ciddi kısıtlamalarınız olmadıkça bunu tavsiye etmem.

ADC'nin gereksiniminin, pinin sürücü kapasitesinden daha düşük olduğunu kontrol ettiğinizi zaten belirtmiştiniz. Genellikle birçok insan kontrol etmekten rahatsız olmaz. Tüketim gerekli sınırlar içindeyse, bu sayımda iyi olabilirsiniz. Ancak, ADC'den gelen geçici akım gereksinimlerinin de GPIO sürücü kapasitesinde bulunduğundan emin olun. En azından ADC beslemesinde makul derecede ağır ayrıştırmaya ihtiyacınız olacaktır. GPIO çıkışının düşük empedanslı bir besleme hattı olmadığını ve geçici akım gereksinimlerine yanıt vermek için daha yavaş olacağını unutmayın.

İkincisi, bir ADC kullandığınız ve uC'de yerleşik olmayan bir ADC (çok düşük güç tüketimi için yapmanız gereken şey olurdu) olduğundan, bazı gereksinimleriniz olduğunu varsayıyorum. t Dahili ADC'den memnun. Bir tedarik hattı olmayan ve daha da önemlisi, bir mikrodenetleyicinin GPIO'su olan GPIO, kesinlikle en az UC'nin saat frekansı, harmonikleri ve muhtemelen alt harmonikleri ile kirlenecektir. Ayrıca içinden önemli bir akım geçireceğiniz için, diğer efektler de getirilirse şaşırmam. Hangi GPIO'yu kullandığınıza ve ayrıştırmanın ne kadar ağır olduğuna bağlı olarak, SPI / I2C'nizin küçük bileşenlerini / beslemede neler olduğunu bile görebilirsiniz. ADC çözünürlüğü ve gürültü performansı önemliyse,

Yüksek taraf FET çok daha iyi bir bahistir ve daha güvenlidir. Ayrıca LDO'lar ve benzeri gibi Etkinleştir denetimine sahip herhangi bir sayıda güçle ilgili IC kullanmayı da düşünebilirsiniz. ADC kaynağına yakın bir LDO da performansı iyileştirmeye yardımcı olabilir. Bununla birlikte, bunun ADC'nizin biraz daha düşük bir voltajda çalışması gerektiği anlamına geldiğini unutmayın. Bu basit bir transistör anahtarıyla da gerçekleşecek ve düşük bir Rdson FET ile etki, kuşkusuz, çok daha küçük olacak, ancak mevcut olacak.

Dikkat etmeniz gereken bir şey, elektriksiz bir IC'nin dijital hatlarını elektrikli bir UC'nin GPIO'larına bağlamak iyi bir fikir değildir. Sonunda dijital IO'ları ile ADC'nizi güçlendirecek ve garip ve potansiyel olarak tehlikeli davranışlara neden olacaksınız. Özellikle, ADC'niz KAPALI olsa bile yanıt vermezse şaşırırdım. Bu, uzun süreli bozulmaya neden olabilir ve ilk etapta güç tasarrufu avantajına sahiptir. İyi kapanması için, ikisi arasındaki her dijital hat için çıkışları devre dışı bırakma (tristate) yeteneğine sahip bir seviye çeviri tamponu kullanmalısınız. Bu, belki bir EN pimi kullanılarak veya devre dışı bırakmak için diğer mekanizmalara sahip bir tampon kullanılarak yapılabilir (SN74LVC1T45, örneğin bir taraftaki besleme toprağa çekilirse tristasyon yapar). Şemanın yararlı olup olmadığı, tamponun KAPALI durumundaki tüketimine, AÇIK durumundaki tüketimine ve görev döngüsüne (bunun için AÇIK hale getirmek istediğiniz zamanın bir kısmına) ve ADC tüketimine (900uA) bağlıdır. bunu yaparak tasarruf edebilirsiniz. Çok dikkatli iseniz, kapatmadan önce ADC'ye bağlı uC IO'ları tristate ederek ve böylece yaklaşık aynı etkiyi üreterek tamponlara duyulan ihtiyacı önleyebilirsiniz.


Mükemmel cevap. Bahsedilmesi gereken başka bir şey, ADC'nin muhtemelen güç piminde bir ayırma kapasitörü isteyecektir. Kondansatör için ani akım muhtemelen GPIO hattını bozacaktır.
Rocketmagnet

5

Evet, bunu yapabilirsiniz, tüm kısıtlamaların karşılandığından emin olun. Bunu birkaç kez yaptım. Gücünü değiştirmek yerine küçük bir devreye güç sağlamak için bir mikrodenetleyici çıkışı kullanmak, yerden tasarruf etmenin yararlı bir yolu olabilir. Bunu bir projede kullandım, örneğin bir ultrason alıcısı analog ön ucunu sadece gerektiğinde açmak için.

Çıkış piminde mevcut olan sınırlı akım probleminin dışında, mikro anahtarlamalı devreye giren gürültüyü izlemeli ve devre tarafından çekilen geçici akımlarla başa çıkmalısınız. Dijital çıkış pimine toprağa bir kapak eklemek her iki soruna da yardımcı olur, ancak hattı açarken veya kapatırken mikroun ne kadar kapasitans kullanabileceğini de düşünmeniz gerekir.

Bu hafifçe yapmanız gereken bir şey değildir ve sorunları dikkatlice düşünmeniz gerekir, ancak ödevinizi yaptıktan ve hala mantıklı olduktan sonra devam edin.


5

Evet, bunu yapabilirsin. Ve birçoğu var. Örneğin, Adafruit bunun bir adruino üzerindeki bir ds1307 RTC için iki gpio (vcc ve gnd olarak) tarafından desteklendiğini göstermektedir . Bu, ekran için sadece 1 mA'ya ihtiyaç duyan Nokia LCD'ler için de yapılır (Arka ışık ledleri farklı bir hikaye, ancak yine de gpio tarafından yapılabilir).

Bir güç kaynağı bir güç kaynağıdır. Akım çekiminiz düşük olduğu sürece (Veya mcu'nun port pimlerindeki akım çekilmesinden dolayı voltaj düşüşünü tolere edebilirsiniz) yapabilirsiniz.

Şimdi, gpio çıkışının ne kadar temiz olduğuna bağlı. Bazı IC'lerin biraz kirli bir çizgiden şikayet etme olasılığı diğerlerinden daha azdır. ADC, en iyi seçenek olmayanlardan biri olabilir. Kirli bir kaynak ADC'nin çözünürlüğünü veya güvenilirliğini etkileyebilir. Harici ADC'yi dahili olandan daha kötü hale getirebilir. Diğerlerinin de belirttiği gibi, bir başlık yardımcı olabilir.

ADC'yi kızartmak pek mümkün değil, en iyi bahis mi? Kabloyu bağlayın ve bazı kalibrasyon testlerinden geçirin. Çalışıyorsa, onunla git. Değilse, gücü kesmek için bir npn transistörü veya benzer bir fet kullanın. Sadece bir şey. IC kapatıldığında veri pinlerini girişlere dönüştürdüğünüzden emin olun ve güç pinini açtıktan sonra olmaları gereken moda geçmeden önce bekleyin.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.