TXS0108E on kaksisuuntainen jännitetason vaihtaja, joka sallii turvallisen viestinnän eri jännitetasoilla toimivien laitteiden välillä, kuten 3,3 V ja 5 V. Sitä käytetään yleisesti 5 V: n mikrokontrollerien (kuten Arduino) rajaamiseen 3,3 V: n antureilla tai moduuleilla. Tämä opetusohjelma opastaa sinua käyttämällä TXS0108E: tä Arduinon kanssa.
Mitä tarvitset
- TXS0108E -jännitetason vaihtosuunnitelma moduuli
- Arduino Board (esim. UNO, Mega, Nano)
- 3,3 V ja 5 V: n laitteet (esim. Anturit, moduulit)
- Leipälevy- ja hyppyjohdot
- Tietokone, jossa Arduino IDE on asennettu
Vaihe 1: TXS0108E -moduulin ymmärtäminen
TXS0108E -moduulissa on kaksi tehoaluetta:
- VCCA: Virtalähde matalajänniteellä (1,2 V - 3,6 V, esim. 3,3 V laitteet).
- VCCB: Virtalähde korkeajännitteiselle puolelle (1,65 V - 5,5 V, esim. 5 V: n laitteet).
Se pystyy käsittelemään jopa 8 kaksisuuntaista tietolinjaa, mikä mahdollistaa viestinnän molempiin suuntiin.
TXS0108E PINOUT
Nasta | Funktio |
---|---|
VCCA | Matalan jännitteisen sivun virtalähde |
VCCB | Korkeajännite-sivunsiirto |
Hölynpöly | Pohja |
OE | Lähtö käyttöön (aktiivinen korkea) |
Kirves | Pienjännite-sivutietolinjat (A1-A8) |
Bx | Korkeajännitteisen sivutietolinjat (B1-B8) |
Vaihe 2: TXS0108E: n johdotus Arduinolle
Alla on esimerkki TXS0108E: n yhdistämisestä Arduinoon ja 3,3 V I2C -laitteeseen (esim. BMP280 -anturi):
Yhteydet
TXS0108E -nasta | Arduino -nasta | 3,3 V: n laitetappi |
---|---|---|
VCCA | 3,3 V | 3,3 V |
VCCB | 5V | N/a |
Hölynpöly | Hölynpöly | Hölynpöly |
A1 | A4 (SDA, matalajännite) | SDA |
A2 | A5 (SCL, matalajännite) | SCL |
B1 | Laite SDA | N/a |
B2 | Laite SCL | N/a |
OE | 5V | N/a |
Huomaa: Varmista, että sekä VCCA että VCCB ovat kytketty vastaaviin jännitestustarvikkeisiinsa ja että
OE
on sidottu korkeaan (5 V) moduulin mahdollistamiseksi.
Vaihe 3: Lataa Arduino -koodi
Tässä on esimerkki luonnos kommunikoida 3,3 V I2C -laitteen (esim. BMP280 -anturin) kanssa TXS0108E: n kautta:
Esimerkkikoodi
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BMP280.h>
Adafruit_BMP280 bmp; // Create BMP280 object
void setup() {
Serial.begin(9600);
while (!Serial);
Serial.println("Initializing BMP280...");
if (!bmp.begin(0x76)) { // Default I2C address for BMP280
Serial.println("Could not find a valid BMP280 sensor. Check wiring.");
while (1);
}
Serial.println("BMP280 initialized.");
}
void loop() {
Serial.print("Temperature: ");
Serial.print(bmp.readTemperature());
Serial.println(" °C");
Serial.print("Pressure: ");
Serial.print(bmp.readPressure());
Serial.println(" Pa");
delay(1000); // Wait for a second before the next reading
}
Vaihe 4: Testaa asennus
- Kytke Arduino tietokoneeseen USB: n kautta.
- Avaa Arduino IDE ja valitse oikea Hallitus ja Satama alla Työkalut valikko.
- Lataa koodi napsauttamalla Ladata.
- Avaa sarjamonitori (Työkalut > Sarjamonitori) ja aseta baud -arvo
9600
. - Tarkkaile BMP280 -anturin lämpötilan ja paineen lukemia.
TXS0108E -sovellukset
- Liitäntä 5 V: n mikrokontrollerit 3,3 V: n antureilla tai moduuleilla.
- SPI-, I2C-, UART- tai muille viestintäprotokollille.
- Kaksisuuntaisen viestinnän mahdollistaminen sekajänniteaineiden välillä.
Vianetsintä
- Ei viestintää: Varmista VCCA: n, VCCB: n ja OE: n johdotus. Varmista, että käytetään oikeaa I2C -osoitetta.
- Epävakaa tieto: Käytä lyhyitä johtoja ja tarkista vakaa virtalähteet.
- Laite ei vastaa: Varmista jännitteen yhteensopivuus ja kaksois-tarkistavat liitännät molemmilta puolilta.
Johtopäätös
Olet onnistuneesti käyttänyt TXS0108E -tason vaihtajaa Arduinon kanssa, jotta viestintä on eri jännitetasoilla toimivien laitteiden välillä. Tämä monipuolinen moduuli on välttämätöntä jännitteiden aukkojen siltaamiseksi sekoitetuissa signaalijärjestelmissä. Kokeile edelleen yhdistämällä muut laitteet ja tutkimalla sen sovelluksia projekteissasi!