Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
12.12.2010, 12:10
|
|
Прохожий
Регистрация: 21.11.2010
Сообщений: 5
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Задание. Реализовать на attiny2313
задание. реализовать на attiny2313
управление двумя выходами C и D при помощи двух кнопок A и B.
1. при нажатии кнопки(A) на выводе(C) сигнал логический(1), при повторном нажатии кнопки(A) сигнал вывода(C) возвращается в обратное состояние логический(0), но если нажата кнопка(B) логический сигнал вывода(C) не должен меняться независимо от его состояния.
2. при условии вывод(C) логический(1) и нажатой кнопки(B) нажимаем на кнопку(A) удерживая её - на выводе(D) логический(1), при отпускании кнопки(A) вывод(D) логический(0), а при отпускании кнопки(B) - никаких изменений.
помогите реализовать в Си
сильно не пинайте, только пытаюсь научится...
Последний раз редактировалось doband; 12.12.2010 в 18:34.
|
|
|
|
12.12.2010, 14:17
|
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
|
Re: Задание. Реализовать на attiny2313
Здесь не принято писать кому-то программный код бесплатно.
|
|
|
|
12.12.2010, 14:38
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.11.2008
Адрес: г.Смоленск
Сообщений: 2,018
Сказал спасибо: 348
Сказали Спасибо 1,024 раз(а) в 552 сообщении(ях)
|
Re: Задание. Реализовать на attiny2313
Может начать с исправления подписей в схеме в соответствии с вашими словами?? Где кнопки, где выходы... Компилятор какой?? Вам сам принцип или проект?
сделаю вам простую подсказку на 1 вопрос:
PHP код:
|
if(PIND.0==0){PORTB.0 = ~PORTB.0;};
|
Выше код для CVAVR.
Ну думаю вы должны знать как соответствующие порты должны быть сконфигурированы, какие уровни и где должны стоять.
|
|
|
|
12.12.2010, 14:54
|
|
Вид на жительство
Регистрация: 21.08.2007
Сообщений: 318
Сказал спасибо: 12
Сказали Спасибо 67 раз(а) в 61 сообщении(ях)
|
Re: Задание. Реализовать на attiny2313
Сообщение от Saadov
|
сделаю вам простую подсказку на 1 вопрос:
|
Подсказка не верна. Верный вариант не так давно от меня был. Кстати тоже на 2313. Так что топик стартеру рекомендую поискать
Последний раз редактировалось Cybermaker; 12.12.2010 в 14:57.
|
|
|
|
12.12.2010, 14:57
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.11.2008
Адрес: г.Смоленск
Сообщений: 2,018
Сказал спасибо: 348
Сказали Спасибо 1,024 раз(а) в 552 сообщении(ях)
|
Re: Задание. Реализовать на attiny2313
Сообщение от Cybermaker
|
Подсказка не верна. Верный вариант не так давно от меня был. Кстати тоже на 2313
|
Опять сотресание воздуха??? Когда опровергают чье-то мнение, то приводят свои доводы и по вашему правильный вариант.
|
|
|
|
12.12.2010, 15:01
|
|
Вид на жительство
Регистрация: 21.08.2007
Сообщений: 318
Сказал спасибо: 12
Сказали Спасибо 67 раз(а) в 61 сообщении(ях)
|
Re: Задание. Реализовать на attiny2313
Сообщение от Saadov
|
Опять сотресание воздуха??? Когда опровергают чье-то мнение, то приводят свои доводы и по вашему правильный вариант.
|
Свой вариант я приводить повторно не буду, но скажу где изъян в вашем: условие будет выполняться в основном цикле (в прерывании его вообще смысла писать нет) - отсюда появится цикличность его выполнения. Угадайте сколько раз оно выполнится до того, как кнопку отпустят ? Уверены что хотя бы нечётное количество раз ?
|
|
|
Сказали "Спасибо" Cybermaker
|
|
|
12.12.2010, 15:06
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.11.2008
Адрес: г.Смоленск
Сообщений: 2,018
Сказал спасибо: 348
Сказали Спасибо 1,024 раз(а) в 552 сообщении(ях)
|
Re: Задание. Реализовать на attiny2313
Для начинающего это был не ответ, а подсказка!!! Отличайте значения, вставит он задержку на 500 мсек и все будет нормально,для начинающего, чтобы разобраться хватит, а если по хорошему, то пусть автор темы читает про антидребезг. Вот там как раз и можно проверить состояние кнопки в течении определенного времени.
|
|
|
|
12.12.2010, 15:33
|
|
Вид на жительство
Регистрация: 21.08.2007
Сообщений: 318
Сказал спасибо: 12
Сказали Спасибо 67 раз(а) в 61 сообщении(ях)
|
Re: Задание. Реализовать на attiny2313
Сообщение от Saadov
|
Для начинающего это был не ответ, а подсказка!!! Отличайте значения, вставит он задержку на 500 мсек и все будет нормально,для начинающего, чтобы разобраться хватит, а если по хорошему, то пусть автор темы читает про антидребезг. Вот там как раз и можно проверить состояние кнопки в течении определенного времени.
|
Не, ну ни фига себе ! Вы действительно считаете что сопоставимо сравнивать по времени задержку "антидребезга" и "повторного нажатия" ? Мож всё таки отделить мух от котлет и не создавать ложных эквивалентов для начинающих ?
А если кнопкой управляет, хз, датчик какой нибудь - он вообще часами в одном положении стоять может. Делать суточную задержку ?
Последний раз редактировалось Cybermaker; 12.12.2010 в 15:37.
|
|
|
|
12.12.2010, 18:05
|
|
Прописка
Регистрация: 09.11.2009
Сообщений: 193
Сказал спасибо: 47
Сказали Спасибо 58 раз(а) в 26 сообщении(ях)
|
Re: Задание. Реализовать на attiny2313
Сообщение от doband
|
задание. реализовать на attiny2313
управление двумя выходами A и B при помощи двух кнопок C и D.
1. при нажатии кнопки(C) на выводе(A) сигнал логический(1), при повторном нажатии кнопки(C) сигнал вывода(A) возвращается в обратное состояние логический(0), но если нажата кнопка(D) логический сигнал вывода(А) не должен меняться независимо от его состояния.
2. при условии вывод(А) логический(1) и нажатой кнопки(D) нажимаем на кнопку(C) удерживая её - на выводе(В) логический(1), при отпускании кнопки(C) вывод(В) логический(0), а при отпускании кнопки(D) - никаких изменений.
помогите реализовать в Си
сильно не пинайте, только пытаюсь научится...
|
кнопок "С" и "D" (если верить архиву "proba.zip") не существует. Есть кнопки "А" и "B".
Последний раз редактировалось sersne; 12.12.2010 в 18:18.
|
|
|
|
12.12.2010, 19:04
|
|
Вид на жительство
Регистрация: 07.03.2005
Сообщений: 300
Сказал спасибо: 13
Сказали Спасибо 117 раз(а) в 62 сообщении(ях)
|
Re: Задание. Реализовать на attiny2313
"Здесь не принято писать кому-то программный код бесплатно."
Это в европейском союзе?
Читая Ваши сообщения понял Вы с пеленок стали крутым программистом и ни разу не пользовались помощью и советами.
Бог велел делится!
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 08:46.
|
|