Обсуждаем контроллеры компании Atmel.
Ответить

Re: Изменение кода для счетчика

Вт июн 13, 2017 08:13:46

mnirti,
Ну почитайте Вы, наконец, книги по Си. Не получится у Вас ничего методом тыка...

Re: Изменение кода для счетчика

Вт июн 13, 2017 08:21:47

блок выполняется только, если на ножке появляется логическая единица

блок выполняется, пока на ножке есть логическая единица, почувствуйте разницу.

Как вариант, если на ножке есть единица, зайдем в блок, а когда на ножке появляется логический ноль - выйдем, если на момент входа в блок на ноге ноль - в блок не заходим.

Логичное название блока, ожидаем пока не будет нажата кнопка.
А вот зачем он в вашей программе нужен?

Re: Изменение кода для счетчика

Вт июн 13, 2017 10:40:26

Этот блок нужен просто по условию упражнения: счет начинается по нажатию кнопки, также останавливается и продолжается после очередного нажатия. Может быть условия поместить до каждого цикла?

Код:
   if ((PINB&0b00000001)==0))
{
while ((PINB&0b00000001)==0))
}

Re: Изменение кода для счетчика

Вт июн 13, 2017 11:17:44

В коде должны быть операции, которые выполняют работу.
Ваш пример, что полезного делает?

Компилятор на ваш пример как реагирует? Должен по идее выдавать, что чего то не хватает после
Код:
while ((PINB&0b00000001)==0))


Может быть условия поместить до каждого цикла?

Поместите, запустите отладку нп. в протеусе, если работает не так как вы ожидаете, выкиньте или измените.
Ответить