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

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

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

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

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

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

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

 
Опции темы

Как программно отследить появление логического нуля на входе /Reset?

Непрочитано 08.01.2014, 04:05  
_Артём_
Гражданин KAZUS.RUN
 
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
_Артём_ на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от Fraktal Посмотреть сообщение
только тут Тема нужно написать не просто Pin а конкретнее Pin"X". Просто Pin = ошибка. Может ты опечатался.
Именно так - опечатка. Я ведь не компилировал - сайт не позволяет .
Код:
while((PINB & (1‹‹2)) == 0)
Реклама:
_Артём_ вне форума  
Непрочитано 08.01.2014, 04:10  
Fraktal
Временная регистрация
 
Регистрация: 21.02.2013
Сообщений: 87
Сказал спасибо: 70
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Fraktal на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от _Артём_ Посмотреть сообщение
Я ведь не компилировал - сайт не позволяет
Мысль для Владельца Сайта
Fraktal вне форума  
Непрочитано 08.01.2014, 09:21  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от akegor Посмотреть сообщение
От себя добавлю - только ДШ и еррату.
Жжешь, а nixto кто читать будет ?!
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 08.01.2014, 12:33  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,313
Сказал спасибо: 2,633
Сказали Спасибо 12,076 раз(а) в 6,082 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от dosikus Посмотреть сообщение
Жжешь,
Можно и перерывчики делать...
Сообщение от _Артём_ Посмотреть сообщение
Именно так - опечатка.
И с этой очепяткой у ТС заработало? И на PINB2 компилятор не ругнулся? Или ругань - по боку?
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 08.01.2014, 13:23  
ForcePoint
Почётный гражданин KAZUS.RUN
 
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 7,457
Сказал спасибо: 3,225
Сказали Спасибо 3,511 раз(а) в 2,392 сообщении(ях)
ForcePoint на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от Fraktal Посмотреть сообщение
ребят а как тут цикл создать , что то у меня не идет.
А за использование _delay и/или циклов в обработчике прерывания я приговаривал-бы к пожизненному эциху с горячими паяльниками или принудительной переквалификации в джамшута.
ForcePoint вне форума  
Непрочитано 08.01.2014, 15:21  
ArtemKolesnikov
Прописка
 
Аватар для ArtemKolesnikov
 
Регистрация: 16.03.2007
Адрес: Невинномысск, STAVROPOL REGION (26)
Сообщений: 117
Сказал спасибо: 582
Сказали Спасибо 28 раз(а) в 15 сообщении(ях)
ArtemKolesnikov на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от ForcePoint Посмотреть сообщение
А за использование _delay и/или циклов в обработчике прерывания я приговаривал-бы к пожизненному эциху с горячими паяльниками или принудительной переквалификации в джамшута.
Полностью согласен.
Добавлю, вам (ТС) настоятельно советую сразу отказаться от манипулирования шестнадцатеричными цифрами при конфигурировании портов, как у вас:
Код:
DDRB =0x01;
        PORTB = 1; 
...
Вы сами запутаетесь скоро, если уже не запутались. Я когда начинал изучать МК тоже сначала думал, что легче цифрами, ан нет, потом задолбался разбираться, что и как.
При работе с DDRх и PORTx манипулируйте Pxn, например
Код:
DDRD=(1‹‹PD1)|(1‹‹PD2);  //PD1 и PD2 - в 1
Можно и PINn, например
Код:
PORTB&=~(1‹‹PINB1); // PINB1 - в 0
Они объявлены одинаковыми значениями.
Вы заранее знаете, что у вас подключено на PD1, PD2, PINB1. Поэтому знаете, что будет получать лог. 0, а что - 1.

Последний раз редактировалось ArtemKolesnikov; 08.01.2014 в 15:28.
ArtemKolesnikov вне форума  
Сказали "Спасибо" ArtemKolesnikov
Fraktal (08.01.2014)
Непрочитано 08.01.2014, 16:29  
Fraktal
Временная регистрация
 
Регистрация: 21.02.2013
Сообщений: 87
Сказал спасибо: 70
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Fraktal на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от akegor Посмотреть сообщение
Можно и перерывчики делать...

И с этой очепяткой у ТС заработало? И на PINB2 компилятор не ругнулся? Или ругань - по боку?
ругнулась студия не без этого , пришлось подправить опечатку а после Автору - Артему подсказал про нее.
Fraktal вне форума  
Непрочитано 08.01.2014, 16:32  
Fraktal
Временная регистрация
 
Регистрация: 21.02.2013
Сообщений: 87
Сказал спасибо: 70
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Fraktal на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

ArtemKolesnikov, Благодарю за СОВЕТ , буду стараться писать так. Просто такая корявость моего кода идет от "1-го разряда из 32 бит имеющихся" моего опыта программирования микроконтроллеров и знания синтаксиса СИ и его конструкций. Когда мой опыт перерастет в "8-й разряд из 32 бит имеющихся" тогда и конструкция и лаконичность кода и алгоритма будет интелектуальнее.

Последний раз редактировалось Fraktal; 08.01.2014 в 16:39.
Fraktal вне форума  
Непрочитано 08.01.2014, 16:49  
Fraktal
Временная регистрация
 
Регистрация: 21.02.2013
Сообщений: 87
Сказал спасибо: 70
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Fraktal на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

ForcePoint, А как же мне обойти эти острые углы в моем случае. Если у меня по нажатию кнопки PinB2 становится равен нулю как мне и нужно и после мне требуется чтобы функция main начала снова обрабатываться после того как произойдет отключение кнопки от земли т.е PINB2 = 1. Какой есть более корректный способ не используя цикла в прерывании "в моем случае" отследить условие выхода из прерывания?
Fraktal вне форума  
Непрочитано 08.01.2014, 17:33  
ForcePoint
Почётный гражданин KAZUS.RUN
 
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 7,457
Сказал спасибо: 3,225
Сказали Спасибо 3,511 раз(а) в 2,392 сообщении(ях)
ForcePoint на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от Fraktal Посмотреть сообщение
Какой есть более корректный способ не используя цикла в прерывании "в моем случае" отследить условие выхода из прерывания?
Естественно и единственно (необходимо и достаточно) - изменить алгоритм. Например - ISR(INT2_vect) должен инвертировать флажок (бит в некоей переменной или саму перемунную, если бит будет затруднителен, с антидребезгом, естественно), а main по состоянию флага чтоделает или нет.
ForcePoint вне форума  
 
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Решено] Сборник перлов любителей кабельщины mikesmith Отвлекитесь, эмбеддеры! 135 14.08.2007 15:49
[Решено] Всем эмбеддерам посвящается... Decan Отвлекитесь, эмбеддеры! 0 24.10.2005 14:43


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.