Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как так?
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > ARM, 32bit
1245
Есть два простых куска кода первый работает, второй нет. Из-за чего это может быть? STM32.
первый
Код
if(flag)
{
  x++;
  if(x==50||x==100||x==150) k++;  
  if(k==1 || k==2 || k==3) flag=0;
}


второй

Код
if(flag)
{
  x++;
  if(x==50||x==100||x==150) flag=0;
}
cioma
Что означает "не работает"?
редактор
В первом случае flag сбрасывается первые три раза (при k==1 или 2 или 3), при остальных значениях (0,4,5 и т.д) остается неизменной.
Во втором случае flag сбрасывается всегда, независимо от переменной k.
Lotor
Цитата(редактор @ Aug 27 2012, 10:19) *
Во втором случае flag сбрасывается всегда, независимо от переменной k.

Начнем с того, что во втором случаи приведенного кода переменной k нет.
alexeyv
1. Какова разрядность переменных x и k ? И вообще их определение
2. Как часто вызывается код?
3. Где flag устанавливается и как часто?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.