Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Новое яркое приключение в волшебной стране пасьянса Эмерлэнде!

Эмерланд пасьянс

Карточные, Головоломки, Пазлы

Играть

Топ прошлой недели

  • cristall75 cristall75 6 постов
  • 1506DyDyKa 1506DyDyKa 2 поста
  • Animalrescueed Animalrescueed 35 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
99
sergsv1
Arduino & Pi

Как и зачем Согласовывать логические уровни Цифровых МИКРОСХЕМ⁠⁠

2 месяца назад

Зачем согласовывать логические уровни Микросхем

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

Казалось бы, что тут сложного — «логический ноль» это ноль, а «логическая единица» это единица. Но на практике всё не так просто.

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

Приглашаю всех на одноимённый Telegram канал и чат: Telegram Канал Азбука РадиоСхем

Что такое логические уровни?

Любая цифровая микросхема понимает только два состояния:

  • 0 (логический ноль) – низкий уровень напряжения.

  • 1 (логическая единица) – высокий уровень напряжения.

Но вот значения этих уровней зависят от технологии, в которой выполнен чип, и от его питания.

Например:

  • CMOS на 3.3 В:0 = 0…0.8 В
    1 = от 2.0 В и выше

  • TTL на 5 В:0 = 0…0.8 В
    1 = от 2.0 В и выше

Отсюда сразу видно: если подключить выход 3.3 В логики к входу 5 В микросхемы — скорее всего всё будет работать(но опять же , не всегда).

А вот наоборот — подача 5 В на вход, рассчитанный на 3.3 В, может его просто сжечь.

Параметры уровней напряжения для цифровых схем

Для цифровых входов:

•Uвх.0.мин. (VIL.min) – минимальное напряжение, воспринимаемое как «0»;

•Uвх.0.макс.(VIL.max) – максимальное напряжение, воспринимаемое как «0»;

•Uвх.1.мин.(VIH.min) – минимальное напряжение, воспринимаемое как «1»;

•Uвх.1.макс.(VIH.max) – максимальное напряжение, воспринимаемое как «1»;

•Uвх.п (VIT) – напряжение переключения (threshold voltage), значения выше которого воспринимаются как «1», а ниже – как «0».

Для цифровых выходов:

•Uвых.0 (VOL.typ) – типовое напряжение, которое устанавливается при выводе «0»;

•Uвых.0.мин.(VOL.min) – минимальное напряжение, которое может быть установлено при выводе «0»;

•Uвых.0.макс.(VOL.max) – максимальное напряжение, которое может быть установлено при выводе «0»;

•Uвых.1(VOH.typ) – типовое напряжение, которое устанавливается при выводе «1»;

•Uвых.1.мин.(VOH.min) – минимальное напряжение, которое может быть установлено при выводе «1»;

•Uвых.1.макс. (VOH.max) – максимальное напряжение, которое может быть установлено при выводе «1».

Зачем нужно согласование уровней?

  1. Защита микросхем – 3.3-вольтовые входы не выдержат прямой подачи 5 В.

  2. Корректная работа логики – микросхема может не «увидеть» единицу, если она недостаточно высока.

  3. Совместимость модулей – большинство современных датчиков, дисплеев и модулей Arduino работают на 3.3 В, а сами Arduino (UNO, Nano) – на 5 В.

Без согласования есть риск получить «мертвый» дисплей или датчик, а иногда и целую плату в утиль.

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

Основные способы согласования уровней

1. Делитель напряжения на резисторах

Самый простой вариант для сигналов в одну сторону (5 В → 3.3 В).
Формула простая: Vout=Vin⋅R2R1+R2V_{\text{out}} = V_{\text{in}} \cdot \frac{R2}{R1+R2}Vout=Vin⋅R1+R2R2

Например, при R1 = 2 кОм и R2 = 3.3 кОм из 5 В получаем примерно 3.3 В.
Минус

  • — не всегда это работает

  • – плохо подходит для высоких частот (SPI, I²C).

2. Специальные микросхемы-переводчики уровней

Существуют готовые чипы (например, TXB0108, 74LVC245), которые умеют переводить уровни в обе стороны и на высоких скоростях.
Это надёжный вариант для «серьёзных» проектов.

3. Транзисторные согласователи

Можно собрать схему на MOSFET или даже на биполярных транзисторах (например, на советских КТ315 или современных BC547).
Такой преобразователь работает быстро и позволяет согласовывать линии в обе стороны, включая шину I²C.

Ниже представлен пример схемы на биполярном транзисторе обратной проводимости. Транзисторы можно использовать различные.

Схема — это дублируется в зависимости от того сколько вам ножек одной микросхемы нужно согласовать с другой

Для этих целей также кроме биполярных микросхем очень хорошо а можно сказать даже идеально подходят и  mosfet.

Вот очередной пример такой схемы

Пример из практики

В одном из моих проектов я подключал дисплей на контроллере ST7789, работающий от 3.3 В, к Arduino Nano на 5 В. Сначала я сделал соединение напрямую – результат: один из дисплеев вышел из строя.

После этого я собрал плату согласования уровней на старых советских транзисторах КТ315. Несмотря на возраст этих деталей, схема заработала отлично, и теперь дисплей работает стабильно.

Это хороший пример того, что согласование уровней – не формальность, а необходимость.

Выводы

  • Никогда не соединяйте напрямую микросхемы, работающие на разных напряжениях.

  • Для односторонних медленных сигналов можно использовать резистивный делитель.

  • Для двусторонних и быстрых шин лучше ставить транзисторные согласователи или специализированные микросхемы.

  • Даже простая самодельная схема на старых транзисторах может спасти ваш модуль от поломки.

Показать полностью 5 2
[моё] Электроника Arduino Дисплей Lcd дисплей Esp8266 Esp32 YouTube Самоделки Радиолюбители Радиоэлектроника Радиотехника Микроконтроллеры Видео Яндекс Дзен (ссылка) Длиннопост
4
5
i.skuff
i.skuff
Инженериум DIY

Esp8266 + wifi + mqtt аудио колонка. Варианты?⁠⁠

8 месяцев назад

Хочу седлать аудиоколонки для озвучивания комнат дома.

Управление по mqtt. Имеется железо esp8266 и I2S DAC (max98357)

Нашел проект MrDiy https://gitlab.com/MrDIYca/mrdiy-audio-notifier выглядит подходяще, но есть недостатки. Готовая прошивка выводит только аналоговый звук (с хрипами) и подписывается на один топик (несколько устройств будут играть один и тот же звук). Но зато эта прошивка умеет проигрывать http поток с интернет радиостанций (то что нужно).

Компиляция прошивки из исходника с включенным I2S DAC играет без хрипов, топик mqtt настраивается индивидуально, но не воспроизводит никаких потоков интернет радиостанций.

Может быть я плохо искал, есть еще варианты? прошивка tasmota приветствуется.

[моё] Esp8266 Esp Своими руками Умный дом Самый умный Электроника Программирование Самоделки Пайка Текст
9
6
ChiefCher

Принтер стикеров Брайля⁠⁠

1 год назад

Всем привет!

Этим постом я хочу сообщить о начале серий постов, посвящённой моему школьному проекту, а именно принтер стикеров Брайля.

Принтер Брайля будет получать текст с телефона и затем напечатает наш текст на стикере - полоске бумаги только уже шрифтом Брайля. Пользователь может сам маркировать свои вещи. Где это можно использовать:

Метки для продуктов
Лекарств
Метки для кнопок устройства

Цель этих постов рассказать о шрифте Брайля ,показать этапы разработки и получить критику для совершенствования устройства.

Весь проект будет выполнен на 3д принтере и микроконтроллер esp8266. Конечным результатом всех постов будет готовое устройство. В постах я не буду углубляться в принцип работы кода.

[моё] Самоделки Esp8266 3D печать Текст
6
13
HappyF

Ответ на пост «Мой открытый проект метеостанции с монохромным дисплеем»⁠⁠

1 год назад

Я вот тоже решил сделать что-нибудь эдакое и начал делать метеостанцию. Ну, почти... Тоже хочу поделиться.
Совсем недавно забавы ради решил сделать себе давно желанный и откровенно бесполезный для меня экранчик мониторинга ресурсов для пк. Для понимания фото готового варианта, который я не буду повторять, ибо он мне не нравится, слишком много свистоплясок, мало пользы и смысла:

В итоге пришёл к тому, что хочу ещё добавить туда, по-мелочи, метеостанцию и умный дом. А без опыта-то тяжко, единственное за 9 класс в школе делал проект пресловутую метеостанцию, без корпуса, без нормальной прошивки.

Ужас, да? А ведь мы с этой штукой первое место заняли... Ещё и на uno, вообще ужас.

А вот теперь совсем другое дело:

Функции мониторинга:

1) Загруженность, температура,возможно самые жрущие процессы, скорость куллеров и т.д. и т.п.
2) Включение и выключение корпусных вентиляторов при нагрузке. Они дешёвые, шумят, я их включаю вручную когда играю, вывел специально на скрытый переключатель.
3) По-приколу ещё сделаю так, что комп включается с кнопки в меню. Просто потому, что могу. Изначально хотел сделать на ключе за 100 рублей с али, но случайно сломал его.

Функции метеостанции:

1) В доме
Температура, влажность, давление, качество воздуха/газы (на серии mq и на bme280)
2) На улице
Температура, влажность воздуха, давление, качество воздуха/газы, плювиограф (если лень не будет), датчик дождя, датчик уф, флюгер. Полная комплектация, я же тут не в игрушки играю. Хотя нет, прямо как конструктор, если честно.
Возможно сделаю на даче, с помощью радио, ну или на балконе. Может оба сразу, но это уже слишком.
3) Предсказание погоды
Видел у Гайвера предсказатель погоды, который основываясь на давлении пытается предсказать погоду, вернее возможность осадков. Думаю, не помешает.
4) Онлайн погода
Естественно, он будет и из интернета данные получать, иначе зачем esp Можно будет и сравнить ради интереса.

Функции умного дома:

1) Выключение света (возможно и розеток)
Есть у меня давнишняя идейка, сделать совсем немного опасную схемку из мелкой esp-01, миниатюрного реле с чип и дип, да блоком питания за 60 рублей. И запихнуть всё в подрозетник. Вот прям так, чтобы ничего снаружи не было. Всё время вижу как пихают нано с радио и громоздким модулем реле в огромный разветвлитель или удлинитель. У меня другой подход. Прямо сейчас тестирую блок питания на качество, стоит и работает на полной мощности уже неделю, вроде бахнуть не должен. Хотя вроде видел на хабре человека, который нечто похожее реализовывал.
2) Хочу сделать что-то ещё более интересное, так что доделаю и сигнализацию. Простые датчики движения/приближения, которые считают, сколько человек пройдёт или выйдет. Пиликать не будет, это глупо, просто тихо отправлять уведомление на телефон. Определять нарушителя будет смешным способом: если к интернету телефонов подключено меньше, чем количество людей в доме, то значит пора высылать уведомление. Ну или просто оставлю один датчик и надо будет вручную его включать, это на случай если лень.

Итак, пока что спаял часть, что должна быть внутри дома: nano (esp нет сейчас, потом будет работать с нано через uart), tft 1.8 (хочу именно мелкий экранчик, а корпус прицепить снизу, под монитором), энкодер для управления, bme280, ds3231. На коленке собрал кривой корпус из дво и соплей, потом сделаю нормально.

Набросал и код, я не ас в программировании, пока что просто вывел показатели на экран и сделал график температуры, влажности и давления. Кстати говоря, экранчик на самом деле цветной, так что я обязательно выведу туда гифку с котиком и по-возможности doom. Вот что пока получается:

Хранит значения в постоянной памяти, так что не слетит, да и заодно ещё будет собираться на пк в отдельном файле. Ардуинка только 24 часа помнит. Значения с пк будет брать через серийник по usb, от него же и питаться. Короче, дел много, а я пока что занят клавиатурой dactyl manuform, да и посылки надо ждать, так что не могу доделать пока свой непонятный проект, как-то так. Как я хорошо накатал целый пост про проект, который и на 20 процентов не готов, а? Ладно, на самом деле уже все технические особенности определил, даже часть кода написал, остаётся только всё это собрать да отладить.

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

Показать полностью 6
Электроника Гаджеты Esp8266 Самоделки Умный дом Длиннопост Arduino
5
11272
nradiowave
nradiowave

Мой открытый проект метеостанции с монохромным дисплеем⁠⁠

1 год назад

Дописал документацию к своей железке. Хотел бы показать чего получилось

Метеостанция Волна 2BW42

Метеостанция Волна 2BW42

Если вкратце про сам проект - метеостанция рассчитана на интеграцию в систему умного дома - данные о внешнем датчике устройство получает через Home Assistant или Domoticz, и так же может отправлять свои данные по MQTT (в HA девайс подхватывается через Auto Discovery, в Domoticz через виртуальные датчики)

Прошивка совместима с ESP8266 и ESP32 (Arduino Framework, C++, PlatformIO); внутренний датчик температуры \ влажности BME280. Прошивка работает с дисплеями на электронных чернилах 4.2' и 1.54' дюйма (таблицы совместимости с теми производителями с которыми тестил можно найти на сайте с документацией). Сами E-Ink дисплеи своеобразны в работе и значительно медленней отрисовывают всю область экрана в сравнении с обычными жк, но не требуют постоянного питания для отображения картинки и для автономного девайса подходят хорошо, позволяя очень существенно экономить расход батареи. В живую картинка на таком экране читается приятно, как с обычного листа бумаги.

В режиме работы от аккума устройство просыпается раз минуту для обновления области часов на экране и раз в 10 минут для полного обновления (датчики температуры и другая статистика), WiFi-соединение (синхронизация данных по внешнему датчику, отправка своих данных по MQTT) раз в час в целях экономии заряда; аккума 18650 2000 мА*ч хватает на ~несколько месяцев. Все таймауты при желании можно перенастроить.

Оформление интерфейса изначально делал под дисплеи 4.2' (400х300), с котиком-индикатором который меняется от погодных условий \ времени.

интерфейс по умолчанию

интерфейс по умолчанию

Некоторые зарисовки иконок которые делал для проекта, часть задействованы для индикатора :

В актуальных обновлениях прошивки добавлен конструктор интерфейсов без строгой привязки к разрешению экрана и необходимости лезть непосредственно в код \ перепрошивки чтобы можно было залить свою картинку в качестве фона и расположить "виджеты" просто через веб-интерфейс устройства.

Пример настройки кастомного оформления (фоновая картинка может быть и на весь экран) :

редактор интерфейсов

редактор интерфейсов

интерфейс для мелких дисплеев 1.54'

интерфейс для мелких дисплеев 1.54'

Еще некоторые фотографии с процесса сборки под разные варианты корпуса

Основание корпуса-подставки

Основание корпуса-подставки

вариант полностью закрытого корпуса (чуть промахнулся с размерами, в исходниках модельки 3д принта уже поправил)

вариант полностью закрытого корпуса (чуть промахнулся с размерами, в исходниках модельки 3д принта уже поправил)

Опционально в прошивке реализована возможность вывода картинок c 4 цветном режиме (2-bit). Если сам e-ink экран поддерживает такой режим работы, то можно загрузить картинку фона в таком режиме.

Пример отрисовки фона в градациях серого :

Тестовый "толстый" корпус с доступом к внутренностям. Использовался экран с двойным слоем чернил (красный \ черный), к сожалению они значительно медленней в плане отрисовки

Тестовый "толстый" корпус с доступом к внутренностям. Использовался экран с двойным слоем чернил (красный \ черный), к сожалению они значительно медленней в плане отрисовки

Такой проект получился. Более детально по каждому аспекту, касательно сборки, скорости отрисовки, совместимости с конкретными модулями экранов, процессу прошивки и первичной настройки, примерам моделек корпусов и т.п. постарался подробно описать на сайте проекта.

Проект полностью открытый, можно использовать как для коммерческих так и для личных целей. Если вдруг есть идеи с какими открытыми сервисами погоды можно было бы еще добавить интеграцию (например если кому то захочется использовать вне системы "умного дома"), можно так же написать или мб еще есть какие идеи; поизучаю апишки, мб что-нибудь выберу для дальнейших доработок.


Сайт с документацией (Метеостанция Волна 2BW42)
GitHub страница с прошивкой

Показать полностью 11
[моё] Электроника Гаджеты Esp32 Esp8266 C++ Самоделки Home Assistant Domoticz Умный дом Длиннопост
587
2
beetlea2017

Управление чайником по WIFI на ESP8266⁠⁠

1 год назад
Своими руками Arduino Самоделки Esp8266 Wi-Fi Видео YouTube
12
14
miamornik
miamornik
Серия ESP для Новичков

ESP для Новичков. Дополнение⁠⁠

1 год назад

Как оказалось, в прошлой части я не добавил схему подключения к AMS1117, исправляюсь)

Распиновка USB Type A, на всякий случай. Если не уверены, лучше протестить мультиметром, чтобы определить + -.

Показать полностью 2
[моё] Arduino Электроника Самоделки Конструктор Esp8266
13
5
mega.animeshnik
mega.animeshnik

Народный измеритель пульсации света⁠⁠

1 год назад

Да, название копия из оригинального поста Народный измеритель пульсации света Сей же пост не плагиат, а вариант другого исполнения, ещё более бичёвского и простого в реализации, но код, практически, оригинальный.

Для понимания принципа работы измерителя, читайте оригинальную статью, уважаемого ammo1.

Немного вступления

В оригинале, используется дисплей TFT 1.77, который стоит от 165рублей на текущий день, а я использовал oled 0.96 4 pin, что стоит аж 110 рублей. Вы сейчас посмеётесь, дескать 55 рублей, того не стоят, но это цены на али, в наших магазинах, может быть совсем другая разница.

Кроме того, я поменял NodeMCU из оригинала на WeMos d1 mini, т.к. wemos дешевле и компактнее, но сам мк esp8266 тот же. К сожалению, в отличие от NodeMCU, питать WeMos d1 mini 9 вольтовой батарейкой, не выйдет, потому что, максимальное напряжение 6В, об этом ниже.

Питание

На оригинальном WeMos d1 mini должен быть стабилизатор ME6211C33, но, похоже, на али, дешёвыми, продаются именно клоны, на которых установлен стабилизатор с маркировкой 4b2k, которой обозначается XC6204B332. Оригинальный wemos d1 mini можно питать напряжением до 6В, клоны так же придерживаются этого. У меня есть аккумуляторы 18650, извлечённые из мёртвой батарейки ноутбука, один из них и питает самоделку. Можно использовать пальчиковые батарейки, а ещё проще от внешней батареи(power bank), которая, я думаю, есть у многих. Прибор для измерения пульсация света, нужен далеко не всегда, и я не вижу особых проблем, попользоваться им с помощью внешнего питания, если уж совсем нет других вариантов.

Ближе к делу

А тут всё просто, подключаем oled дисплей, по i2c к мк это D2(sda) D1(scl), по умолчанию или другие пины, если хотите. Temt6000 подключается к единственному, аналоговому входу(A0 к S). Не вижу смысла рисовать, что и как подключается, потому что соединить 3.3 с VDD и V, а G с GND и G, не составляет никаких проблем.

Библиотеку я использовал GyverOLED, она есть в репозитории arduino ide. Сам "измеритель пульсаций" требует библиотеку GyverFilters, которая так же, есть в репозитории.

Я убрал всю графику и на экран выводятся только kp1, kp2, Emax, Emin, Eenv, что лично мне, хватает. В оригинальном скетче были переменные, которые никак не использовались, я их все удалил.

Сам скетч https://disk.yandex.ru/d/GaGxQ53fsn1T2w

Тестирование

Есть у меня, замечательная, китайская, rgb лампочка, которая управляется с пульта. Лампа полная хрень, пылится в коробке, но для теста хорошо подходит.

Для себя я собрал прибор, сочетающий в себе: датчик температуры(htu21d); датчик света(bh1750); измеритель пульсаций(temt6000).

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

белый, максимальная(3/3) яркость

белый, максимальная(3/3) яркость

белый, минимальная(1/3) яркость

белый, минимальная(1/3) яркость

синий, максимальная яркость

синий, максимальная яркость

зелёный, максимальная яркость

зелёный, максимальная яркость

красный, максимальная яркость

красный, максимальная яркость

оранжевый? максимальная яркость

оранжевый? максимальная яркость

Показать полностью 6
[моё] Самоделки Arduino Esp8266 Длиннопост
0
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии