TXS0108E एक द्वि-दिशात्मक वोल्टेज स्तर शिफ्टर है जो 3.3V और 5V जैसे विभिन्न वोल्टेज स्तरों पर काम करने वाले उपकरणों के बीच सुरक्षित संचार की अनुमति देता है। यह आमतौर पर 3.3V सेंसर या मॉड्यूल के साथ 5V माइक्रोकंट्रोलर (जैसे Arduino) को इंटरफ़ेस करने के लिए उपयोग किया जाता है। यह ट्यूटोरियल आपको Arduino के साथ TXS0108E का उपयोग करके मार्गदर्शन करेगा।
आपको क्या चाहिए
- TXS0108E वोल्टेज स्तर शिफ्टर मॉड्यूल
- Arduino बोर्ड (जैसे, UNO, मेगा, नैनो)
- 3.3V और 5V डिवाइस (जैसे, सेंसर, मॉड्यूल)
- ब्रेडबोर्ड और जम्पर तार
- Arduino IDE के साथ एक कंप्यूटर स्थापित
चरण 1: TXS0108E मॉड्यूल को समझना
TXS0108E मॉड्यूल में दो पावर डोमेन हैं:
- VCCA: कम -वोल्टेज पक्ष के लिए बिजली की आपूर्ति (1.2V - 3.6V, जैसे, 3.3V डिवाइस)।
- VCCB: उच्च -वोल्टेज पक्ष के लिए बिजली की आपूर्ति (1.65V - 5.5V, जैसे, 5V डिवाइस)।
यह 8 द्वि-दिशात्मक डेटा लाइनों को संभाल सकता है, दोनों दिशाओं में संचार की अनुमति देता है।
TXS0108E पिनआउट
नत्थी करना | समारोह |
---|---|
वीसीसीए | कम वोल्टेज साइड बिजली की आपूर्ति |
वीसीसीबी | उच्च वोल्टेज साइड बिजली की आपूर्ति |
Gnd | मैदान |
ँ | आउटपुट सक्षम (सक्रिय उच्च) |
कुल्हाड़ी | कम वोल्टेज साइड डेटा लाइनें (A1-A8) |
बीएक्स | उच्च-वोल्टेज साइड डेटा लाइनें (B1-B8) |
चरण 2: Arduino को TXS0108E को वायरिंग करें
नीचे TXS0108E को Arduino और 3.3V I2C डिवाइस (जैसे, BMP280 सेंसर) से जोड़ने का एक उदाहरण है:
कनेक्शन
TXS0108E पिन | अर्डुइनो पिन | 3.3V डिवाइस पिन |
---|---|---|
वीसीसीए | 3.3 | 3.3 |
वीसीसीबी | 5V | एन/ए |
Gnd | Gnd | Gnd |
ए 1 | ए 4 (एसडीए, कम वोल्टेज) | एसएडीए |
ए 2 | ए 5 (एससीएल, कम-वोल्टेज) | आयोग |
बी 1 | युक्ति एसडीए | एन/ए |
बी 2 | युक्ति एससीएल | एन/ए |
ँ | 5V | एन/ए |
टिप्पणी: सुनिश्चित करें कि VCCA और VCCB दोनों अपने संबंधित वोल्टेज आपूर्ति से जुड़े हैं और
OE
मॉड्यूल को सक्षम करने के लिए उच्च (5V) से बंधा हुआ है।
चरण 3: Arduino कोड अपलोड करें
यहाँ TXS0108E के माध्यम से 3.3V I2C डिवाइस (जैसे, BMP280 सेंसर) के साथ संवाद करने के लिए एक उदाहरण स्केच है:
उदाहरण कोड
#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
}
चरण 4: सेटअप का परीक्षण करें
- USB के माध्यम से अपने कंप्यूटर से Arduino कनेक्ट करें।
- Arduino ide खोलें और सही का चयन करें तख़्ता और पत्तन नीचे औजार मेनू।
- क्लिक करके कोड अपलोड करें अपलोड करना.
- सीरियल मॉनिटर खोलें (औजार > सीरियल मॉनिटर) और बॉड दर निर्धारित करें
9600
. - BMP280 सेंसर से तापमान और दबाव रीडिंग का निरीक्षण करें।
TXS0108E के अनुप्रयोग
- 3.3V सेंसर या मॉड्यूल के साथ 5V माइक्रोकंट्रोलर को इंटरफेस करना।
- SPI, I2C, UART, या अन्य संचार प्रोटोकॉल के लिए स्तर-शिफ्टिंग।
- मिश्रित-वोल्टेज उपकरणों के बीच द्वि-दिशात्मक संचार को सक्षम करना।
समस्या निवारण
- कोई संचार नहीं: VCCA, VCCB और OE के लिए वायरिंग सत्यापित करें। सुनिश्चित करें कि सही I2C पते का उपयोग किया जाता है।
- अस्थिर डेटा: छोटे तारों का उपयोग करें और स्थिर बिजली की आपूर्ति के लिए जांच करें।
- डिवाइस जवाब नहीं दे रहा है: दोनों पक्षों पर वोल्टेज संगतता और डबल-चेक कनेक्शन सुनिश्चित करें।
निष्कर्ष
आपने विभिन्न वोल्टेज स्तरों पर संचालित उपकरणों के बीच संचार को सक्षम करने के लिए Arduino के साथ TXS0108E स्तर शिफ्टर का सफलतापूर्वक उपयोग किया है। यह बहुमुखी मॉड्यूल मिश्रित-सिग्नल सिस्टम में वोल्टेज अंतराल को ब्रिज करने के लिए आवश्यक है। अन्य उपकरणों को जोड़कर और अपनी परियोजनाओं में इसके अनुप्रयोगों की खोज करके आगे प्रयोग करें!