Мені подобається ваше рішення. Оскільки питання стосується простих рішень, у мене є кілька альтернатив (деякі рішення, які надає Microchip ТУТ ):
1) Пряме підключення: Якщо Voh (високий вихідний напруга) з вашої 3,3 В логіки більше, ніж Vih (вхідна напруга високого рівня), все, що вам потрібно, це прямий зв'язок. (для цього рішення також потрібно, щоб Vol (вихідна напруга низького рівня) на виході 3,3 В був меншим, ніж Vil (низькочастотна вхідна напруга) 5В входу).
2) Якщо вищезазначені умови близькі, часто можна трохи підвищити вихідну напругу високого рівня за допомогою підтягуючого резистора (до 3,3 В) та безпосередньо підключити сигнали.
3) Підтягуючий резистор може забезпечити невелику кількість підвищення напруги високого рівня. Для отримання додаткової інформації ви можете використовувати діоди та підтягувачі до 5В. Наведена схема не підніметься до 5В, але підвищить вхідну напругу високого рівня до логіки 5В на величину падіння напруги на один діод (приблизно 0,7 В). За допомогою цього методу слід бути обережним, щоб у вас все ще був дійсний низький рівень, оскільки це також піднімається одним краплею діода. Діоди Шоткі можуть використовуватися для незначного підвищення напруги високого рівня, мінімізуючи при цьому небажане збільшення напруги низького рівня. Детальну інформацію про цю схему див. У вищенаведеній примітці програми.
імітувати цю схему - Схематично створено за допомогою CircuitLab
4) Якщо ви можете мати справу з логічною інверсією (і не вимагає активного підтягування), може бути використаний MOSFET і підтягуючий резистор:
моделювати цю схему
5) Я знаю, що ви не шукаєте логічного рішення, але для повноти згадаю одне (напевно, багато). MC74VHC1GT125 є «неинвертирующий буфер / CMOS логічний рівень Shifter з LSTTL-сумісні входи» в пакеті SOT23-5 або SOT-353. Невеликий простий і дешевий.
Мабуть, ця тема також обговорювалася днями: посилюйте 3,3 до 5 В для цифрового вводу / виводу, хоча рішення там неправильне (дякую Дейву Твіду).