مبانی امبدد

اتصال ۵ ولت به ESP32؛ انتخاب تبدیل سطح ۳٫۳ و ۵ ولت

چرا رگولاتور ماژول، سطح منطقی را تضمین نمی‌کند؟ تقسیم مقاومتی، بافر و مبدل دوطرفهٔ I2C را با محاسبهٔ تلرانس و نوع سیگنال انتخاب کنید.

فهرست مطالب
عکس واقعی ماژول ESP-WROOM-32 روی برد توسعه؛ تصویر مدار تبدیل سطحِ ساخته‌شده نیست.
عکس واقعی ماژول ESP-WROOM-32 روی برد توسعه؛ تصویر مدار تبدیل سطحِ ساخته‌شده نیست. عکس: Brian Krent؛ منبع Wikimedia Commons؛ CC BY-SA 4.0. محتوای عکس ویرایش نشده؛ نسخهٔ نمایشی ویکی‌مدیا استفاده شده است.

پاسخ کوتاه: اول نوع سیگنال را مشخص کنید

یک خروجی ۵ ولتی را صرفاً به دلیل داشتن زمین مشترک به ورودی ESP32 وصل نکنید. ابتدا ولتاژ مجاز ورودی، آستانهٔ High و Low، جهت انتقال و نوع خروجی را از مستندات دو طرف بخوانید. رگولاتور روی ماژول ممکن است فقط تغذیهٔ تراشه را کم کند؛ SDA، SCL یا TX الزاماً تبدیل سطح نشده‌اند.

این راهنما برای سیگنال‌های دیجیتال کم‌ولتاژ است، نه تبدیل توان یا اتصال به برق شهر. هیچ مقدار مقاومت یا ماژول آماده‌ای بدون بررسی مدار واقعی، سرعت و شرایط تغذیه تضمین نمی‌شود. اگر اتصال فعلی ناشناخته است، ابتدا دو برد را خاموش و مسیر سیم‌ها را مشخص کنید.

چهار عددی که باید کنار هم بخوانید

پارامترپرسش عملی
حد مجاز ولتاژ ورودیآیا حتی در بدترین حالت به ورودی آسیب می‌رسد؟
VIH(min)کمترین ولتاژی که گیرنده High معتبر می‌شناسد چیست؟
VIL(max)بیشترین ولتاژی که Low معتبر محسوب می‌شود چیست؟
VOH(min) و VOL(max)فرستنده زیر بار مشخص واقعاً چه سطحی تحویل می‌دهد؟

برای تشخیص سازگاری، حداقل High فرستنده باید با حداقل High موردنیاز گیرنده سازگار باشد؛ Low و حد آسیب نیز مستقل بررسی شوند. این‌که روی یک نمونه با مولتی‌متر ۳٫۳ ولت دیده‌اید، مقدار تضمین‌شدهٔ خروجی زیر هر بار و دما نیست. روش خواندن شرط جدول در چگونه دیتاشیت بخوانیم؟ از حد مطلق تا انتخاب قطعه توضیح داده شده است.

مثال محاسباتی: کاهش یک خروجی یک‌طرفهٔ ۵ ولتی

برای یک سیگنال Push-pull یک‌طرفه و ورودی با امپدانس بالا، تقسیم مقاومتی یکی از گزینه‌هاست. در مثال آموزشی، مقاومت بالایی ۱۰ kΩ از فرستنده تا گره خروجی و مقاومت پایینی ۱۸ kΩ از گره تا GND است. ورودی گیرنده به همین گره وصل می‌شود؛ تغذیهٔ گیرنده را از این تقسیم نگیرید.

Vout = Vin * Rbottom / (Rtop + Rbottom)
Vin = 5.00 V; Rtop = 10 kohm; Rbottom = 18 kohm
Vout = 3.214 V (ideal, unloaded)
Rth = Rtop || Rbottom = 6.429 kohm

اگر سقف فرضی خروجی فرستنده ۵٫۲۵ ولت و تلرانس هر دو مقاومت ۱٪ باشد، بیشترین خروجیِ بی‌بار با Rtop=9.9k و Rbottom=18.18k حدود ۳٫۳۹۹ ولت می‌شود. این فقط محاسبه است؛ باید با تغذیه، حد مجاز و آستانهٔ همان گیرنده مقایسه شود. ولتاژ Low، جریان نشتی و حالت خاموش‌بودن یکی از دو برد را نیز جا نیندازید.

نمودار آموزشی تألیفی: اتصال ۵ ولت به ESP32؛ انتخاب تبدیل سطح ۳٫۳ و ۵ ولت
نمودار آموزشی تألیفی LCENJ؛ عکس مدار، شکل موج اندازه‌گیری‌شده یا نتیجهٔ آزمایش فیزیکی نیست. فرض‌ها و کاربرد آن در متن توضیح داده شده است.

چرا همین تقسیم برای هر سرعت و هر باس مناسب نیست؟

مقاومت معادل دیده‌شده از گره و ظرفیت ورودی و کابل، یک پاسخ RC می‌سازند. اگر ظرفیت فرضی ۱۰۰ pF باشد، ثابت زمانی این مثال حدود ۰٫۶۴۳ میکروثانیه و زمان بالا رفتن ۱۰ تا ۹۰ درصد تقریباً ۱٫۴۱ میکروثانیه است. این تأخیر در برابر یک بیت UART با نرخ ۱۱۵۲۰۰، که حدود ۸٫۶۸ میکروثانیه طول دارد، دیگر ناچیز نیست.

کم‌کردن مقاومت‌ها لبه را سریع‌تر می‌کند ولی بار و مصرف فرستنده را بالا می‌برد. شکل موج را در ورودی گیرنده بررسی کنید، نه فقط کنار فرستنده. برای SPI سریع یا مسیر طولانی، از محاسبهٔ DC یک مقاومت، سازگاری کامل نتیجه نگیرید. مقالهٔ تفاوت I2C، SPI و UART؛ انتخاب رابط برای سنسور و ماژول کمک می‌کند محدودیت پروتکل را هم ببینید.

افزایش سطح ۳٫۳ به ۵ ولت؛ آستانه تعیین‌کننده است

گاهی گیرندهٔ ۵ ولتی، High سه‌ولت‌وسه را می‌پذیرد و گاهی نمی‌پذیرد. این موضوع از نام «۵ ولتی» معلوم نمی‌شود. برای نمونه، SN74AHCT125 در تغذیهٔ توصیه‌شدهٔ ۴٫۵ تا ۵٫۵ ولت، حد VIH برابر ۲ ولت دارد. این قطعه می‌تواند در طراحی مناسب، یک سیگنال ۳٫۳ ولتی معتبر را به سطح خروجی وابسته به تغذیهٔ ۵ ولت تبدیل کند.

مثال بافر، مجوز اتصال معکوس نیست: خروجی ۵ ولتی بافر را مستقیم به GPIO فاقد تحمل ۵ ولت برنگردانید. پایهٔ Enable، ورودی‌های استفاده‌نشده، جریان بار و ترتیب روشن‌شدن باید مطابق دیتاشیت طراحی شوند. بافر یک‌طرفه را نیز جای یک مبدل دوطرفه روی باس مشترک نگذارید.

I2C به مسیر رفت‌وبرگشت و Pull-up نیاز دارد

در I2C متعارف، هر دو طرف می‌توانند خط را Low کنند و مقاومت‌های بالاکش، سطح High را می‌سازند. یک تقسیم مقاومتی ساده همان رفتار را حفظ نمی‌کند. نمونهٔ قطعهٔ مخصوص این کاربرد، PCA9306 است؛ تنظیم پایه‌های مرجع و Enable و مقاومت‌های دو طرف باید از مدار پیشنهادی همان قطعه خوانده شود.

وجود چهار کانال روی یک ماژول عمومی به معنی سازگاری قطعی با هر سرعت، SPI یا UART نیست. Pull-upهای چند برد می‌توانند موازی شوند. برای محاسبهٔ مقاومت و ظرفیت باس از راهنمای TI و برای یافتن علت عدم پاسخ از عیب‌یابی I2C در ESP32 استفاده کنید.

آزمون پذیرش و پرسش‌های رایج

برگهٔ همراه را برای هر خط جدا پر کنید: نام فرستنده و گیرنده، جهت، دامنهٔ ولتاژ، نرخ، ظرفیت تخمینی و حالت قطع تغذیه. سپس با اتصال کوتاه و یک دستگاه شروع کنید؛ سطح آزاد و فعال را اندازه بگیرید و فقط بعد از تأیید، تعداد دستگاه‌ها را زیاد کنید.

آیا همهٔ GPIOهای STM32 تحمل ۵ ولت دارند؟

خیر. علامت تحمل، نوع پایه و شروط تغذیهٔ همان مدل را از دیتاشیت بخوانید؛ مخصوصاً ورودی آنالوگ را مانند GPIO دیجیتال فرض نکنید.

آیا مقاومت سری به‌تنهایی تبدیل سطح است؟

به‌خودی‌خود خیر. تکیه بر دیود محافظ داخلی و محدودکردن جریان، بدون مجوز صریح مشخصات، روش عمومی تبدیل سطح نیست.

اگر هر دو برد ۳٫۳ ولتی‌اند، دیگر بررسی لازم نیست؟

نشتی، اختلاف زمین، ترتیب روشن‌شدن و نوع خروجی همچنان مهم‌اند؛ نام ولتاژ، سلامت سیم‌بندی را تضمین نمی‌کند.

منابع رسمی و فایل‌های همراه

منابع فنی در ۲۰۲۶/۱۰/۱۳ بررسی شده‌اند. نسخه و مدل قطعهٔ خود را با سند مرتبط تطبیق دهید.

دریافت برگهٔ تصمیم و ثبت آزمون (CSV)؛ بستهٔ کامل مقاله و فایل‌های همراه از بخش دانلود همین صفحه در دسترس است.

شیوهٔ تدوین: تهیه و بررسی فنی با کمک ابزارهای هوش مصنوعی، منابع رسمی و مثال‌های محاسباتی. اعداد فرضی با برچسب مثال آمده‌اند؛ آزمون نرم‌افزاری یا کامپایل، جای آزمون قطعه و مدار واقعی را نمی‌گیرد.

پرسش و پاسخ مقاله

سوال فنی خود را مطرح کنید

پرسش‌ها و پاسخ‌ها پس از بررسی مدیر منتشر می‌شوند. نویسنده، پیش‌نویس در انتظار بررسی را می‌بیند.

هنوز پرسش تاییدشده‌ای برای این مقاله ثبت نشده است.