Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


Закрытая тема
Опции темы
Непрочитано 10.09.2012, 18:55   #891
_Артём_
Гражданин KAZUS.RU
 
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
_Артём_ на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от papa_n Посмотреть сообщение
Какие переменные в программе я могу менять из-вне? Например с помощью ком порта?
Как это -"из-вне"?
Можно послать байт на Com-порт МК, и если он его примет, то установится флаг RXC.
Сообщение от papa_n Посмотреть сообщение
И снова здравствуйте!!
А то что то не могу найти ни одного нормального примера)
Код:
unsigned char RxBuffer[32], RxNext;
#pragma vector=USART0_RXC_vect
__interrupt void UartRxComplete()
{
    unsigned char b = UDR1;
    RxBuffer[RxNext++]=b;
}
Реклама:
_Артём_ вне форума  
Непрочитано 10.09.2012, 19:23   #892
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от papa_n Посмотреть сообщение
Какие переменные в программе я могу менять из-вне?
Если речь, по-прежнему, идёт всё о той же программе, составляющей единственную начинку памяти кода меги2560, то никакие - ведь кроме этой программы другого исполняемого кода в м/к нет. С точки зрения функции или модуля, действительно, переменные могут изменяться извне, их необходимо помечать квалификатором volatile, чтобы компилятор знал, что их значения могут меняться неизвестным ему способом. Детали доступны всё в том же источнике - K&R.
__________________
There's always more than one way to skin a cat.

Последний раз редактировалось tempora; 10.09.2012 в 19:26.
tempora вне форума  
Непрочитано 11.09.2012, 12:21   #893
papa_n
Временная регистрация
 
Регистрация: 08.01.2007
Сообщений: 92
Сказал спасибо: 17
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
papa_n на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от tempora Посмотреть сообщение
Детали доступны всё в том же источнике - K&R.
А поподробнее можно? Плизз
papa_n вне форума  
Непрочитано 11.09.2012, 13:00   #894
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

K&R - это уже упоминавшаяся ранее книга Кернигана и Ритчи, авторов языка C.
__________________
There's always more than one way to skin a cat.

Последний раз редактировалось tempora; 11.09.2012 в 23:07.
tempora вне форума  
Сказали "Спасибо" tempora
papa_n (11.09.2012)
Непрочитано 19.09.2012, 19:10   #895
papa_n
Временная регистрация
 
Регистрация: 08.01.2007
Сообщений: 92
Сказал спасибо: 17
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
papa_n на пути к лучшему
Вопрос Re: Уроки СИ для AVR микроконроллеров

Доброго времени суток!!!
Сразу скажу спасибо, уже не раз меня здесь наводили на "дельные" мысли, но пробелы как всегда были и будут))
Так вот!
Подскажите какие идеи будут у Вас для решения такой задачи:
Есть некое устройство, оно работает по программе. При подачи питания, устройство в основном МК, должно спать и пробудится при 5 ти кратном нажатии на кнопку, причем 5 нажатий за 10 секунд, иначе снова спать!
если произошло 5 нажатий МК включает ключ и устройство полноценно работает. А еще надо что бы устройство так же и выключалось при 5 ти нажатиях! Как это отработать с основной программой?
Как бы Вы набросали такой алгоритмик? или кто сталкивался?
Благодарствую заранее
papa_n вне форума  
Непрочитано 19.09.2012, 19:32   #896
baiderin
Почётный гражданин KAZUS.RU
 
Аватар для baiderin
 
Регистрация: 10.12.2007
Адрес: Екатеринбург
Сообщений: 2,725
Сказал спасибо: 2,424
Сказали Спасибо 893 раз(а) в 580 сообщении(ях)
baiderin на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

По первому нажатию просыпается и не спит, ожидая, 10 секунд.
Есоли 5 нажатий небыло, то засыпает.
baiderin вне форума  
Непрочитано 19.09.2012, 20:16   #897
ut1wpr
Почётный гражданин KAZUS.RU
 
Аватар для ut1wpr
 
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
ut1wpr на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от papa_n Посмотреть сообщение
Как бы Вы набросали такой алгоритмик? или кто сталкивался?
Благодарствую заранее
Алгоритмиком назвать трудно. При первом же изменении состояния пина порта (того, где "нажатия") вылетаете из сна и сбрасываете флаг таймаута. Запускаете таймер на 10 сек. Считаете то, что вы называете "нажатием" и одновременно проверяете флаг таймаута. Если насчитали 5, а флага так и не было, бегом выполнять любые задачи. Таймер сам себя остановит. А поднятый им флаг вас уже не интересует. Если же обнаружили флаг таймаута, - бегом спать. Флаг будет сброшен по пробуждению. По вектору прерывания таймера две процедурки. Остановить таймер навсегда и поднять флаг таймаута.
__________________
С уважением,
Vic / ut1wpr

Последний раз редактировалось ut1wpr; 19.09.2012 в 20:32.
ut1wpr вне форума  
Непрочитано 19.09.2012, 21:21   #898
Yurkin2007
Заблокирован
 
Регистрация: 27.03.2007
Сообщений: 1,328
Сказал спасибо: 12
Сказали Спасибо 576 раз(а) в 460 сообщении(ях)
Yurkin2007 на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от papa_n Посмотреть сообщение
пробудится при 5 ти кратном нажатии на кнопку, причем 5 нажатий за 10 секунд, иначе снова спать!
Условие какое-то нечёткое. Ну, с первым нажатием проснулись. Понятно. Если затем за 10 сек получилось только 4 нажатия - снова спать. И тут же приходит пятое нажатие. Типа, опоздали немного. Нужно ли снова просыпаться и считать это первым нажатием из новой серии нажатий ?
Если так, то перед серией нажатий нужно будет выжидать 10сек на всякий случай для очистки состояния от предыдущих неудачных попыток.
Yurkin2007 вне форума  
Непрочитано 19.09.2012, 21:41   #899
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Если считать, что условия изложены корректно, то придется помнить время каждого нажатия и подсчитывать скользящую сумму. Но меня тоже одолевают сомнения насчет корректности.
__________________
There's always more than one way to skin a cat.
tempora вне форума  
Непрочитано 05.10.2012, 17:41   #900
papa_n
Временная регистрация
 
Регистрация: 08.01.2007
Сообщений: 92
Сказал спасибо: 17
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
papa_n на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Доброго времени суток
Сделал кнопку в прерывании на 8-10 сек
Кому интересно вот проэкт

между контактов кнопки нужно кандёр я поставил 0,15 мФ
Вложения:
Тип файла: rar Project_CV_Key.rar (35.0 Кб, 31 просмотров)
papa_n вне форума  
Закрытая тема

Закладки


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Видео уроки dosikus Микроконтроллеры, АЦП, память и т.д 61 23.01.2012 21:06
Видео уроки (flash) Proteus 7.1 fmssp Proteus 5 13.08.2007 03:56
AVR уроки Рюмика chipic128 Proteus, KiCAD и другие ECAD 9 07.03.2007 21:46
уроки от LABCENTRE(PIC12F675+C) dosikus Микроконтроллеры, АЦП, память и т.д 22 09.10.2006 10:16


Часовой пояс GMT +4, время: 18:24.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot