Dijital pin sayısını artırın
Çeşitli arduinolardaki standart pinlerden daha fazlasını nasıl kullanacağını açıklayan birçok yazı var, ancak bunların hiçbiri sınırlamaları ve proplemleri düzgün bir şekilde açıklamıyor.
Arduino Uno:
1. analog pimleri kullanabilirsiniz
Pin 14 = Analog in 0
Pin 15 = Analog in 1
Pin 16 = Analog in 2
Pin 17 = Analog in 3
Pin 18 = Analog in 4
Pin 19 = Analog in 5
digitalWrite(14,HIGH);
or
digitalWrite(A0,HIGH);
2.Temel olarak aynı oldukları için hem SDA, SCL & A4, A5 kullanamazsınız (18,19).
3.TX / RX'i de kullanabilirsiniz.
"Yapma, seri iletişimi bozuyorsun ..."
"Asla 0 ve 1 pinlerini kullanmayın"
"TX / Rx Pinlerini kullanamazsınız"
Yapabilirsin ... ama önlem almalısın. Hangileri?
USB üzerinden yazılım seri olmalı, değil mi?
Yoksa USB dizisini bozabilir miyim?
TX / RX kullanırsam dahili Chip sorunları var mı?
Koddaki bu TX / RX pinlerini kullandığım için muhtemelen kullanmamalıyım Serial.print()
?
Serial.print()
0,1 pimlerini kullanan kodu yükledikten sonra kaldırmayı unutursam ne olur ?
Bir şeyler ters giderse arduino / bootloader donanımını nasıl sıfırlayabilirim?
Farklı yongalar kullanan çeşitli Arduino'lar olduğu için, yukarıdaki tüm Atmel yongaları için geçerli mi?
Peki, bu TX / RX'i veya belki de diğer analog pinleri kullanmadan önce ne biliyorum?
I / O'nuzu genişletmek için ucuz shiftregisters, pwm sürücüleri, led sürücüler, spi, i2c ve daha fazla IC'ler var
Ancak büyük problemler yoksa, arduino'nun 20 I / O pinine sahip olduğu anlamına gelir ...
Teorik olarak şunları kontrol edebilirsiniz:
17x3 = 51 = 17 RGB leds (multiplexing, pwm sourcing&sinking);
14x6 = 84 leds (multiplexing, pwm on 6 rows/colums );
10x10 = 100 leds (multiplexing, high low);
20x(20-1) = 380 leds (charlieplexing, high low);
// yes it would flicker
Yanlışsam düzelt. Bu, diyotları ve bir arduino kullanarak 380 "Ne olursa olsun" kontrol edebileceğiniz anlamına gelir.