Kullanılmayan analog girişlerle ne yapmalı?


10

ATmega328p atmel mikrodenetleyici kullanarak bir uygulama üzerinde çalışıyorum. 28 PDIP sürümü ile başladım, ancak şimdi Altium projemi derledikten sonra 2 ekstra giriş olduğunu fark ettiğim 32 TQFP'yi kullanmak istiyorum.

Bu girişler, veri sayfasına göre "A / D dönüştürücüye analog giriş görevi gören ADC7: 6'dır. Bu pinler analog beslemeden beslenir ve 10 bit ADC kanalları olarak görev yapar".

Çevrimiçi okudum, bazı insanlar ADC'yi kullandıklarında ve değişken girdilere sahip olduklarında bilinmeyen sonuçlar aldılar. Yaptıklarını okuduğum şey aşağı açılır dirençleri etkinleştirmek, ancak bunları nasıl yapılandıracağımı görmüyorum (çünkü bir G / Ç bağlantı noktasına ait değiller). Ayrıca, uygulamam A / D dönüştürücüsünü bile kullanmıyor.

En iyi uygulamalar nelerdir? Harici bir aşağı çekme direnci bağlamalı mıyım? Altium hatası yoksayılsın mı?

Yanıtlar:


8

ADC6 ve ADC7 özel bir durumdur. Kendilerine bağlı herhangi bir dijital giriş veya çıkış tamponu yoktur, bu nedenle uygun şekilde teslim edilmezlerse, çip üzerindeki diğer pimler gibi gürültü oluşturmaz veya aşırı akım çekmezler. Başka bir deyişle, onları yüzer halde bırakabilirsiniz ve tasarımınızı anormal bir şekilde etkilememelidir.

Ayrıca herhangi bir dahili pull up veya pull down yok, bu yüzden onları yukarı veya aşağı bağlamayı planlıyorsanız, bunu harici olarak yapmanız gerekir.

Yine de hiçbir zaman çıktı alınamayacağından, direncin kullanımında doğrudan VCC veya GND'ye bağlanmasına karşı ek bir güvenlik veya koruma yoktur. Kayan analog girişlerden hala endişe duyuyorsanız, ADC7'yi yanındaki GND pinine ve ADC6'yı AVCC'ye (veya isterseniz AREF'e) bağlayabilirsiniz.

Örnekleme ve tutma kapasitörü küçüktür, bu nedenle temizleme önerisini izlemeye karar verirseniz , örneklemek için ADC7'yi kullanabilirsiniz - kapasitör çok hızlı bir şekilde toprağa boşalır ve açıklanan faydaları elde edersiniz.


I / O pinlerinin geri kalanı gibi başka bir işleve sahip olmalarından endişeliydim, ama haklısınız, çünkü değiller, onları yüzen bırakma seçeneğini kullanmalıyım. Ayrıca, uygulamanın son sürümünü tasarladığım ve ADC'nin asla kullanılmayacağını biliyorum.
esal26

ADC6 ve 7'nin "özel" olduğunu nereden buldunuz? Veri sayfasından bu girdilerin diğerlerinden farklı olduğunu doğrulayamıyorum.
Rev1.0

@ Rev1.0 Veri sayfasında bunu gösteren birçok yer vardır . Muhtemelen en bariz olanı şu cümledeki son cümledir 24.9.5: "ADC7 ve ADC6 ADC pinlerinin dijital giriş arabellekleri olmadığını ve bu nedenle Dijital Giriş Devre Dışı Bitleri gerektirmediğini unutmayın." Ayrıca 2.1, ADC'nin [6..7] doğrudan ADC'ye gittiğini gösteren blok diyagramına dikkat edin, diğer 6 ADC portu PORTC ile paylaşılır ve Fig 1-1ADC6 ve ADC7'deki pinoutların paylaşılan işlevleri yoktur.
Adam Davis

Hatam 324/644 veri sayfasına bakıyordum. Bu, bu "uzmanlığı" gördüğüm ilk Atmel denetleyicisidir.
Rev1.0

12

Bir aşağı çekme direnci iyidir, evet. Sadece girişleri stabilize etmekle ve aşırı akım çekmesini önlemekle kalmaz, aynı zamanda bunları Numune ve Tutma kondansatörü temizleme cihazı olarak kullanabileceğiniz gizli bir yararı vardır. Diğer girişlerinizin okumaları arasındaki bu ekstra girişlerden birinden analog bir değer okursanız, örnek ve tutma kapasitörü her zaman aynı seviyeden başlayacağından okumalarınızı biraz daha kararlı hale getirebilir.

Direnç ne kadar küçük olursa kondansatör o kadar hızlı boşalır, ancak çıkış akımı artar. 470Ω civarında bir şey iyidir. Ayrıca çıkış olarak yapılandırılan ve yüksek sürülen pime karşı da koruma sağlar.


1
Bunu yaparsam bekleyin 1) Gerçek analog değeri oku 2) Aşağı açılan analogu oku, gerçek analog değerim daha az gürültülü olacak mı?
Funkyguy

1
Diğer kanallardan yapılan okumalardan daha az etkilenecektir. Kanal 1'i okuyun, yedek kanalı okuyun, kanal 2'yi okuyun, yedek kanalı okuyun vb.
Majenko

Vay, bu çok tatlı!
Funkyguy

3
Değişken girdilere sahip aşırı bir örnek: forum.arduino.cc/index.php?topic=182446.0
Majenko

Örnek ve tutma kapağına aşina olmasam da , onu tamamen boşaltmak ve aynı referans noktasından her seferinde örneklemeye başlamak mantıklı. İyi fikir.
sherrellbc
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.