реклама на сайте
подробности

 
 
> функция не выходит из while.
Jenya7
сообщение Nov 17 2015, 12:35
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Есть такая функция.

Код
void HCI_Isr(void)
{  
  isr_timeout = IRQ_TIMEOUT;

  while(BlueNRG_DataPresent())
  {
      if(!isr_timeout--)
      {
          break;
      }

         //some code

  }
}

BlueNRG_DataPresent() проверяет высокий сигнал на пине. Если модуль завис то while все время крутиться. но я сделал таймаут а из в while функция все равно не выходит.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Abell
сообщение Nov 17 2015, 15:20
Сообщение #2


профессиональный дилетант
****

Группа: Участник
Сообщений: 866
Регистрация: 16-03-06
Из: Шебекино - Лысьва - Тюмень
Пользователь №: 15 292



sigmaN, +1, только он же вроде не в прерывании сидит sm.gif Хотя, действительно, правильней было бы по изменению сигнала на входе вызывать прерывание - но мы не знаем задачу автора, может это у него такое жесткое условие - никаких прерываний, все в цикл laughing.gif


--------------------
Скоро дело сказывается, да не скоро сказка делается, или тише будешь - дальше уедешь...

Go to the top of the page
 
+Quote Post

Сообщений в этой теме


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th August 2025 - 16:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.01365 секунд с 7
ELECTRONIX ©2004-2016