Инвертирование выхода

Раздел начинающих пользователей
Правила форума
В песочнице можно спрашивать когда незнаешь где спросить.
В песочнице нелзя посылать в гугл
В песочнице можно задавать любой вопрос, но на него могут и неответить.
Песочница для тех, кто начинает свои вопросы с защиты чайников от пинков.
В песочницу будут перетаскиваться вопросы неполучившие ответа.
Песочница - попытка навести порядок.
На песочницу большие надежды.

Re: Инвертирование выхода

Сообщение Прохожий (Прохожий) » 26 фев 2017, 13:35

mim писал(а):ЗЫ . Типа - вы тут пишите, а я потом посмотрю...

Как понимаю по местным правилам, проще Си или Ассемблер выучить, чем по ссылкам нормальный ответ получить :)
Ник: Прохожий
Имя: Прохожий
Заинтересованный
Заинтересованный
Информация о пользователе

Re: Инвертирование выхода

Сообщение Enigm (Enigm) » 26 фев 2017, 18:25

Форум для помощи, а не для, сделайте за меня.
То что вы спросили уже давно есть на форуме, и вам даже дали ссылки, а вы все равно упираетесь ))
Читать учить и пробовать.
Раз уж взялись за что то новое, то учитесь, ну или банально платите тем кто умеет и сделает все за вас.
Аватар пользователя
Ник: Enigm
Имя: Enigm
(Сочи)
Суперконсульт
Суперконсульт
Информация о пользователе

Re: Инвертирование выхода

Сообщение Прохожий (Прохожий) » 26 фев 2017, 19:07

Ха-ха! Парни. Никто не просил сделать, что-то за меня. Просто товарищ (это я о себе, в третьем лице) В ПЕСОЧНИЦЕ!!! Не в теме готовых проектов и прочего, попросил привести метод инвертирования выхода и ВСЁ!!! Только инвертирования выхода! Уже вторая страница пошла :) Вы уже до того стали снобами, что посылаете людей, делающих первые шаги в Фловкоде, разбираться в готовые проекты и пытаться там выдрать полезную информацию или, более того (это неимоверно феерично) заплатить тому кто понимает :) Давайте уже не останавливайтесь на пол-пути, потребуйте писать без ошибок :) Поверьте, доброжелательнее форума не встречал :) Простите конечно за резкость :)
Спасибо за помощь! :) Админ, тему можно выпиливать :)
Ник: Прохожий
Имя: Прохожий
Заинтересованный
Заинтересованный
Информация о пользователе
Вернуться наверх

Re: Инвертирование выхода

Сообщение agent_serg (agent_serg) » 26 фев 2017, 19:29

Вы должны инвертировать не выход, а переменную из которой макрос выхода передаёт данные на выход.
Переменная эта битовая и я делаю так: bit=1-bit
Делай не как хочется, а как надо и тогда всё будет как хочется...
-------------------------------------------------------------------------------------------------------
FC AVR v5.5.2.1 / Proteus v7.8 SP2 / Программаторы: Triton+ и USBasp / Win7 SP1 x64
Аватар пользователя
Ник: agent_serg
Имя: agent_serg
(White City)
Ученик
Ученик
Информация о пользователе
Вернуться наверх

Re: Инвертирование выхода

Сообщение Прохожий (Прохожий) » 26 фев 2017, 19:32

Спасибо, Сергей. Строго, лаконично, ёмко :) Сообщаю о результате: Всё получилось отлично. Но, правильно ли я написал? При одинаковом названии переменной (например but1= 1-but1) у меня не работает. А вот если переменные разные, то работает в любом варианте и but1 = 1-but2, и but2 = 1-but1. Файл прилагаю, кому нибудь пригодится
Админ, тему не нужно выпиливать. Мир не без добрых людей :)
(расширение *.fcfx сделано в Flowcode 6)
Инвертирование Pin выхода.jpg
У вас нет доступа для просмотра вложений в этом сообщении.
Ник: Прохожий
Имя: Прохожий
Заинтересованный
Заинтересованный
Информация о пользователе
Вернуться наверх

Re: Инвертирование выхода

Сообщение andrewproffi (Андрей) » 27 фев 2017, 03:56

Еще так можно but=!but
Аватар пользователя
Ник: andrewproffi
Имя: Андрей
(Томск)
Консультант
Консультант
Информация о пользователе
Вернуться наверх

Re: Инвертирование выхода

Сообщение Прохожий (Прохожий) » 27 фев 2017, 11:22

Спасибо :) Проверил - работает :)

Смотрел видео - там рекомендуют, при назначении переменных, если выводится бит - то назначать Bool (истина -1 или ложь -0) занимающий в памяти один байт. Потому, что если как в большинстве случаев в обучалках показывают, Byte (число от 0 до 255) отбирает в памяти целый бит. Это так, к слову, мало ли кто будет тему читать.
А вообще админу бы тему почистить и оставить только один топик в котором и вопрос и приведённые решения. Что бы как в справочнике.

Инвертирование Pin выхода:
1. ( Сообщение agent_serg) Вы должны инвертировать не выход, а переменную из которой макрос выхода передаёт данные на выход.
Переменная эта битовая и я делаю так: bit=1-bit
2. (Сообщение Андрей ) Еще так можно but=!but


Если будут ещё варианты пишите, внесу в первый пост, для удобства поиска.
Кстати, если все ответы сводить в первый же пост - получился бы в песочнице отличный FAQ. И форумчан-аксакалов мелочами бы не грузили.
С уважением, спасибо.
Ник: Прохожий
Имя: Прохожий
Заинтересованный
Заинтересованный
Информация о пользователе
Вернуться наверх

Re: Инвертирование выхода

Сообщение agent_serg (agent_serg) » 27 фев 2017, 12:52

Прохожий писал(а):При одинаковом названии переменной (например but1= 1-but1) у меня не работает. А вот если переменные разные, то работает в любом варианте и but1 = 1-but2, и but2 = 1-but1.
Теперь становится понятным, что же именно Вас интересовало.
То, что Вас интересовало, надо записать в свойствах выхода в поле "Переменная или значение": !bit
Тогда, если bit=1, то выход=0, а если bit=0, то выход=1

Прохожий писал(а):Спасибо :)Смотрел видео - там рекомендуют, при назначении переменных, если выводится бит - то назначать Bool (истина -1 или ложь -0) занимающий в памяти один байт. Потому, что если как в большинстве случаев в обучалках показывают, Byte (число от 0 до 255) отбирает в памяти целый бит.
У Вас путаница с битами и байтами. Байт - это 8 бит. Аксиома, которую надо запомнить навсегда.

Прохожий писал(а):Инвертирование Pin выхода:
1. ( Сообщение agent_serg) Вы должны инвертировать не выход, а переменную из которой макрос выхода передаёт данные на выход.
Переменная эта битовая и я делаю так: bit=1-bit
2. (Сообщение Андрей ) Еще так можно but=!but
Вариант Андрея правильный. Мой неправильный, хоть и работает. Использование оператора битовой логики оптимальнее во всех смыслах. И быстрее и меньше памяти используется.
Делай не как хочется, а как надо и тогда всё будет как хочется...
-------------------------------------------------------------------------------------------------------
FC AVR v5.5.2.1 / Proteus v7.8 SP2 / Программаторы: Triton+ и USBasp / Win7 SP1 x64
Аватар пользователя
Ник: agent_serg
Имя: agent_serg
(White City)
Ученик
Ученик
Информация о пользователе
Вернуться наверх

Re: Инвертирование выхода

Сообщение Прохожий (Прохожий) » 27 фев 2017, 13:50

Спасибо. С байтами-битами конечно ошибся, звонком отвлекли :) Сейчас первый пост подправлю, оставлю вариант Андрея, а Ваш как пример, что можно и так :)
Ник: Прохожий
Имя: Прохожий
Заинтересованный
Заинтересованный
Информация о пользователе
Вернуться наверх

Пред.

Вернуться в ПЕСОЧНИЦА

Кто сейчас на форуме

Пользователь просматривает форум: Yandex [Bot]