Включение и выключение приборов одной кнопкой. - Разное - Микроконтроллеры - Каталог статей - Собери свою радиосхему! Сайт радиолюбителей.
Собери свою радиосхему!
Воскресенье, 11.12.2016, 10:58 Приветствую Вас Гость

Чебоксары

Главная | Регистрация | Вход | RSS

Каталог статей

Главная » Статьи » Микроконтроллеры » Разное

Включение и выключение приборов одной кнопкой.

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

Схема:


 
В архиве лежит проект в Proteus, для тех у кого нет программы ниже представлена анимация работы схемы:


 
Микроконтроллер работает от внутреннего генератора 4 мГц.

Скачать файлы проекта.
 

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

Если кому то нужно поменять это время - оставляйте сообщение с просьбой ниже, выложу прошивку под ваши требования в ответ на ваше сообщение, скачать прошивку и проект в Proteus можно ниже.

Скачать второй вариант прошивки (~13кб.)
 

Категория: Разное | Добавил: Адвансед (08.07.2012)
Просмотров: 10415 | Комментарии: 28 | Рейтинг: 4.0/4
Всего комментариев: 281 2 »
28  
Добрый день, Artur21! Помоги пожалуйста. Не могу разобраться  как уменьшить в 1 цикл.

26  
В чём ошибка ? Помогите!!!!
           $regfile = "ATtiny13.DAT"
$crystal = 9600000
$hwstack = 10
$swstack = 10
$framesize = 20

Config Debounce = 10 'время задержки в мс
Config Pinb.3 = Input 'настройка пина d7 на вход
Config Pinb.4 = Input 'настройка пина d7 на вход
Config Pinb.1 = Output 'настройка пина b1 на выход
Config Pinb.2 = Output 'настройка пина b1 на выход
Set Pinb.3 'включить внутренний подтягивающий резистор
Set Pinb.4 'включить внутренний подтягивающий резистор
Reset Pinb.1 'сбросить порт
Reset Pinb.2 'сбросить порт
Vv Alias Pinb.3 'присваиваем порту имя Vv
Vv_1 Alias Pinb.3 'присваиваем порту имя Vv

1: 'метка

Do 'основной цикл программы

Debounce Vv , 0 , Led_on 'если нажали кнопку, то идти на Led_on
Debounce Vv_1 , 0 , Led_on_2 'если нажали кнопку, то идти на Led_on

Loop 'конец основного цикла
End

Led_on:
Do 'подпрограмма включения
Set Pinb.2
Goto 2
Loop

2: 'ждем второго нажатия
Do
Debounce Vv , 0 , Led_off
Loop

Led_off:
Do 'подпрограмма включения
Reset Pinb.2
Goto 1
Loop

Led_on_2:
Do 'подпрограмма включения
Set Pinb.1
Goto 3
Loop

3: 'ждем второго нажатия
Do
Debounce Vv_1 , 0 , Led_off_2
Loop

Led_off_2:
Do 'подпрограмма включения
Reset Pinb.1
Goto 1
Loop

27  
у вас слишком много несвязанных циклов, все это нужно умещать в 1 цикле

24  
Здравствуйте! Если нетрудно . Можно выложить код для двух кнопок и двух нагрузок  .Заранее благодарен. smile

25  
Просто продублируйте (распишите дополнительные) порты на выход (нагрузку) и вход (кнопку) и все). Можете свой пример здесь выложить, если что подправим

23  
Если в схеме №1 вместо светодиода поставить реле- то при удержании кнопки в нажатом положении- реле будет клацать- а подключенная нагрузка включаться-выключаться. Это не есть хорошо!!!. Сделайте схему с мигающим светодиодом на отдельном порту, а имеющийся светодиод пусть либо горит- либо не горит. Вот тогда это можно будет где-то использовать по питанию. Либо просто уберите моргание.

22  
Боюсь, мне это не поможет

20  
Что, прошивки не будет?

1
21  
пока времени нет, могу скинуть исходник на почту чтобы могли доработать

19  
Адвансед6476, пожалуйста, поправьте прошивку: кнопка включает нагрузку на 15-20 минут, но этой же кнопкой можно выключить раньше.

18  
Александр неа, тоже стали интересна тема включения/выключения усилителя от тактовой кнопки, скачал архив с протеусом, если нажать кнопку которая висит на ноге PB4 загорается светодиод, и пока время не истечет он не потухнет (заколебался ждать пока он потухнет, вышло чето около 20 минут)... и при этом ни повторное нажатие, ни нажатие второй кнопки не выключает светодиод. А при нажатии кнопки которая висит на ноге PB3 - нагрузка включается, при повторном нажатии выключается. Впринципе это то что мне нужно! спасибо автору!

17  
А еще такой вопрос: если нажать еще раз на ту же кнопку, что запускает таймер, нагрузка отключится?

15  
Спасибо
Если работает, с меня ссылка на ваш сайт

0
16  
в железе не проверял, в симуляторе работает. Если что, быстроту срабатывания можно устанавливать установками фьюзов, код программы могу скинуть на почту

1-10 11-20
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Логин:
Пароль:
Категории раздела
Источники питания и приборы
Охрана и контроль доступа
Измерительные устройства
Часы, таймеры, счетчики
Световые эффекты
Защита и контроль
Для начинающих
Разное
BASCOM AVR
Информация по МК, FAQ
Поиск
Наш опрос
Какой у вас оператор сотовой связи
Всего ответов: 165

Статистика

Онлайн всего: 4
Гостей: 4
Пользователей: 0
у нас тут все на bascom)

Подавляющее количество часов на Atmega8 выполнены с использо...

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

Рейтинг@Mail.ru