Некорректная работа условий ...
- Войдите на сайт для отправки комментариев
Пт, 24/07/2015 - 22:12
Необходимо обрабатывать условие при z и a равными 0,то есть просто по И, а обрабатывается по ИЛИ!!!!
В выводе отсутствуют целые десятки(!!!), то есть с одним 0. Пробовал и в скобки условия, и !=0 результат один ...
if ( z >= 1 && a >= 1){ Serial.println(q); Serial.print(a); Serial.println(z); }
Впечатление, что компилер переколбашивает в с двумя вложенными условиями ...
if
( 0==z && 0==a) или
if
( !z && !a)
Покажите весь скетч. И результат его работы
А можно и нетрадиционно подойти к задаче , долой штампы! :)
if (!(a|z)) {.....} // сработает если и a и z равны нулю
А можно и нетрадиционно подойти к задаче , долой штампы! :)
if (!(a|z)) {.....} // сработает если и a и z равны нулю
в #1 убрал текст "по ИЛИ обрабытываюся нолики , а по И - единички"
аха , if (!(a|z)) - короче :)
Все приведенный условия работают!!!
Всем большое спасибо!!!!
Последний вариант вообще убил!
ЗЫ только почему ТАК, как-то подвыподвертом??? Особенности "перевода" ардуинки???
Покажите весь скетч. И результат его работы
Пожалуйста ... Имею некий девайс, без документов. Девайс имеет 8 восьмисегментных индикатора, 4 кнопки и 5 индикаторров-диодов. Все это хозяйство управляется 4-мя проводами, не считая питания. Захотел "прикрутить" к паяльной станции. Не хочу выводить НОЛИКИ в старших сегментах. Вот теперь тренеруюсь!!! Код отладочный, так как весь функционал получаю экпериментально.
Да, девайс реализован на двух регистрах сдвига НС4094.
только почему ТАК, как-то подвыподвертом???
с = /a * /b = /( a + b ) --->>> if ( !(a|b) )
http://schoolinfo3.ioso.ru/zakony.htm
в коде из #6 - почти все int можно заменить на byte
а строки 2, 4 , 6 , 8
int
SH_CP = 12;
//строб ---->>>> #define
SH_CP 12
//строб
а строки 2, 4 , 6 , 8
int
SH_CP = 12;
//строб ---->>>> #define
SH_CP 12
//строб
Спасибо, причешу!!!
У меня засада ... Не могу отследить нажатие кнопок при цикле индикации ... Если "зажигаю" один регистр - нажатие кнопки отслеживается! А в цикле - нет ... Да, аппаратно кнопки с выходов регистра через диоды на вход. Может ошибаюсь и это не диоды маркировка A1t Вроде как сдвоенные диоды. В порт входа какой-то мусор валиться. Особенно, когда подносишь палец, как наводка.
ЗЫ На "железном" форуме нашел:"Все Atmelы не терпят крутых фронтов на входных линиях (разводка у них многослойная на кристалле). Поэтому все приходящие сигналы (особенно издалека и от быстрой логики) подаются через резистор (минимум 1 кОм) иначе будут вызываться прерывания, и запрещенные, и отсутствующие в программе". Вообщем, нужна "ПОДТЯЖКА"!!!
ЗЫЗЫ Нашел "подтяжку" !!!
Все Atmelы не терпят крутых фронтов на входных линиях (разводка у них многослойная на кристалле)
...все цЫфровые микросхемы ЛЮБЯТ-ОБОЖАЮТ фронты сигналов в 90 градусов !!!!!!!!
растянутый-пологий фронт - это горе :(
подтяжка пина - это из другой сказки :)