![]() |
|
Модераторы: PILOT, ManiaK, Mazzi |
![]()
|
|
| Faustle |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 18.4.2010 Репутация: нет Всего: нет |
Добрый вечер, коллеги.
Подскажите, пожалуйста, по следующему вопросу: Есть ли возможность использования цикла для включения портов? Например:
Переменная j должна быть константой, но если она является таковой, то в самой программе, я не смогу изменить ее значение. Возможны ли альтернативные варианты с использованием цикла, или все единственный вариант, использовать switch-case:
На всякий случай - мк ATtiny2313, среда CVAVR. Буду очень признателен за ваш ответ. |
||||
|
|||||
| ФедосеевПавел |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 291 Регистрация: 7.2.2009 Репутация: 1 Всего: 10 |
Я пользовался другим компилятором - WinAVR.
В одной из библиотек есть такие строки
Из чего я делаю вывод, что возможна комбинация
_BV - это эквивалент 1<<i Полагаю, что CVAVR обладает сходным функционалом. |
||||
|
|||||
| Faustle |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 18.4.2010 Репутация: нет Всего: нет |
ФедосеевПавел, Большое спасибо. Буду копать в данном направлении.
|
|||
|
||||
| ТарасАтавин |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 26.8.2013 Репутация: нет Всего: нет |
-------------------- Не так всё плохо, как оно есть на самом деле. |
|||
|
||||
| kolobok0 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 64 Регистрация: 24.12.2008 Репутация: нет Всего: 2 |
Посмотрите ассемблерные команды к Вашему МК. В частности операции с битами к AVR-кам. Что можно точно делать: Обращаться по адресам к портам(не битам). Работать на уровне портов с любой маской битов(читается-пишется целяком порт). Это вполне достаточно чтоб организовать доступ "в цикле". Например Вам никто не мешает в цикле создать любую необходимую маску на конкретный порт и потом одним чёхом загрузить в порт. Если при этом есть прерывания, которые работают с этим портом - не забудьте их заблокировать на время изменения порта (чтения-модификация-запись). удачи вам (круглый) |
|||
|
||||
![]()
|
| Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)" | |
|
|
На данный раздел помимо Правил форума распространяются текже следующие правила:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |