Kuinka käyttää CD74HC4067 -multiplekseriä Arduinon kanssa

How to Use the CD74HC4067 Multiplexer with Arduino

CD74HC4067 on 16-kanavainen analoginen/digitaalinen multiplekseri/demultiplekseri, jonka avulla voit laajentaa Arduinon syöttö- tai lähtötaput. Se on erityisen hyödyllinen projekteissa, jotka vaativat useita antureita, painikkeita tai LED -levyjä, minimoimalla nastakäyttöä. Tämä opetusohjelma opastaa sinua kytkemällä ja käyttämällä CD74HC4067 Arduinon kanssa.


Mitä tarvitset

  1. CD74HC4067 Multiplekserimoduuli tai IC
  2. Arduino Board (esim. UNO, Mega, Nano)
  3. Anturit, painikkeet tai LEDit testattavaksi
  4. Leipälevy- ja hyppyjohdot
  5. Tietokone, jossa Arduino IDE on asennettu

Vaihe 1: CD74HC4067: n ymmärtäminen

CD74HC4067 toimii kytkimenä, joka yhdistää yhden sen 16 tulo-/lähtötapista yhteen yhteiseen PIN -koodiin. Voit hallita, mikä kanava on aktiivinen käyttämällä 4 ohjaustappia (S0 - S3).

Pinot

Nasta Funktio
VCC Virtalähde (3,3 V tai 5 V)
Hölynpöly Pohja
S0, S1, S2, S3 Ohjaustapit (aktiivisen kanavan valitseminen)
Fi Ota PIN (aktiivinen matala; kytke GND: hen käyttöön)
Com Yleinen I/O -nasta (kytke Arduino)
CH0-CH15 Kanavat 0 - 15 (kytke antureihin, painikkeisiin tai LEDiin)

Vaihe 2: CD74HC4067: n johdotus Arduinolle

Näin yhdistetään CD74HC4067 Arduino UNO: lle:

CD74HC4067 -nasta Arduino -nasta
VCC 5V
Hölynpöly Hölynpöly
S0 Nasta 8
S1 Tappi 9
S2 Nasta 10
S3 Nasta 11
Fi Hölynpöly
Com A0 (analogisten signaalien lukemiseen)
CH0-CH15 Anturit, LEDit tai painikkeet

Vaihe 3: Lataa koodi

Seuraava esimerkki osoittaa, kuinka luetaan analogiarvoja CD74HC4067: een kytkettyistä antureista:

Esimerkkikoodi

const int s0 = 8; // Control pin S0
const int s1 = 9; // Control pin S1
const int s2 = 10; // Control pin S2
const int s3 = 11; // Control pin S3
const int comPin = A0; // Common pin connected to A0

void setup() {
  pinMode(s0, OUTPUT);
  pinMode(s1, OUTPUT);
  pinMode(s2, OUTPUT);
  pinMode(s3, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  for (int i = 0; i < 16; i++) {
    selectChannel(i); // Select the active channel
    int sensorValue = analogRead(comPin); // Read the value from the sensor
    Serial.print("Channel ");
    Serial.print(i);
    Serial.print(": ");
    Serial.println(sensorValue);
    delay(500); // Small delay for readability
  }
}

void selectChannel(int channel) {
  digitalWrite(s0, channel & 0x01); // Set S0
  digitalWrite(s1, (channel >> 1) & 0x01); // Set S1
  digitalWrite(s2, (channel >> 2) & 0x01); // Set S2
  digitalWrite(s3, (channel >> 3) & 0x01); // Set S3
}

Vaihe 4: Testaa asennus

  1. Kytke Arduino tietokoneeseen USB: n kautta.
  2. Avaa Arduino IDE ja valitse oikea Hallitus ja Satama alla Työkalut valikko.
  3. Lataa koodi napsauttamalla Ladata.
  4. Avaa sarjamonitori (Työkalut > Sarjamonitori) ja aseta baud -arvo 9600.
  5. Tarkkaile sarjamonitorissa näytettävien kanavien analogisia arvoja.

Valinnainen: LEDien hallinta

Kanaviin kytkettyjen LEDien hallitsemiseksi koodin muokkaamiseksi digitaalisten signaalien tulostamiseksi analogisten tulojen lukemisen sijasta. Esimerkiksi:

Esimerkkikoodi LEDille

void loop() {
  for (int i = 0; i < 16; i++) {
    selectChannel(i);
    digitalWrite(comPin, HIGH); // Turn on LED on the active channel
    delay(500);
    digitalWrite(comPin, LOW); // Turn off LED
  }
}

CD74HC4067: n sovellukset

  1. Laajentavat analogiset ja digitaaliset tulot/lähdöt
  2. Useiden anturien lukeminen rajoitetuilla nastoilla
  3. Suurten nappimatriisien rakentaminen
  4. Useiden LEDien tai releiden hallinta

Vianetsintä

  • Ei vastausta kanavista: Tarkista ohjaustapin liitännät ja varmista EN PIN on kytketty GND: hen.
  • Väärä kanavan valinta: Tarkistaa selectChannel() Logiikka S0-S3-nastajen asettamiseen.
  • Epävakaat lukemat: Varmista anturien asianmukainen maadoitus ja vakaa virtalähde.

Johtopäätös

Olet onnistuneesti liitetty CD74HC4067 -multiplekseriin Arduinon kanssa. Tämän monipuolisen moduulin avulla voit laajentaa Arduinon syöttö- ja lähtöominaisuuksia merkittävästi, joten se on ihanteellinen projekteille, joihin liittyy useita antureita, painikkeita tai LED -levyjä. Kokeile erilaisia ​​kokoonpanoja ja tutki sen koko potentiaalia!

Jätä kommentti

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.