реклама на сайте
подробности

 
 
> Разъясните, как организовать кнопку на прерывании, Mega8, CodeVision
Alex K
сообщение Jul 19 2009, 05:04
Сообщение #1





Группа: Новичок
Сообщений: 4
Регистрация: 19-07-09
Пользователь №: 51 371



камень - ATMega8, компилятор - CodeVision 1.24.8.
девайс считает импульсы со входа INT0 и выводит на светодиодный семисегментный индикатор. для расчета кол-ва импульсов задействован таймер_2, для динамической индикации - таймер_0. дополнительно используется ШИМ (для регулировки цвета светодиодного индикатора) - юзается таймер_1. на вход INT1 подвешена кнопка. собственно при нажатии на нее должна вызываться процедура, в которой задаются различные коэффициенты пересчета, цвет индикатора и т.п.
собственно проблема: при нажатии на эту кнопку возникает прерывание INT1, входим в процедуру настройки, но пропадает индикация (т.к. таймер_0 останавливается). я так понимаю, что после нажатия на кнопку (или после перехода в процедуру настройки) нужно запретить реагировать на возникновение этого прерывания? т.е. чтобы все остальные прерывания (кроме int1) вновь заработали... так? какие директивы прописать? ткните носом, если уже разжевывалось, найти не получилось...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Alex K
сообщение Jul 19 2009, 11:40
Сообщение #2





Группа: Новичок
Сообщений: 4
Регистрация: 19-07-09
Пользователь №: 51 371



спасибо, сейчас пытаюсь придумать систему меню, чтобы при помощи одной кнопки вводить 4 числовых параметра...
Go to the top of the page
 
+Quote Post
XVR
сообщение Jul 21 2009, 08:13
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(Alex K @ Jul 19 2009, 15:40) *
спасибо, сейчас пытаюсь придумать систему меню, чтобы при помощи одной кнопки вводить 4 числовых параметра...
Совет - не делайте этого. С такой 'системой меню' смогут нормально работать только потомственные радисты, как минимум в 3м поколении smile3046.gif
У меня была попытка сделать нечто такое, в наличии была 1 кнопка и 2 светодиода (один из них 2х цветный). На это нужно было повесить около 3х задаваемых пользователем режимов работы и в каждом из них нужно было показывать текущий статус (то же около 2-3 булевских параметров).
Это было сделано с помощью длинных и коротких нажатий кнопки (в разное время) и разными характеристиками мигания светодиодами.
После непродолжытельной практики все было выкинуто и оставленно 2 основных режима с минимум индикации. Пользователи оказались не в состоянии воспользоваться всеми наворотами, даже имея перед глазами подробнейшую инструкцию cranky.gif
Go to the top of the page
 
+Quote Post
stells
сообщение Jul 21 2009, 09:28
Сообщение #4


внештатный сотрудник
******

Группа: Участник
Сообщений: 2 458
Регистрация: 10-05-08
Из: МО, Медвежьи озера
Пользователь №: 37 401



Цитата(XVR @ Jul 21 2009, 12:13) *
У меня была попытка сделать нечто такое, в наличии была 1 кнопка и 2 светодиода (один из них 2х цветный). На это нужно было повесить около 3х задаваемых пользователем режимов работы и в каждом из них нужно было показывать текущий статус (то же около 2-3 булевских параметров).
Это было сделано с помощью длинных и коротких нажатий кнопки (в разное время) и разными характеристиками мигания светодиодами.

у меня тоже был опыт сделать более-менее понятный пользовательский интерфейс на 2-х кнопках и 2-х светодиодах, регулировать нужно было 4 параметра. текстовое объяснение алгоритма работы воспринималось действительно очень трудно, тогда в техописание было добавлено графическое представление интерфейса - почти все вопросы были сняты:
Прикрепленное изображение
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Alex K   Разъясните, как организовать кнопку на прерывании   Jul 19 2009, 05:04
- - stells   мне кажется лучше в цикле динамической индикации с...   Jul 19 2009, 05:22
- - INT1   Установите MCUCR так, чтобы INT1 происходило по пе...   Jul 19 2009, 05:50
- - mempfis_   Самы простой вариант как вам посоветовали перенест...   Jul 19 2009, 07:32
- - Alex K   Цитата(INT1 @ Jul 19 2009, 11:50) Установ...   Jul 19 2009, 09:37
|- - stells   Цитата(Alex K @ Jul 19 2009, 13:37) пожал...   Jul 19 2009, 10:35
|- - mempfis_   Эх вы как настроить прерывание разобрались а как ...   Jul 19 2009, 10:59
|- - stells   Цитата(Alex K @ Jul 19 2009, 15:40) спаси...   Jul 19 2009, 12:16
|- - AHTOXA   Пользователи бывают разные Некоторые даже умудряют...   Jul 21 2009, 09:08
- - Alex K   собственно количество кнопок обусловлено габаритам...   Jul 22 2009, 05:26
- - mempfis_   С одной кнопкой много не сделаеш. Но у вас есть ин...   Jul 22 2009, 06:46
- - KvKv   С одной кнопкой можно использовать, например, двой...   Aug 8 2009, 07:06


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th June 2025 - 11:29
Рейтинг@Mail.ru


Страница сгенерированна за 0.0145 секунд с 7
ELECTRONIX ©2004-2016