Найдено 42 результата

akulov
Сб мар 16, 2013 22:36:20
Форум: Периферия
Тема: Нужна помощь по протоколу RС5 в CVAVR
Ответы: 17
Просмотры: 3863

Re: Нужна помощь по протоколу RС5 в CVAVR

С протоколом разобрался, испробовал различные варианты обработки команд. Всем большое спасибо за помощь!
akulov
Чт мар 14, 2013 14:25:27
Форум: Периферия
Тема: Нужна помощь по протоколу RС5 в CVAVR
Ответы: 17
Просмотры: 3863

Re: Нужна помощь по протоколу RС5 в CVAVR

Приведу свой пример декодера RC-5: Интересный код. Но, чтобы мне его применить, есть несколько вопросов:
- какой тип МК применен?
- какая тактовая частота ЦПУ?
- где Вы вызываете функции char RC5_GetSys(void) и char RC5_GetCom(void) , в цикле while(1) ?
Просто, если я выполняю команду в этом цикле ...
akulov
Пн мар 11, 2013 23:20:22
Форум: Периферия
Тема: Нужна помощь по протоколу RС5 в CVAVR
Ответы: 17
Просмотры: 3863

Re: Нужна помощь по протоколу RС5 в CVAVR

Ребята, а пример кода можно? Хотя бы за что-то зацепиться. Только познаю азы программирования.
akulov
Пн мар 11, 2013 17:57:26
Форум: Периферия
Тема: Нужна помощь по протоколу RС5 в CVAVR
Ответы: 17
Просмотры: 3863

Re: Нужна помощь по протоколу RС5 в CVAVR

pyzhman писал(а): Т.е. по состоянию этого бита можно определить отпускалась кнопка или нет.
Это я знаю, а как практически его применить?
А длительность нажатия - никоим образом.
Это я не так выразился. Как програмно отследить этот бит?
akulov
Пн мар 11, 2013 12:41:48
Форум: Периферия
Тема: Нужна помощь по протоколу RС5 в CVAVR
Ответы: 17
Просмотры: 3863

Нужна помощь по протоколу RС5 в CVAVR

Пытаюсь освоить протокол RC5. Пересмотрел кучу примеров на форумах, все они до записи кода в буфер. А в исходниках к программам так и не смог выделить чисто протокол управления, для меня это слишком сложно. Так и не понял, как отличить одиночное нажатие кнопки пульта от длительного удержания?
Знаю ...
akulov
Ср мар 06, 2013 20:53:35
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

Enigm писал(а):скините свой проэктик в протеусе с хексом.
В файле:
akulov
Ср мар 06, 2013 03:38:34
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

Наконец то разобрался со всеми примерами. Работают оба предложенных варианта. Узнал для себя много нового.
За помощь всем большое СПАСИБО!
Тему можно считать закрытой.
akulov
Вт мар 05, 2013 23:56:50
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

Вобщем попробую обьяснить. Это тот же бесконечный цикл, с которым у меня не получается.
Код.. Что-то уменя не получается. Может подскажете, что я делаю не так? Код: void key3Execute(void) // обрабатывает нажатие кнопки 3
{
unsigned int key_long_time = KEY_LONG_TIME; // текущее количество полных ...
akulov
Пн мар 04, 2013 13:28:22
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

Enigm писал(а):Работает как нужно ?
Да! Работает нормально.

А вот с while(find) почему то не хочет!
akulov
Сб мар 02, 2013 22:11:33
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

Барсик писал(а):Ну и проверяйте значение этой переменной в цикле. В чём проблема то? Кто (или что) изменяет значение этой переменной?
Значение переменной проверяю в цикле:

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

if(PINA.5==0) find = 1;
else find = 0;
а вот как ее применить для получения нужного результата?
akulov
Пт мар 01, 2013 14:30:03
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

.....как отличить короткое нажатие от длинного. Интересный пример, буду пробовать! Что будет не ясно-напишу.
С кодом разобрался, приспособил под себя. Отрабатывает и одиночное нажатие, и повтор, но только если удерживаешь кнопку. Я, так думаю, что и с АЦП получится. Но есть один нюанс. Как сделать ...
akulov
Ср фев 27, 2013 19:39:22
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

Барсик писал(а):.....как отличить короткое нажатие от длинного.
Интересный пример, буду пробовать! Что будет не ясно-напишу.
akulov
Вт фев 26, 2013 22:30:36
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

Вот здесь: Спасибо. Попробую разобраться. Как я этот код не крутил, мне он не подходит.
Поскольку портов свободных у меня хватает, переписал код под кнопки, пока так:
unsigned char find = 0;
unsigned char KEYPRESS (void);
unsigned char Key;
unsigned char KEYPRESS ()
{
if (find){
if(!PINC.5 ...
akulov
Пн фев 25, 2013 16:38:56
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

Барсик писал(а):Вот здесь:
Спасибо. Попробую разобраться.
akulov
Пн фев 25, 2013 13:02:21
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

Вот и возник резонный вопрос, как лучше делать. Задавать константы, или непосредственно вписывать значения? Сколько пересмотрел исходников, везде по разному. Есть ли на этот счет однозначный ответ?
akulov
Пн фев 25, 2013 01:04:38
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

на кнопки+ и - реакция должна быть Нет.
Версия Протеус у меня 7.10, хотя в интернете есть и 7.11. Пока ее не ставлю, подожду 8.0, демо уже на сайтах есть. Листинг:
#define ADC_VREF_TYPE 0x60
char find = 0;
#define K5_min 115
#define K5_max 130
#define K4_min 87
#define K4_max 100
#define K3_min ...
akulov
Вс фев 24, 2013 03:14:09
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

Enigm писал(а):Я правильно понял логику работы?
Proteus используете ?
Правильно, буду очень благодарен! А в Proteus я в основном и моделирую, очень помогает на этапе отладки.
akulov
Вс фев 24, 2013 00:29:48
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

Задам пару вопросов... Во первых переписал функцию опроса ADC, задал перед этим диапазоны срабатывания кнопок:
unsigned char KEYPRESS ()
{
unsigned char Key,KeyTmp,i; // нажатая клавиша
KeyTmp=read_adc(6);
for (i=0;i<10;i++) // програмный антидребезг контактов
delay_ms(15);
if (KeyTmp < K5_max ...
akulov
Сб фев 23, 2013 19:52:08
Форум: Периферия
Тема: Помогите с обработкой кнопок через ADC в CVAVR
Ответы: 36
Просмотры: 6036

Re: Помогите с обработкой кнопок через ADC в CVAVR

zero648 писал(а):Схему подключения кнопок посмотреть.
Key.jpg
(28.27 КБ) 378 скачиваний
Enigm писал(а):сделайте условие где например find=1 or k1=чему там у вас.) Что за переменая..
Переменная-это частота. При нажатии на кнопку изменяется на один шаг. Пробовал
find=1 or k1=
и find=1 и k1=, не получается.

Перейти к расширенному поиску