Увы,теория и практика женщины. А женской дружбы не бывает)
А, ну тогда да.) А я, к примеру, пишу и компилирую в другом, и чё? К чему тут эти женщины?
Это маска, которая состояние 6, 7 и 8 каналов превращает в число.
Неужели я и тут накосячил?
Ну кстати, я всяко пытался делать, а результат был одинаковый.
А под “управлять” подразумеваю включать и выключать.
К тому что теория и практика не дружат практически в любой сфере жизни, не только в программировании. Это не хорошо и не плохо,просто так устроен мир)
Это как? В какое число? Для чего?
вот три выключателя, 1, 2, 3. Если хоть один изменил свое положение, то если реле разомкнуто, то должно замкнуться. а если замкнуто, то должно разомкнуться.
Да, да. Практика с теорией не совместима. Это потому что бардак в практике. Потому что, типа, работает и ладно.
Исключающее ИЛИ в помощь.
Так регистры портов 8ми битные, тут же 12 бит. Компилятор обрежет лишние 4 бита и будет 11000000.
Честно говоря, я даже не помню хоть раз где нибудь что-то кроме “0b”. Всякие CodeBlocks’ы не в счёт,там видел “B”.
Не думаю что GCC это стандарт. При всём уважении к Столману.
if(x^y^z)....
X,y,z представляют собой состояния нужных битов, то есть
(PORTB&0b00000010)// читаем 1й бит,к примеру
Условие выполнится,если все биты будут одинаковы. Но это не точно)
@Green ,да я ж не спорю. Мало того,я сам стандартов не читал,учился на практике,на реальных текстах программ. Может где-то что-то и написано,но мне важней “работает/не работает”.
Ну так не зря ж в Ардудино придумали binary.h! Дабы хоть как то залатать стандарт.)
Ну так эти все переопределения чистая условность же. Только для человека. Не нравится если, никто же не мешает определять типы как угодно.
Вы переусложняете задачу. Проходные выключатели электрики придумали только потому, что иначе без специальных схем управления не обойтись. Вы же изначально делаете специальную схему управления - так зачем вам “проходные” выключатели? Зачем здесь вообще выключатели? Вы переместились в другую “экологическую нишу”, а рассуждать пытаетесь старыми понятиями ))
Вот у меня в комнате:
Первая группа кнопок, возле кровати - это выключатели без фиксации, правый - двухклавишный
Вторая группа кнопок, под столешницей рабочего стола - обычные звонковые кнопки. Обе группы подключены параллельно по схеме, что я приводил выше, управляются МК.
Логика простая: зафиксировано изменение состояния кнопки с отпущенной на нажатую - состояние соответствующего выхода инвертируется. И никаких извращений с битовыми масками ))
Хм,нет. “^” побитовое ИЛИ. А как насчёт Логического?
Ну, то что они не придерживаются правил. это их проблема. А потом, неизвестно кто это набирал, может индус какой то…
Кстати, у меня родственница за индуса замуж вышла, и живёт себе в Голландии и х. не дует. Правда, девки чернявые получились… Но тут ничего не поделаешь.(
Мужики не спорьте. Двоичные литералы с 0b
или 0B
(без разницы) - довольно новая вещь. Они появились только в стандарте 2014. В 2011 их ещё не было, потому и придумали binary.h
.
(хотя в некоторых компиляторах были и раньше, но это не было стандартом)