Форум РадиоКот • Просмотр темы - CoIDE проверка бита
Сообщения без ответов | Активные темы
Страница 1 из 1
[ Сообщений: 15 ]
Автор
Сообщение
lyaksandrov
Заголовок сообщения: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 17:55:46
Зарегистрирован: Пн окт 12, 2020 14:14:50Сообщений: 29
Рейтинг сообщения: 0
Всем привет, работаю в CoIDE и у меня возник вопрос. Как узнать что в 7 бите регистра IDR блока GPIOD установлен 0. Код как проверить стоит ли там 1 я знаю он выглядет так if(GPIOD->IDR&(1<<7){условие}, но не знаю как проверить на 0. Догадваюсь что можно использовать исключающее или, но сейчас нет возможности проверить это, может кто подсказать прав ли я?
Вернуться наверх
Реклама
VladislavS
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 18:21:21
Собутыльник Кота
Карма: 18
Рейтинг сообщений: 433
Зарегистрирован: Вт май 01, 2018 19:44:47Сообщений: 2557
Рейтинг сообщения: 0
Не прав.
Последний раз редактировалось VladislavS Вс янв 17, 2021 18:23:33, всего редактировалось 2 раз(а).
Вернуться наверх
Реклама
lyaksandrov
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 18:22:39
Зарегистрирован: Пн окт 12, 2020 14:14:50Сообщений: 29
Рейтинг сообщения: 0
Так и думал
, а вы не сможете подсказать тогда как можно проверить?
Вернуться наверх
VladislavS
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 18:23:43
Собутыльник Кота
Карма: 18
Рейтинг сообщений: 433
Зарегистрирован: Вт май 01, 2018 19:44:47Сообщений: 2557
Рейтинг сообщения: 0
Подсказка. А если там НЕ 1, то что?
Вернуться наверх
Реклама
lyaksandrov
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 18:26:40
Зарегистрирован: Пн окт 12, 2020 14:14:50Сообщений: 29
Рейтинг сообщения: 0
Дело в том, что нужно конктретно на 0 проверить. А понимаю если там не 1 то там 0, но проверка идет имеено на 1, а не на 0.
Вернуться наверх
Реклама
VladislavS
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 18:29:15
Собутыльник Кота
Карма: 18
Рейтинг сообщений: 433
Зарегистрирован: Вт май 01, 2018 19:44:47Сообщений: 2557
Рейтинг сообщения: 0
Если проверка на 1 не сработала, то что осталось?
Вернуться наверх
Реклама
lyaksandrov
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 18:32:03
Зарегистрирован: Пн окт 12, 2020 14:14:50Сообщений: 29
Рейтинг сообщения: 0
Остался 0 конечно, но повторюсь, что проверка идет на 1, а мне нужно именно на 0 проверку сделать. Вот такой преподаватель оказался категоричный)Добавлено after 1 minute 25 seconds: А понимаю, что это звучит глупо, но ничего поделать с этим не могу) Нужно именно проверку на 0)
Вернуться наверх
VladislavS
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 18:50:04
Собутыльник Кота
Карма: 18
Рейтинг сообщений: 433
Зарегистрирован: Вт май 01, 2018 19:44:47Сообщений: 2557
Рейтинг сообщения: 0
Я даже не знаю как ещё слово "НЕ" выделить.
Вернуться наверх
lyaksandrov
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 19:14:25
Зарегистрирован: Пн окт 12, 2020 14:14:50Сообщений: 29
Рейтинг сообщения: 0
А если так напишу будет правильно? if((GPIOD->IDR&(1«7))==0) { условие }
Вернуться наверх
Реклама
Zhuk72
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 20:24:13
Сверлит текстолит когтями
Карма: 25
Рейтинг сообщений: 168
Зарегистрирован: Ср янв 29, 2014 08:41:31Сообщений: 1231Откуда: Баку
Рейтинг сообщения: 0
Правильно. Либо, как выше VladislavS намекал, if((GPIOD->IDR & (1 « 7)) != 1)
_________________ Каждый имеет право на свое личное ошибочное мнение. У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Вернуться наверх
NStorm
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 20:32:08
Поставщик валерьянки для Кота
Карма: 12
Рейтинг сообщений: 532
Зарегистрирован: Ср июл 17, 2013 13:55:57Сообщений: 1978
Рейтинг сообщения: 0
А еще есть конструкция if(!(GPIOD->IDR & (1 « 7)). А вообще вам бы, ТС базовый курс по Си почитать что-ли. Это ж самые азы. И CoIDE тут не причем.
Вернуться наверх
VladislavS
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Вс янв 17, 2021 21:15:47
Собутыльник Кота
Карма: 18
Рейтинг сообщений: 433
Зарегистрирован: Вт май 01, 2018 19:44:47Сообщений: 2557
Рейтинг сообщения: 0
Либо, как выше VladislavS намекал, if((GPIOD->IDR & (1 « 7)) != 1)
Ну это же неправильно!
Вернуться наверх
Zhuk72
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Пн янв 18, 2021 17:09:01
Сверлит текстолит когтями
Карма: 25
Рейтинг сообщений: 168
Зарегистрирован: Ср янв 29, 2014 08:41:31Сообщений: 1231Откуда: Баку
Рейтинг сообщения: 0
Почему? Если бит не равен 1, значит он равен 0. Третьего не дано. Понятно, что так обычно не пишут, сравнивая с интересующим значением, но тем не менее логика же верна.
_________________ Каждый имеет право на свое личное ошибочное мнение. У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Вернуться наверх
NStorm
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Пн янв 18, 2021 17:19:48
Поставщик валерьянки для Кота
Карма: 12
Рейтинг сообщений: 532
Зарегистрирован: Ср июл 17, 2013 13:55:57Сообщений: 1978
Рейтинг сообщения: 0
Zhuk72 , а до знака думаете стоит бит? Подумайте еще, посмотрите на выражение в скобках. Какие оно может принимать значения? Подсказка: 0 и 1 - неправильный вариант. Подсказка 2: if(x) при каких значениях x сработает?
Вернуться наверх
Zhuk72
Заголовок сообщения: Re: CoIDE проверка бита
Добавлено: Пн янв 18, 2021 17:33:47
Сверлит текстолит когтями
Карма: 25
Рейтинг сообщений: 168
Зарегистрирован: Ср янв 29, 2014 08:41:31Сообщений: 1231Откуда: Баку
Рейтинг сообщения: 0
Я уже понял, потому и вернулся, чтобы сообщить об этом
Добавлено after 1 minute 42 seconds: Результат будет либо 0, либо 0х80.
_________________ Каждый имеет право на свое личное ошибочное мнение. У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Вернуться наверх
Страница 1 из 1
[ Сообщений: 15 ]
Кто сейчас на форуме
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения