Страница 1 из 1

Кнопки

Добавлено: Пт мар 07, 2008 16:39:48
Anjey_N
Всем привет! Вот пришёл просить помощи. Задача несложная, только я вконец уже запутался.
Есть МК ATmega16, АЛС, индикация динамическая, кнопки М, +, -
Есть массив переменных set_temp[3]. Пока кнопки не нажаты, происходит каждые 5 сек поочерёдный вывод на индикатор содержимого массива. ( с этим я разобрался работает). При нажати на М включается режим редактирования, 2 мл разряда индикатора мигают. Кнопками + и - изменяется содержимое элемента массива. Последующее нажатие М приводит к переходу к следующему элементу массива.
Если все элементы отредактированы - записать в EEPROM.

Кто что посоветует, или поможет кодом. Свой я надлежаще оформлю и выставлю позже. Пишу на Си в ИАРе.

Добавлено: Пт мар 07, 2008 16:43:30
Anjey_N
схема

Добавлено: Пт мар 07, 2008 17:51:45
DIM4
что показывает первый разряд в то время как два младшие мигают?

Добавлено: Пт мар 07, 2008 20:50:37
Anjey_N
служебный символ. этот код используется в программе терморегулятора. Например символ обозначает нижнюю уставку (вкл. нагревателя).

Добавлено: Вс мар 09, 2008 21:10:53
Krik99
Может я что-то не так понял, но я думаю что тебе надо что-то типа этого. Это пример кода для работы с кнопками и масивом. Когда i=4 тогда нечего не меняем.

Код: Выделить всё

if(i>4){       //Ставим ограничение
i=0;
}
if(!PIND.2){          //если нажата кнопка  М
delay_ms(100);
i++;
}
if(!PIND.0){          //если нажата кнопка +
delay_ms(100);
set_temp[i]++;
}
if(!PIND.1){          //если нажата кнопка -
delay_ms(100);
set_temp[i]--;
}

Re: Кнопки

Добавлено: Вс мар 09, 2008 23:44:53
V-SV
Anjey_N писал(а):Последующее нажатие М приводит к переходу к следующему элементу массива.
Если все элементы отредактированы - записать в EEPROM.
Кто что посоветует, или поможет кодом.


Типа такого?http://www.ultratrafaret.ru/7segm/7segm.htm

Добавлено: Пн мар 10, 2008 09:09:09
Anjey_N
За ответы спасибо. Посмотрите ещё мой код, может найдёте ошибки.