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

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

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

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

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

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

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

 
Опции темы
Непрочитано 12.01.2014, 00:41  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,907
Сказал спасибо: 2,543
Сказали Спасибо 11,818 раз(а) в 5,924 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Последний раз go to использовал лет пятнадцать назад. Некошерный оператор для Сей.
Без него гораздо приятней.
Реклама:
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 12.01.2014, 00:46  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Глупость какая.
Это при разборе чужого кода (или старого своего) неудобно и только-то.
В откомпилированной программе все ветвления на переходах.
omercury вне форума  
Непрочитано 12.01.2014, 00:52  
Fraktal
Временная регистрация
 
Регистрация: 21.02.2013
Сообщений: 87
Сказал спасибо: 70
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Fraktal на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

ну если программа не большая то goto не вызывают затруднения
Fraktal вне форума  
Непрочитано 12.01.2014, 00:59  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,907
Сказал спасибо: 2,543
Сказали Спасибо 11,818 раз(а) в 5,924 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от omercury Посмотреть сообщение
В откомпилированной программе все ветвления на переходах.
Охренеть! А я не знал, что Асм без этого не обходится...
Почитайте классиков наСИлия.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 12.01.2014, 01:23  
Fraktal
Временная регистрация
 
Регистрация: 21.02.2013
Сообщений: 87
Сказал спасибо: 70
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Fraktal на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

человек просто с утрировал проблему ))))
Fraktal вне форума  
Непрочитано 12.01.2014, 06:04  
Godzilla82
Почётный гражданин KAZUS.RU
 
Регистрация: 29.10.2006
Сообщений: 1,443
Сказал спасибо: 99
Сказали Спасибо 315 раз(а) в 231 сообщении(ях)
Godzilla82 на пути к лучшему
Сообщение Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от Fraktal Посмотреть сообщение
Godzilla82, я пробовал сделать через метку как Вы посоветовали , но что то студия у меня ругается на эти метки и пробовал объявлять как глобальные и как локальные.
Не знаю, что у вас за студия... Там вроде WinAVR стандартный. Там ничего не надо объявлять. Да и странно, что какая-то студия не следует стандартам языка Си.

Ну не нравится goto - используйте бесконечный цикл while(1) { }. Мне чисто визуально нравится goto. Иногда бывает полезным, когда надо вернуться к началу цикла из разных мест. Правда можно использовать continue;

Единственно, в студии PINA.0 не прокатит, нужно использовать (PINA & 1).
А ещё лучше:

PHP код:
 
#define BSTART    0b00000001

...

if( (
PINA BSTART) == ) ... 

Последний раз редактировалось Godzilla82; 12.01.2014 в 09:44.
Godzilla82 вне форума  
Сказали "Спасибо" Godzilla82
Fraktal (12.01.2014)
Непрочитано 12.01.2014, 09:15  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,907
Сказал спасибо: 2,543
Сказали Спасибо 11,818 раз(а) в 5,924 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от Fraktal Посмотреть сообщение
просто с утрировал проблему
Не-а, с вечерировал.
Сравните тексты с мышиными ходами GO TO и то же самое без них.
А насчет проблемы - сами не делайте это проблемой. Это просто вопрос стиля - стройного или растрепанного. Си вам не Асм.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 12.01.2014, 09:54  
Godzilla82
Почётный гражданин KAZUS.RU
 
Регистрация: 29.10.2006
Сообщений: 1,443
Сказал спасибо: 99
Сказали Спасибо 315 раз(а) в 231 сообщении(ях)
Godzilla82 на пути к лучшему
Сообщение Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от akegor Посмотреть сообщение
Это просто вопрос стиля - стройного или растрепанного.
Не только. Вот типичный случай:

Ожидание какого-то условия начала процесса.

Далее на разных этапах по ходу процесса надо проверять ещё раз 5 несколько условий. И при невыполнении любого из них надо вернуться в начало ожидания процесса.

У меня с помощью goto получилось просто, логично и понятно.

Если без goto - пришлось бы делать лишнюю оболочку из вечного цикла и использовать continue для перехода в начало, и break для выхда.
Godzilla82 вне форума  
Непрочитано 12.01.2014, 10:04  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,907
Сказал спасибо: 2,543
Сказали Спасибо 11,818 раз(а) в 5,924 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от Godzilla82 Посмотреть сообщение
пришлось бы делать лишнюю оболочку из вечного цикла
Цикл никто не принуждает делать вечным. Есть ведь признак, по которому нужно находиться в цикле или выйти.
Трудно к этому прийти, но потом, простите, к мышиным ходам возврата нет.
К такому подходу подталкивает и обработка событий.
Кому интересно.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.

Последний раз редактировалось akegor; 12.01.2014 в 10:30.
akegor вне форума  
Непрочитано 12.01.2014, 10:47  
Godzilla82
Почётный гражданин KAZUS.RU
 
Регистрация: 29.10.2006
Сообщений: 1,443
Сказал спасибо: 99
Сказали Спасибо 315 раз(а) в 231 сообщении(ях)
Godzilla82 на пути к лучшему
Сообщение Re: Как программно отследить появление логического нуля на входе /Reset?

Сообщение от akegor Посмотреть сообщение
Цикл никто не принуждает делать вечным. Есть ведь признак, по которому нужно находиться в цикле или выйти.
Ну признак - это дополнительная переменная. Вы читали, что я написал?

Просто мне логичнее и проще поставить goto. Для меня дополнительная оболочка из вечного цикла (или не вечного с дополнительной переменной-флагом, которая не нужна при goto) и операторы перехода к следующей итерации или выхода из цикла кажутся нагромождением, которое портит наглядность программы, этаким костылём.

А так - дело вкуса, конечно.
Godzilla82 вне форума  
 

Закладки
Опции темы

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

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

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

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


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


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