Tiny13: портал и журнал для разработчиков электроники

Цифровой селектор на TINY13 или как я ремонтировал люстру

Однажды вечером ко мне домой наведался друг, причем не один. С люстрой. Вначале я подумал, что это кому-то подарок, но оказалось, что нет. Люстра не работала. Причина оказалось в небольшой «коробочке» с надписью на китайском. Эта вещь работала как селектор: т.к. на люстре были установлены светодиоды и лампы. При первом включении селектор зажигал только лампы, при втором только светодиоды и при третьем лампы и светодиоды, дальше заново. Разобрав селектор я увидел разорвавшийся конденсатор, установленный как и во многих малогабаритных вещах в качестве гасящего за счет своего реактивного сопротивления. Раз такое дело, то можно предположить, что остальная часть схемы мертва.

Поразмыслив над работой селектора, я решил повторить подобное устройство в кратчайшие сроки, набросав простенькую схемку используя микроконтроллер TINY13.
Микроконтроллер  управляет реле К1-К2 при помощи транзисторов VT1-VT2, собранных по схеме с общим эмиттером.

Реле К1-К2 служат для управления лампами L1-L2 (в моем случае это блоки питания ламп и светодиодов в люстре). Диоды VD1-VD2 защищают транзисторы от броска обратного напряжения в момент отключения реле.

Детали:
IC1 – Attiny 13 (установлена на панельку)
R1-R2 1кОм
K1-K2 реле с катушкой на напряжение 4,5В и одной группой нормально открытых контактов на ток до 4А (были демонтированы из попавшей под руку платы от промышленного контроллера).
VD1-VD2 КД521 либо 1N4007 или аналог.
VT1-VT2 КТ315Б. Выбор транзисторов зависит от величины тока протекающего через обмотки реле K1-K2. В нашем случае ток около 30мА.
В качестве источника питания я использовал бесхозное зарядное устройство от сотового телефона.

Пока друг собирал схему на макетной плате, я размышлял над реализацией программы. В данном случае сразу пришло в голову использовать встроенную энергонезависимую память микроконтроллера для управления портами PB3 и PB4, используя нехитрый алгоритм.

К примеру, подаем питание на микроконтроллер и считываем содержимое ячейки памяти с определенным адресом. Полученное число сравниваем с числами 1, 2 и 3. Если содержимое равно 1, то подаем на порт PB3 логическую единицу, увеличиваем содержимое ячейки на единицу (1+1) и сохраняем с прежним адресом. Теперь при последующем включении мы считаем из ячейки число 2, выдадим при этом логическую единицу на порт  PB4 и увеличим значение на единицу (2+1). Теперь если снова подать питание, то из ячейки считаем число 3, при котором включим оба порта PB3 и PB4, и сохраним в ячейку памяти число 1. Дальше цикл продолжится аналогично.

Программа для микроконтроллера, а так же ее отладка проводилась в среде Flowcode v.4.3.6.61. Сама программа достаточно проста и выглядит следующим образом:

На рисунке виден зажженный светодиод, подключенный к PB3 и сохраненное число 2 в  EEPROM ячейке с адресом 7. Если теперь снова запустить симуляцию, то результат будет немного другим:

Теперь горит светодиод, подключенный к PB4, а в ячейке по адресу 7 сохранено число 3.
Полностью убедившись в правильной работе, прошиваем микроконтроллер программатором ТРИТОН, заранее выставив FUSE-биты:

Собранное устройство:

Установка в люстру:

Проверка работы:

Горят светодиоды и лампы.

Ниже вы можете скачать прошивку и проект в Flowcode

Список радиоэлементов
ОбозначениеТипНоминалКоличествоПримечание
Магазин
Мой блокнот
IC1МК AVR 8-бит

ATtiny13

1Поиск в магазине ОтронВ блокнот
VT1, VT2Биполярный транзистор

КТ315Б

2Поиск в магазине ОтронВ блокнот
VD1, VD2Диод

КД521А

21N4007Поиск в магазине ОтронВ блокнот
R1, R2Резистор

1 кОм

2Поиск в магазине ОтронВ блокнот
К1, К2Реле2Поиск в магазине ОтронВ блокнот
J1Разьем для подключения питания 5 В1Поиск в магазине ОтронВ блокнот
L1, L2Лампочка220 В2Поиск в магазине ОтронВ блокнот
Добавить все

Скачать список элементов (PDF)

Теги:
  • Освещение
  • AVR
  • Микроконтроллер
  • Flowcode

tiny13 | zhevak

Posted on 15. 05.2019 | 2 комментария

Это ещё одно исполнение туалетного таймера. Ничего особенного.

Исполнение появилось по просьбе одного товарища, у которого совмещённый туалет (ванна вместе с унитазом). Соответственно у него одно отверстие вытяжной вентиляции. Таким образом, товарищу нужен один таймер, но с двумя кнопками. Кроме того, товарищ попросил сделать реализацию таймера на ATTINY13.

Изменению подвергся узел управления оптроном.

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

Читать далее →

  • Календарь публикаций

    Март 2023
    ПнВтСрЧтПт
    Сб
    Вс
     12345
    6789101112
    13141516171819
    20212223242526
    2728293031 

  • Непыльные архивы

    Непыльные архивы Выберите месяц Февраль 2023  (1) Декабрь 2022  (1) Октябрь 2022  (1) Сентябрь 2022  (4) Август 2022  (1) Май 2022  (3) Апрель 2022  (5) Март 2022  (9) Февраль 2022  (4) Январь 2022  (3) Декабрь 2021  (2) Ноябрь 2021  (2) Октябрь 2021  (1) Сентябрь 2021  (4) Август 2021  (5) Июль 2021  (1) Июнь 2021  (4) Май 2021  (1) Март 2021  (1) Декабрь 2020  (3) Ноябрь 2020  (2) Октябрь 2020  (2) Август 2020  (6) Июль 2020  (3) Июнь 2020  (8) Май 2020  (2) Март 2020  (4) Февраль 2020  (4) Январь 2020  (7) Декабрь 2019  (1) Октябрь 2019  (5) Сентябрь 2019  (4) Август 2019  (2) Июль 2019  (7) Июнь 2019  (3) Май 2019  (4) Апрель 2019  (4) Октябрь 2018  (2) Август 2018  (7) Июль 2018  (3) Июнь 2018  (2) Май 2018  (3) Апрель 2018  (1) Март 2018  (1) Февраль 2018  (3) Январь 2018  (4) Декабрь 2017  (4) Ноябрь 2017  (9) Октябрь 2017  (3) Август 2017  (7) Июль 2017  (6) Июнь 2017  (11) Май 2017  (9) Апрель 2017  (4) Март 2017  (5) Февраль 2017  (1) Январь 2017  (11) Декабрь 2016  (6) Ноябрь 2016  (5) Октябрь 2016  (9) Июнь 2016  (2) Май 2016  (7) Апрель 2016  (4) Март 2016  (2) Февраль 2016  (6) Январь 2016  (6) Декабрь 2015  (9) Ноябрь 2015  (6) Октябрь 2015  (4) Сентябрь 2015  (7) Август 2015  (1) Июль 2015  (3) Июнь 2015  (1) Май 2015  (16) Апрель 2015  (13) Март 2015  (5) Январь 2015  (1) Декабрь 2014  (2) Октябрь 2014  (1) Август 2014  (1) Июль 2014  (5) Июнь 2014  (6) Апрель 2014  (4) Март 2014  (3) Февраль 2014  (4) Январь 2014  (15) Декабрь 2013  (15) Ноябрь 2013  (10) Октябрь 2013  (8) Сентябрь 2013  (10) Август 2013  (14) Июль 2013  (13) Июнь 2013  (15) Май 2013  (13) Апрель 2013  (12) Март 2013  (10) Февраль 2013  (12) Январь 2013  (13) Декабрь 2012  (16) Ноябрь 2012  (9) Октябрь 2012  (14) Сентябрь 2012  (4) Август 2012  (4) Июль 2012  (5) Июнь 2012  (6) Май 2012  (13) Апрель 2012  (5) Март 2012  (6) Февраль 2012  (12) Январь 2012  (13) Декабрь 2011  (10) Ноябрь 2011  (10) Октябрь 2011  (14) Сентябрь 2011  (12) Август 2011  (13) Июль 2011  (5)
  • Рубрики

    ? Arduino AVR Cortex English Java KiCAD Linux M2D MSP430 Python Qt Raspberry Pi STM32 uC За жисть! Копилка опыта Мастер-Ломастер Мастерство Наука Позитивчик Полезняшки Политика Прикольненько Спектрон каротаж психология электроника

  • Метки

    ARM arm-none-eabi assembler AVR Bluetooth C Ch440G Cortex Cortex-M0 Debian gcc Git gnuplot HC-05 Java KiCAD Launchpad Linux M2D M2D2 Makefile Manchester-II Microsoft MSP430 mspdebug Ni-Cd Ni-MH ONVIF OPC UA PyQt Python Qt R2868 Raspberry Pi Raspbian RPi serial serial port stlink STM32 STM32F030 toolchain UART Ubuntu Unix USB Windows Блютус Виндовс Джедай Китай Линукс МЭК Майкрософт Питон Россия Шindows Экономика аккумулятор блок питания воспитание декодер дети зарядник каротаж книга консоль микроконтроллер мозг последовательный порт психология ремонт тулчейн улитка флешка

avr-tino/tiny13.

h на мастере · s-leroux/avr-tino · GitHub..
/*
Copyright (c) 2012-2013 Сильвен Леру
Этот файл является частью avr-tino — http://github.com/s-leroux/avr-tino
avr-tino — это бесплатное программное обеспечение: вы можете распространять его и/или модифицировать
это в соответствии с условиями Стандартной общественной лицензии GNU, опубликованной
Free Software Foundation, либо версия 3 Лицензии, либо
(на ваш выбор) любой более поздней версии.
avr-tino раздается в надежде что будет полезно,
, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемой гарантии
КОММЕРЧЕСКАЯ ПРИГОДНОСТЬ или ПРИГОДНОСТЬ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ. См.
Стандартная общественная лицензия GNU для более подробной информации.
Вы должны были получить копию Стандартной общественной лицензии GNU
вместе с avr-tino. Если нет, см. .
*/
#если !определен AVR_TINO_TINY13_H
# определить AVR_TINO_TINY13_H
#include «avr-tino/pin.
typedef Порт <0x16, 0x17, 0x18> Порт B;
typedef Pin PB0_PIN;
typedef Pin PB1_PIN;
typedef Pin PB2_PIN;
typedef Pin PB3_PIN;
typedef Pin PB4_PIN;
typedef Pin PB5_PIN;
typedef Pin PB6_PIN;
typedef Pin PB7_PIN;
typedef PortB SPIPort;
typedef PB0_PIN MOSI_PIN;
typedef PB1_PIN MISO_PIN;
typedef PB2_PIN SCK_PIN;
//
// поддержка АЦП
//
перечисление /* константы ADMUX */ {
АЦП0 = 0x00,
АЦП1 = 0x01,
АЦП2 = 0x02,
АЦП3 = 0x03,
ADCLeftAdjustResult = 1 << АДЛАР,
ADCInternalVoltageReference = 1 << REFS0,
};
#endif

Список продуктов по брендам ATMEL

24C16 eeprom

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

Микроконтроллер TINY13 20PU

Микроконтроллер AVR EEPROM: 64BSRAM: 64BFlash: 1kBDIP8Продукт также доступен поштучно исключительно в нашем физическом магазине.

Микроконтроллер TINY45 V 20PI

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

Микроконтроллер AVREEPROM: 256BSRAM: 256BFlash: 4kBDIP8Продукт также доступен поштучно исключительно в нашем физическом магазине.

Микроконтроллер TINY15

Микроконтроллер AVR EEPROM: 128BSRAM: 128BFlash: 2kBDIP8Продукт также доступен поштучно исключительно в нашем физическом магазине.

Микроконтроллер AT 89C2051

Нет в наличии

Микроконтроллер AT 89C2051 8051Flash 2kx8bitSRAM 128BИнтерфейс UART

TINY4313 PU микроконтроллер

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

Микроконтроллер MEGA168

Микроконтроллер AVREEPROM: 512BSRAM: 1kBFlash: 16kBDIP28Продукт также доступен поштучно исключительно в нашем физическом магазине.

90S2343 микроконтроллер

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

MEGA328AU Микроконтроллер SMD

Микроконтроллер AVR EEPROM: 1kBSRAM: 2kBFlash: 32kBTQFP32Продукт также доступен поштучно исключительно в нашем физическом магазине.

Микроконтроллер ATMEGA8-16PI

Тип памяти программ Флэш-память
Размер памяти программ (КБ) 8 Скорость процессора (MIPS/DMIPS) 16SRAM (Б) 1024 Data EEPROM/HEF (байт) 512 Периферийные устройства цифровой связи 1-UART, 1-SPI, 1 Периферийные устройства I2CCapture/Compare/PWM 1 входной захват, 1 CCP, 3 PWMTimers 2 x 8-бит, 1 x 16-бит Количество компараторов 1 Диапазон температур (°C) от -40 до 85 Диапазон рабочего напряжения (В) от 2,7 до 5,5 Продукт также доступны за штуку исключительно в нашем физическом магазине.

Микроконтроллер MEGA328P

Микроконтроллер AVREEPROM: 1kBSRAM: 2kBFlash: 32kBDIP28Продукт также доступен поштучно исключительно в нашем физическом магазине.

Микроконтроллер TINY85 V 10PU

Микроконтроллер AVR EEPROM: 512BSRAM: 512BFlash: 8kBDIP8Продукт также доступен поштучно исключительно в нашем физическом магазине.

Микроконтроллер TINY85 V 20PU

Микроконтроллер AVR EEPROM: 512BSRAM: 512BFlash: 8kBDIP8Продукт также доступен поштучно исключительно в нашем физическом магазине.

Микроконтроллер AT MEGA8L SMD

Тип памяти программ Флэш-память
Размер памяти программ (КБ) 8 Скорость процессора (MIPS/DMIPS) 16SRAM (B) 1024 Data EEPROM/HEF (байт) 512 Периферийные устройства цифровой связи
1-UART, 1-SPI, 1-I2C
Периферийные устройства захвата/сравнения/ШИМ
1 захват ввода, 1 CCP, 3 PWM
Таймеры 2 x 8-бит, 1 x 16-бит Количество компараторов 1 Диапазон температур (°C) от -40 до 85 Диапазон рабочего напряжения (В) 2,7 до 5.5Продукт также доступен поштучно исключительно в нашем физическом магазине.

Микроконтроллер ATMEGA8515-16PU

Микроконтроллер AVR EEPROM: 512BSRAM: 512BFlash: 8kBDIP40Продукт также доступен поштучно исключительно в нашем физическом магазине.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *