Arduino'nun bağlantısı kesilmiş pinte bir giriş değeri var


9

Arduino'da yeniyim. Belki temel bir soru ...

Bu programı yüklersem:

int mval = 0;
void setup() {
  Serial.begin(9600);
  // set up the LCD's number of columns and rows: 

}

void loop() {

  mval = analogRead(1);
  Serial.println(mval);

  delay(1000);
 }

300 ile 400 arasında değişen bir değer elde ederim. 0 olması gerektiğini düşündüğümde, bu girdiye bağlı hiçbir şey olmaması.

Herhangi bir fikir?? Dizüstü bilgisayarıma USB ile bağlı bir arduino UNO


Yanıtlar:


12

"Değişken girdi" adı verilen bir şey alıyorsunuz. Bunu düşündüğünüzde, girişi ölçmek için ideal bir cihaz çok yüksek bir giriş empedansına sahip olacak ve bu nedenle pimden çok fazla elektrik çıkarmayacaktır.

Öyleyse, rastgele elektronların pime (ya da ortamın dışına elektromanyetik parazitten ya da hafif bir yük ile doğrudan temastan) yüzmesi ve Bu yük çok yavaş boşalır. Bu yüzden ölçmeye gittiğinizde, orada bir miktar voltaj var gibi görünüyor! Genel olarak, bunu voltaj sağlayan bir cihaza bağlarsınız veya bir çekme veya aşağı çekme direnci koyar ve bu pimden beklentilerinizi ayarlarsınız.

Umarım bu yardımcı olur ve eğer değilse, birisinin bu soruyu daha yetkin bir şekilde cevaplayan başka bir kişiye bir bağlantısı olduğundan eminim (ilgili bölümde en az bir tane aynı özdeş soru görüyorum ).


5
Eğlenceli gerçek: Arduino dokümanları analogRead, randomSeedişlev için tohum olarak kullanılmayan bir pimdeki
Chris Laplante

2
Ha! Oldukça temiz, hoşuma gitti! Breadboard'unuza ve / veya PCB'nize biraz dalgalı bir tel hattı eklemenin, 60Hz anten uzunluğundan (yalnızca ABD endişesi) kaçındığınız sürece biraz daha fazla rastgele olmanıza yardımcı olabileceğini düşünürdüm (sonra aniden AC gürültüsü hakim olur)
Kit Scuzz

3
Daha sağlam (ve yerden tasarruf sağlayan) bir yaklaşım, RFC 1149.5 standart rasgele sayı üretecini
Chris Laplante

4

Giriş "yüzer" dir, çünkü gerilimi şu veya bu şekilde "çekmek" için hiçbir şey yoktur.
Bu tamamen normal. Eğer pimden toprağa yüksek empedanslı bir çekme direnci (10k diyelim) bağlarsanız, hiçbir şey bağlı olmadığında bunu yapmayı durduracaktır (hiçbir şey olmadığında okumayacağınız için gerçek bir gerek yoktur) bağlı ;-))


ADC'ye bağlanırsa çekme direnci sinyali değişecek mi?
user30878
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.