sergsv1

Пикабушник
Kivell Lusinda2019
Lusinda2019 и еще 1 донатер
3986 рейтинг 338 подписчиков 1 подписка 143 поста 15 в горячем
10

Подключение Дисплея GMT130-V1.0 (IPS 240240, контроллер ST7789) к Arduino Nano

Подключение GMT130-V1.0 (IPS 240×240, контроллер ST7789) к Arduino Nano

Ниже — рабочая инструкция: распиновка, замечания по питанию/уровням логики и готовый пример скетча с использованием библиотек Adafruit (самый простой путь).

1) Коротко о важном

  • Модуль на ST7789 работает от 3.3 В. Нельзя подавать 5 В на VCC/логические входы.

  • Arduino Nano — 5 В логика; требуется преобразование уровней для линий MOSI, SCK, DC, CS, RST (или использовать модуль Согласование логических уровней).

  • Аппаратный SPI на Nano:

  • MOSI = D11,

  • MISO = D12,

  • SCK = D13.

  • ST7789 обычно использует только MOSI+SCK (без MISO).

  • Подсветку (BL, LED, BCK или BLK) обычно подключают к 3.3 В через транзистор/резистор либо к PWM-выходу через N-MOSFET/PNP, если нужен ярк-контроль.

2) Рекомендованная распиновка (названия могут отличаться на модуле: SDA/MOSI, SCL/SCK, DC, RST, CS, BL, VCC, GND)

Модуль (GMT130)Arduino NanoGNDGNDVCC (или 3.3V)3.3V (на Nano или отдельный стабилизатор)SCL / SCKD13 (SCK)SDA / MOSID11 (MOSI)RSTD9 (пример) — можно и к RESET модуля напрямуюDC (или D/C)D8 (пример)BL / LED / BCK3.3V (через транзистор/резистор) или Arduino D3 для ШИМ

Если модуль имеет Согласование логических уровней 5→3.3В — провода можно вести напрямую.
Если нет — используйте 74HCT125/4050/level shifter или N-MOSFET/ резисторные делители (для MOSI/SCK не рекомендуется делитель ).

3) Подключение подсветки (без шим)

Если не нужен регулировка яркости: BL → 3.3V (через резистор, если требуется).
Если нужен PWM: Arduino D3 → N-MOSFET (например 2N7002 или 2N2222 с подтяжкой) → минус подсветки; плюс подсветки → 3.3V. Общий GND обязателен.

4) Библиотеки (установите через Library Manager)

  • Adafruit GFX Library

  • Adafruit ST7735 and ST7789 Library

(оба доступны в Library Manager Arduino IDE)

5) Пример скетча (использует аппаратный SPI)

Скопируйте и загрузите в Arduino IDE. Подставьте пины, которые вы выбрали

(в примере —

CS=D10,

DC=D8,

RST=D9).

#include <SPI.h>
#include <Adafruit_GFX.h>
#include <Adafruit_ST7789.h>

// Настройте пины согласно вашей проводке:
#define TFT_CS 10
#define TFT_DC 8
#define TFT_RST 9 // Можно -1 если RST не подключён

// Объект дисплея (использует аппаратный SPI)
Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);

void setup() {
// Настройка последовательного вывода для отладки
Serial.begin(115200);
delay(100);

// Инициализация SPI и дисплея
tft.init(240, 240); // width, height для ST7789 240x240
tft.setRotation(0); // при необходимости меняйте
tft.fillScreen(ST77XX_BLACK);

// Пример вывода
tft.setTextWrap(true);
tft.setTextSize(2);
tft.setCursor(10, 10);
tft.setTextColor(ST77XX_WHITE);
tft.println("ST7789 240x240");
tft.setTextSize(1);
tft.setCursor(10, 50);
tft.println("GMT130-V1.0");

// Простой график/цветной прямоугольник
tft.fillRect(10, 80, 220, 100, ST77XX_RED);
tft.drawRect(9, 79, 222, 102, ST77XX_WHITE);
}

void loop() {
// мигать подсветкой, если подключена к пину PWM через транзистор (пример D3)
// analogWrite(3, 128); // 0..255
delay(1000);
}

6) Полезные советы и отладка

  1. Питание: убедитесь, что 3.3 В стабилен и может отдавать достаточный ток (модули могут тянуть 100–300 мА при яркой подсветке). Лучше использовать отдельный регулятор 3.3 В, не нагрузить 3.3 V вывод Arduino если он слабый.

  2. Преобразование уровней: если не уверены — используйте буфер/level shifter. Подключение 5 В на линиях MOSI/SCK может повредить дисплей.

  3. Неправильная ориентация/цвета: попробуйте менять tft.setRotation() и инициализацию (некоторые варианты ST7789 требуют tft.init(240, 240) vs tft.init(240, 320); для 240×240 ставим 240,240).

  4. Медленная или неиспользуемая часть экрана: проверьте правильность ширины/высоты и пинов CS/DC/RST.

  5. Если модуль подписан SCL/SDA — это SPI, но названия похожи на I2C; ориентируйтесь по остальным пинам (CS, DC, RST) — это SPI-дисплей.

Показать полностью 3
5

Лабораторный блок питания до 30 В и 5А на LM317 с силовым Транзистором

Введение

Для радиолюбителя и мастера-электронщика регулируемый блок питания — один из самых необходимых инструментов. Простая микросхема LM317 позволяет строить стабилизаторы с регулируемым напряжением, однако её максимальный ток ограничен примерно 1,5 А.
Чтобы расширить возможности, применяют схему с дополнительным транзистором, который берёт на себя основную нагрузку.

Загляните на мой Телеграмм КАНАЛ Азбука РадиоСхем

Принцип работы схемы

На входе используется трансформатор ~220 В / ~25 В, после которого стоит выпрямительный мост и сглаживающий конденсатор ёмкостью 4700 мкФ. В результате получаем постоянное напряжение около +35 В.

Далее работает микросхема LM317, которая формирует стабилизированное и регулируемое выходное напряжение в диапазоне 1,25–30 В.

Чтобы увеличить токовую нагрузку, в схему добавлен мощный транзистор KT818 (можно заменить на TIP42A или аналог). Он подключён параллельно микросхеме и пропускает основной ток через себя. LM317 в таком случае управляет только напряжением, а силовой транзистор усиливает ток.

Таким образом, блок питания способен выдавать до 5 А, в зависимости от применённого транзистора и радиатора охлаждения.

DIY: Мощный преобразователь 12В в 310В для ламповой аппаратуры со стабилизацией

Особенности схемы

  • Диапазон регулировки: от 1,25 В до 30 В.

  • Максимальный ток: до 5 А (при хорошем транзисторе и охлаждении).

  • Стабильность: благодаря LM317 выходное напряжение остаётся стабильным даже при изменении нагрузки.

  • Защита: микросхема имеет встроенную защиту от перегрева и КЗ, но при больших токах важно использовать мощный радиатор.

Применение

Такой блок питания отлично подходит:

  • для питания радиолюбительских конструкций,

  • для зарядки аккумуляторов,

  • для проверки и ремонта различных устройств,

  • как универсальный лабораторный источник питания.

DC Повышающий Преобразователь на NE555 и TIP35C

Возможные замены компонентов

  • LM317 → LM338 (для больших токов до 5 А без внешнего транзистора).

  • KT818 / TIP42A → 2N3055 (с соответствующей схемой включения), BD249, TIP2955.

  • Конденсатор 4700 мкФ → большее значение для снижения пульсаций.

Таблица замен на импортные аналоги

Такой список будет полезен радиолюбителям: кто-то захочет собрать схему из старых советских деталей, а кто-то — только на импортных современных аналогах.

Заключение

Простая, надёжная и доступная схема лабораторного блока питания на LM317 с выносным транзистором остаётся одной из самых популярных среди радиолюбителей. Она легко повторяется, не требует редких деталей и способна обеспечить стабильное питание для большинства самодельных проектов.

Показать полностью 2 1
8

Мощный преобразователь 12В в 310В для ламповой аппаратуры со стабилизацией

Преобразователь анодного напряжения 310В из 12В для питания радиоламп на UC3843

Для любителей ламповой аппаратуры, желающих использовать ее в автомобиле или в любом другом месте с автономным питанием от аккумулятора 12В, обычно встает вопрос получения высокого анодного напряжения из бортовой сети . Традиционный путь — преобразование 12В в 220В переменного тока с последующим выпрямлением. Здесь предлагается немного другой вариант.

Рис.1

Рис.1

Что касается накального напряжения, то в бортовой сети автомобиля оно составляет около 13В. Это позволяет без особых проблем получить 6.5В для накала, например, последовательным включением двух однотипных ламп. Также можно использовать понижающий стабилизатор достаточной мощности.

Загляните на мой Телеграмм КАНАЛ Азбука РадиоСхем

Значительно сложнее обстоит дело с получением высокого анодного напряжения. Представляем импульсный преобразователь, позволяющий получить стабильное постоянное напряжение 310В от бортовой сети автомобиля с возможностью нагрузки десятки Вт. При этом, 310В не является фиксированным значением – выходное напряжение можно регулировать в достаточно широких пределах подбором сопротивления одного резистора.

Принципиальная схема

Рис. 1. Схема DC-DC преобразователя для питания ламповой аппаратуры от 12В, получение анодного напряжения 310В.

Основой преобразователя является широко используемая в импульсных источниках питания и DC/DC преобразователях микросхема A1 типа UC3843. Различные производители могут выпускать ее с разными префиксами, но всегда с числовым индексом 3842, 3843 или 3844. Хотя микросхема доступна в корпусах SOIC-8 и SOIC-14, в данной конструкции используется вариант в корпусе DIP-8. Важно отметить, что 14-выводной корпус имеет отдельные выводы питания и земли для выходного каскада, в то время как в 8-выводном они объединены.

Простейший двухтактный преобразователь напряжения: из 12V в 220V

Микросхема UC3843 предназначена для построения импульсных источников питания и преобразователей с широтно-импульсной модуляцией (ШИМ). Из-за невысокой мощности выходного каскада микросхемы и амплитуды выходного сигнала, достигающей напряжения питания микросхемы, в качестве ключа совместно с ней обычно применяется мощный MOSFET транзистор, что и реализовано в данной схеме.

Назначение выводов микросхемы UC3843 (8-выводный вариант):

  • Comp (вывод 1): Выход компенсации усилителя ошибки. Для стабильной работы к нему подключается конденсатор, соединенный со вторым выводом, для компенсации АЧХ усилителя ошибки.

  • Vfb (вывод 2): Вход обратной связи. Напряжение на этом выводе сравнивается с внутренним образцовым напряжением, влияя на скважность выходных импульсов для стабилизации выходного напряжения.

  • C/S (вывод 3): Вход сигнала ограничения тока. Обычно подключается к датчику тока (низкоомному резистору) в цепи истока выходного транзистора. При превышении порогового значения тока, ИС прекращает работу и переводит транзистор в закрытое состояние. В данной схеме датчик тока не используется (ввиду отсутствия подходящего низкоомного резистора у автора), поэтому вывод 3 через резистор R6 соединен с общим минусом.

  • Rt/Ct (вывод 4): Вывод для подключения времязадающей RC-цепочки. Рабочая частота внутреннего генератора определяется резистором R4 и конденсатором C3. Частота может быть изменена в широких пределах, ограничиваясь сверху быстродействием выходного транзистора, а снизу — мощностью сердечника импульсного трансформатора. Практически выбирается в диапазоне 35-85 кГц, в данном случае около 55 кГц.

  • Gnd (вывод 5): Общий вывод минуса питания.

  • Out (вывод 6): Выход, который подключается к затвору выходного МДП транзистора для управления его открыванием импульсами.

  • Vcc (вывод 7): Вход питания микросхемы.

  • Vref (вывод 8): Выход внутреннего источника опорного напряжения (5В, до 50 мА).

Микросхема A1 формирует на выводе 6 импульсы, поступающие на затвор транзистора VT1 (IRFB3207Z). Резистор R7 ограничивает импульсный ток заряда емкости затвора полевого транзистора. Стабилитрон VD5 (18В) служит для ограничения амплитуды выбросов напряжения на затворе VT1, защищая транзистор. Схема будет работоспособна и без VD5.

В стоковой цепи VT1 включена первичная обмотка повышающего импульсного трансформатора Т1. Переменное напряжение, наводимое во вторичной обмотке Т1, выпрямляется с помощью диодов VD3 (UF5408) и VD4 (UF5408) и сглаживается конденсатором С7 (100мкФ/400В). Полученное постоянное напряжение с выпрямителя через делитель напряжения (R1, R2, R3) поступает на вывод 2 (вход обратной связи) микросхемы UC3843 для стабилизации выходного напряжения.

Выходное напряжение устанавливается или изменяется подбором сопротивления резистора R2. Важно проводить замену R2 только при выключенном питании.

Последовательная ЗАРЯДКА Аккумуляторов с TP4056: простой способ без балансиров

Детали

Трансформатор Т1:

  • Сердечник: Ш-образный ферритовый с центральным керном размером 12х15мм (или другой вариант с сечением 1.8-2 см²).

  • Зазор: 0.8 мм по бокам и 1.6 мм в центральном керне.

Намотка:

  1. Вторичная обмотка (первая половина): 40 витков обмоточного провода диаметром 0.6-0.7 мм.

  2. Изоляция: Фторопласт.

  3. Первичная обмотка: 6 витков, намотанных в 12 проводов диаметром 0.6-0.7 мм (по 3 слоя, по 4 провода в каждом).

  4. Изоляция: Фторопласт.

  5. Вторичная обмотка (вторая половина): 40 витков обмоточного провода диаметром 0.6-0.7 мм.

Таким образом, первичная обмотка содержит 6 витков, намотанных в 12 проводов диаметром 0.6-0.7 мм. Вторичная обмотка суммарно имеет 80 витков провода диаметром 0.6-0.7 мм.

Показать полностью 1 1
3

Последовательная ЗАРЯДКА Аккумуляторов с TP4056: простой способ без балансиров

✅ Введение

Зарядка литий-ионных аккумуляторов — одна из самых распространённых задач среди радиолюбителей. Часто мы сталкиваемся с необходимостью собрать батарею на несколько элементов, но балансирующих плат может не быть под рукой, или проект не требует точной балансировки.

На помощь приходит интересная схема, где используются три модуля TP4056.

Каждый из которых заряжает свой элемент 18650, а переключатели или реле позволяют отключать аккумуляторы от общей цепи на время зарядки.

Загляните на мой Телеграмм КАНАЛ Азбука РадиоСхем

🧩 Принцип работы схемы

На схеме показано три контроллера TP4056, каждый из которых подключён к своему аккумулятору. Аккумуляторы соединены последовательно, что в сумме даёт напряжение до 12.6 В (3×4.2 В).

Особенность этой схемы — в наличии переключателей (K1.1, K1.2) Или использовать 5 Вольтовое Реле как показано на схеме. Во время зарядки они разрывают цепь последовательного соединения, и каждый модуль TP4056 работает независимо, заряжая свой аккумулятор по отдельности.

Когда зарядка завершена, переключатели замыкаются, и элементы снова работают как единая батарея.

⚠️ Важные особенности

  • Каждый модуль TP4056 должен быть с защитой (вариант с DW01 + 8205A), чтобы исключить перезаряд и переразряд.

  • Обязательно разрывать цепь на время зарядки! Иначе ток может пойти не туда, куда нужно, особенно если элементы разряжены неравномерно.

  • Заряжать можно от обычного 5 В USB-источника, но желательно, чтобы он выдавал не менее 1 А на каждый модуль.

✅ Преимущества такого подхода

  • Простота: не нужен балансир или специализированная плата BMS.

  • Можно использовать дешёвые и доступные модули TP4056.

  • Гибкость: подходит для небольших DIY-проектов, переносной акустики, светильников и т.д.

❌ Недостатки

  1. Отсутствие полноценной балансировки при разряде.

  2. Нужно вручную управлять переключателями (можно заменить на 5 вольтовое реле или MOSFET для автоматизации как показано на схеме пунктиром).

  3. Не годится для мощных цепей и бесперебоного питания

📌 Заключение

Такая схема — отличное решение для тех, кто хочет собрать трёхбаночную Li-Ion батарею без сложной электроники, при этом безопасно и эффективно заряжать каждый элемент. Главное — не забывать разрывать последовательное соединение при зарядке.

Показать полностью 2 1
6

Блок питания на трёх КРЕН-ках: просто, надёжно, удобно

В радиолюбительской практике часто возникает необходимость получить сразу несколько стандартных напряжений: +12 В, +9 В и +5 В. Например, +12 В нужно для усилителей или реле, +9 В — для логики, а +5 В — для питания микроконтроллеров.

Чтобы не собирать отдельные блоки питания на каждое напряжение, можно воспользоваться каскадным включением трёх линейных стабилизаторов серии 78xx — это удобное и надёжное решение, особенно для лабораторного применения.

🔧 Принцип работы схемы

На вход схемы подаётся переменное напряжение 220 В через выключатель SA1 и предохранитель FU1, после чего оно поступает на силовой трансформатор T1, который понижает его до нужного уровня (обычно 15–18 В переменного напряжения на вторичке).

Далее:

  1. Мостовой выпрямитель (VD2) преобразует переменку в постоянное напряжение.

  2. Конденсатор C4 (4700 мкФ × 50 В) сглаживает пульсации.

  3. Питание поступает на стабилизатор 7812 (DA3), который выдает стабильные +12 В.

  4. Далее эти +12 В подаются на 7809 (DA2), затем на 7805 (DA1), получаем +9 В и +5 В соответственно.

Для каждой КРЕН-ки установлен свой выходной фильтрующий конденсатор (C1–C3, по 0.47 мкФ), что улучшает устойчивость работы и фильтрацию пульсаций. Можно еще добавить и электролитические конденсатора. Например на 1000 мК

Также установлен индикатор питания на светодиоде VD1 с резистором R1 (2.7 кОм) — он загорается, когда на выходе появляется напряжение.

⚡ Преимущества каскадного включения КРЕН-ок:

  • ✅ Минимум деталей — все стабилизаторы легко доступны и недороги.

  • ✅ Разгрузка стабилизаторов — каждая следующая ступень снижает нагрузку на предыдущую.

  • ✅ Пониженное тепловыделение — за счёт ступенчатого понижения напряжения.

  • ✅ Универсальность — подходит для питания сразу нескольких устройств.

🛠 Что важно учитывать:

Компонент Рекомендации

  • Трансформатор Вторичка не менее 15–18 В переменного, ток — от 1 А

  • Конденсатор C4 Ёмкость не менее 4700 мкФ, напряжение не ниже 35–50 В

  • Стабилизаторы КРЕН12, КРЕН9, КРЕН5 или импортные 7812, 7809, 7805

  • Охлаждение Рекомендуется поставить радиатор хотя бы на 7812

🔌Модернизация схемы

🔋 Где пригодится такая схема?

  • Как Лабораторный блок питания для начинающих

  • Для испытаний схем

  • В макетах и отладочных платах

  • Для питания Arduino, реле, логики, усилителей

📎 Заключение

Собрать универсальный блок питания с выходами +12 В / +9 В / +5 В — несложно. Достаточно использовать три стабилизатора серии 78xx, один трансформатор, и несколько конденсаторов. Такая схема проста в повторении и обеспечивает стабильное питание сразу нескольких потребителей.

Показать полностью 2 1
38

Двухканальный цифровой вольтметр с графиком и шкалой на Arduino

🧾 Описание проекта

Этот проект представляет собой двухканальный цифровой вольтметр на базе Arduino, предназначенный для одновременного измерения входного и выходного напряжения, а также отображения максимального зафиксированного значения и реального графика изменения напряжения во времени.

Вольтметр отображает:

🟢 Входное напряжение (V In)

🔵 Выходное напряжение (V Out)

🔺 Максимальное выходное напряжение (V Max)

📉 График изменения выходного напряжения

📊 Вертикальную шкалу напряжения справа

Это отличный проект для начинающих радиолюбителей и разработчиков лабораторных блоков питания: он наглядно показывает работу стабилизаторов, поведение напряжения под нагрузкой и позволяет оценивать динамику процессов.

🔧 Используемые компоненты

⚙️ Схема подключения

🔌 Подключение компонентов

🖥️ OLED-дисплей:

GND → GND

VCC → 5V

SCL → A5

SDA → A4

🎛️ Измерение напряжений:

Arduino измеряет напряжения через аналоговые входы A0 и A1. Но напрямую подавать на них более 5 В опасно. Поэтому используются резистивные делители напряжения.

📥 Делитель для входного напряжения (V In → A0):

Верхний резистор: 40 кОм

Нижний резистор: 10 кОм

Входной сигнал подаётся на верхний резистор

Средняя точка подключается к A0

Позволяет измерять до 25 В

📤 Делитель для выходного напряжения (V Out → A1):

Верхний резистор: 40 кОм

Нижний резистор: 10 кОм

Средняя точка подключается к A1

Такой делитель даёт коэффициент ≈ 1/5, что позволяет измерять до 25 В

⚠️ Подбирайте резисторы с учётом нужного диапазона. Программа изначально рассчитана на вход 0–5 В, поэтому при использовании делителей нужно изменить формулу расчёта напряжения.

⚙️ Как работает программа

Программа построена на основе двух объектов класса VoltMeter, каждый из которых отвечает за измерение напряжения по одному из входов.

А также один экземпляр класса Oscilloscope (осциллограф)

📦 Смотри раздел "Скетч Arduino"

Основные этапы работы:

Измерение напряжений:

Выполняется analogRead() на пинах A0 и A1.

Полученные значения преобразуются в вольты: voltage = raw * (5.0 / 1023.0);

При необходимости можно умножать результат на коэффициент делителя, например voltage *= 2.0;

Отображение данных:

Все показания (V In, V Out, V Max) отображаются в верхней части дисплея крупным текстом.

Используется шрифт TextSize(1) для чёткости и экономии места.

Фиксация максимума:

В каждом измерении программа сравнивает текущее значение с предыдущим максимумом.

При нажатии на кнопку (подключенную к D2) максимум сбрасывается.

График напряжения:

Отдельный класс Oscilloscope сохраняет последние измерения в буфере.

В нижней части дисплея рисуется линия, отображающая изменение напряжения во времени.

График занимает 110 пикселей по горизонтали и не наезжает на шкалу.

Вертикальная шкала справа:

Сегментная шкала (10 делений) показывает текущий уровень выходного напряжения.

Обновляется при каждом цикле измерения.

🧠 Дисплей

Размещение основных блоков отображения на экране OLED дисплея

Отображение на дисплее

Программа строит интерфейс в несколько этапов:

Верхняя часть дисплея — отображает входное и максимальные значения напряжения

Средняя часть — напряжение на выходе блока питания.

Нижняя часть — график напряжения во времени, построенный с использованием массива graphBuffer[], в котором хранятся последние 128 измерений. Этот массив сдвигается каждый раз и отображается как ломаная линия, повторяя форму изменения напряжения.

Правая часть — визуальный уровень напряжения в виде сегментной шкалы, где каждый сегмент активен в зависимости от уровня сигнала.

Такой подход позволяет использовать OLED-дисплей максимально эффективно: информативно и красиво.

📜 Скетч Arduino

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_RESET -1

Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

const int inputPin = A0; // Входное напряжение
const int outputPin = A1; // Выходное напряжение
const int resetButtonPin = 2; // Кнопка сброса максимума

#define GRAPH_HEIGHT 20
#define GRAPH_WIDTH 110 // Оставляем место справа под шкалу
uint8_t graphBuffer[GRAPH_WIDTH];

// Класс вольтметра
class VoltMeter {
private:
int pin;
float voltage;
float maxVoltage;

public:
VoltMeter(int analogInputPin) { // Кнструктор класса
pin = analogInputPin;
voltage = 0.0;
maxVoltage = 0.0;
}

void measure() { // Метод -измерение
int raw = analogRead(pin);
voltage = raw * (5.0 / 1023.0);
if (voltage > maxVoltage) {
maxVoltage = voltage;
}
}

void resetMax() { // Метод - сброс максимального значения
maxVoltage = voltage;
}

float getVoltage() { // Метод - получить измеренное напряжение
return voltage;
}

float getMax() { // Метод - получить максимальное напряжение
return maxVoltage;
}
};

// Класс осциллограф
class Oscilloscope {

public:
Oscilloscope() { // Кнструктор класса
// pin = analogInputPin;
}


void updateGraph(float voltage) {
for (int i = 0; i < GRAPH_WIDTH - 1; i++) {
graphBuffer[i] = graphBuffer[i + 1];
}
uint8_t newY = map(voltage * 100, 0, 500, 0, GRAPH_HEIGHT);
graphBuffer[GRAPH_WIDTH - 1] = newY;
}

void drawGraph() {
int baseY = SCREEN_HEIGHT - 1;
for (int x = 0; x < GRAPH_WIDTH - 1; x++) {
display.drawLine(x, baseY - graphBuffer[x], x + 1, baseY - graphBuffer[x + 1], SSD1306_WHITE);
}
}

void drawScale(float value) {
const int segments = 10;
const int startX = SCREEN_WIDTH - 10; // Правая сторона экрана
const int startY = 58;
const int segWidth = 8;
const int segHeight = 4;
const int gap = 2;

int activeSegments = map(value * 100, 0, 500, 0, segments);

for (int i = 0; i < segments; i++) {
int y = startY - i * (segHeight + gap);
if (i < activeSegments) {
display.fillRect(startX, y, segWidth, segHeight, SSD1306_WHITE);
} else {
display.drawRect(startX, y, segWidth, segHeight, SSD1306_WHITE);
}
}
}
};

VoltMeter vinMeter(inputPin); //Экземпляр класса вольтметр V In
VoltMeter voutMeter(outputPin); // Экземпляр класса вольтметр V Out
Oscilloscope oscill; //Экземпляр класса осциллограф

void setup() {
pinMode(resetButtonPin, INPUT_PULLUP);
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(SSD1306_WHITE);
display.setCursor(10, 28);
display.println("Digital Voltmeter");
display.display();
delay(1500);
}

void loop() {
vinMeter.measure();
voutMeter.measure();

if (digitalRead(resetButtonPin) == LOW) {
vinMeter.resetMax();
voutMeter.resetMax();
delay(300);
}

float vin = vinMeter.getVoltage();
float vout = voutMeter.getVoltage();
float vmax = voutMeter.getMax();

oscill.updateGraph(vout);
display.clearDisplay();

display.setTextSize(1);
display.setCursor(0, 0);
display.print("V In: ");
display.print(vin, 2);
display.println(" V");

display.setCursor(0, 10);
display.print("V Max: ");
display.print(vmax, 2);
display.println(" V");

display.setCursor(0, 20);
display.print("V Out: ");
display.print(vout, 2);
display.println(" V");

oscill.drawGraph();
oscill.drawScale(vout);

display.display();
delay(200);
}

🧠 Советы и доработки

✅ Добавить коэффициент делителя прямо в класс VoltMeter, чтобы учесть масштабирование.

💾 Сохранять максимум в EEPROM, чтобы он не сбрасывался при перезагрузке.

🧲 Добавить третью строку: ток или мощность, если есть токовый шунт.

📈 Изменить масштаб графика для отображения высокого напряжения.

⚡ Применение

Настройка и тестирование лабораторных блоков питания.

Измерение и контроль напряжения в проектах Arduino.

Демонстрация работы стабилизаторов напряжения.

Учебные и демонстрационные стенды.

Показать полностью 2 1
18

С Днём радио, друзья!

Сегодня наш общий праздник — День радио!

Праздник не только инженеров, связистов и радиолюбителей, но и всех, кто когда-либо держал в руках паяльник, настраивал антенну или просто любовался «танцем» осциллограммы 💡⚡️

🎙 7 мая 1895 года Александр Попов представил свой первый радиоприёмник — с этого всё и началось!

С Днём радио, друзья!

А сегодня радио — это не просто сигнал в эфире, это основа нашей профессии, увлечения и вдохновения.

🛠 Спасибо всем, кто с нами на «Азбуке радиосхем»!

Спасибо за ваше любопытство, вопросы, комментарии и любовь к радиотехнике.

Пусть у каждого из вас в жизни будет:

— стабильное питание,

— надёжный контакт,

— минимум помех и

— максимум удовольствия от любимого дела!

📶

С праздником, радиосообщество На канале и в группе "Азбука РадиоСхем"!

Дальней связи, чистого эфира и ровных паяных швов! 🎊

☑️ Telegram Канал ---- https://t.me/azbuka_radioshem

#деньрадио #азбукарадиосхем #праздник

Показать полностью 1
6

Секреты стабилизаторов LM78** серии или как сделать импульсный стабилизатор из линейного

Превращаем LM7805 в ШИМ-контроллер: гибридный импульсный стабилизатор 5 В своими руками

⚙️ Назначение и особенности схемы

На первый взгляд — это обычный стабилизатор напряжения с использованием популярной микросхемы LM7805. Однако при внимательном рассмотрении видно: устройство работает в импульсном режиме, используя транзистор BD242 как ключевой элемент. Это превращает схему из линейным стабилизатора в импульсный. А LM7805 в ШИМ-контроллер, позволяя обеспечить выход 5 В с высоким КПД и хорошей токовой отдачей.

Секреты стабилизаторов LM78** серии или как сделать импульсный стабилизатор из линейного

Загляните на мой Телеграмм КАНАЛ Азбука РадиоСхем

Идея схемы

На базе широко распространённого стабилизатора LM7805 реализуем DC/DC преобразователь с высоким КПД. Вместо обычного линейного режима микросхема работает в импульсном (ШИМ) режиме с использованием внешнего p-n-p транзистора (BD242), дросселя и диода Шоттки.

Такой подход позволяет достичь более высоких токов , при этом схема остаётся простой и доступной для повторения даже начинающим радиолюбителям.

Как построить Лабораторный БП на LM317 с фиксированными уровнями НАПРЯЖЕНИЯ для новичков

Подробный разбор схемы

Входной каскад

  • J2 — разъём для подключения источника питания 24 В DC.

  • C1 (47 мкФ) — электролит для сглаживания начальных пульсаций и выбросов.

  • R1 (47 Ом) — ограничивает ток в базу транзистора, формируя условия для импульсной работы.

Импульсный модуль

  • Q1 — BD242 (NPN транзистор):Работает в ключевом режиме: включается и выключается с частотой, определяемой динамикой обратной связи.
    Основная задача — подавать энергию на дроссель L1 и тем самым заряжать выходной конденсатор C2.

  • IC1 — LM7805:Используется здесь не как линейный стабилизатор в традиционном смысле.
    Он контролирует напряжение на выходе и задаёт уровень для обратной связи, косвенно влияя на длительность включения транзистора.

ШИМ-функциональность и фильтрация

  • L1 (680 мкГн) — дроссель сглаживает импульсы, формируя стабильное постоянное напряжение.

  • C2 (470 мкФ) — конечный фильтр, накопительный элемент, сглаживающий выход.

  • D1 — 1N5817:Диод Шоттки с низким прямым падением и быстрым восстановлением.
    Позволяет току дросселя течь при закрытом транзисторе (freewheeling режим).

  • R2 и R3 — формируют цепь обратной связи. Они передают информацию о состоянии выхода в управляющую часть схемы.

Как это работает

  1. Первоначальный запуск
    После включении питание поступает через R1 и LM7805 на выход. Напряжение также подаётся на базу транзистора Q1, который открывается. Через L1 начинает протекать ток, заряжая выходной конденсатор C2.

  2. Установка напряжения
    Когда напряжение на выходе достигает 5 В, LM7805 закрывается. Ток через резистор R1 прекращается и Базовый ток Q1 исчезает, и транзистор закрывается.

  3. Импульсный режим
    После выключения Q1, ток через дроссель L1 также прекращается.  Но в дросселе накоплено магнитное поле и происходит самоиндукция. Ток начинает опять течь только в противоположную сторону через диод D1, обеспечивая непрерывное питание нагрузки. Когда напряжение на выходе немного проседает, LM7805 снова начинает проводить, и цикл повторяется.

  4. Автоматический переход в линейный режим
    При низкой нагрузке (или её отсутствии) транзистор Q1 остаётся закрытым, и схема ведёт себя как обычный линейный стабилизатор — выходной ток течёт только через LM7805. Это упрощает работу при холостом ходе и повышает надёжность.

Характеристики и КПД

  • При входе 24 В и выходе 5 В, КПД достигает 60–65%, что значительно лучше обычного линейного регулятора.

  • При использовании LM7812/7815 и выходах 12 В / 15 В КПД возрастает до 75%.

  • При этом схема не требует сложных контроллеров, трансформаторов или микросхем с ШИМ.

Гибкость: другие напряжения

Хотите 12 В или 15 В? Просто замените LM7805 на LM7812 или LM7815. Чтобы обеспечить стабильную работу в ШИМ-режиме при повышенном напряжении,

Практические рекомендации

  • Резистор R1 можно подбирать под нужный порог включения ключа.

  • Используйте радиаторы для транзистора Q1 1 А.

  • Для повышения КПД — замените BD242 на MOSFET и подберите схему драйвера.

  • При желании можно добавить индикатор перегрузки

Высоковольтный Регулируемый источник ПИТАНИЯ от 0 до 300 вольт на IRF740

Преимущества схемы

  • Повышенный КПД по сравнению с линейными стабилизаторами.

  • Простая реализация ШИМ на дискретных элементах.

  • Поддержка больших токов за счёт внешнего транзистора.

  • Меньшая тепловая нагрузка на LM7805.

Показать полностью 1 2
Отличная работа, все прочитано!