Кое-как описано: 9.8 PORTB Interrupt-on-Change An input change on PORTB<7:4> sets flag bit, RBIF (INTCON<0>). The interrupt can be enabled/disabled by setting/clearing enable bit, RBIE (INTCON<3>). Interrupt priority for PORTB interrupt-on-change is determined by the value contained in the interrupt priority bit, RBIP (INTCON2<0>).
Как я понимаю, это по смене уровня, а не по фронтам, как ножки INTX? В ноль - прерывание, в единицу - опять, и т.д.? И аббревиатура KBIX не расшифрована в даташите.
Заголовок сообщения: Re: Вопросы начинающих PIC ASM
Добавлено: Чт мар 07, 2024 14:11:21
Друг Кота
Карма: -6
Рейтинг сообщений: 13
Зарегистрирован: Вс сен 17, 2017 17:44:21 Сообщений: 3911 Откуда: 51.7727, 55.0988. Высота над морем 107 м. До границы 161 км.
Рейтинг сообщения:0
Как я понимаю, это по смене уровня, а не по фронтам, как ножки INTX? В ноль - прерывание, в единицу - опять, и т.д.? И аббревиатура KBIX не расшифрована в даташите.
Нормально описано, почти на русском, только понимать надо тему. Это называется прерывание по изменению состояния.
Доброго времени суток. Возможно ли передать в макрос имя параметра с запятой (например GPIO,2) ? При попытке передать, видит зяпятую, и ругается, распознавая это как 2 отдельных параметра. Скобки () - не помогают.
В многообразии литиевых батареек и аккумуляторов нет какого-то универсального или идеального варианта. Выбирая тот или иной вариант для питания устройства, разработчику приходится оперировать множеством параметров, используя наиболее оптимальное их сочетание для каждого приложения. Разберем параметры для различных приложений.
Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. EVE является поставщиком аккумуляторных элементов круглого формата для электрических моделей автомобилей.
Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного.
Так и было сделано, только без скобок. Пробовал со скобками - ошибка не уходит, + появляется ругань на скобки при банальных "bsf my_port". Пока сделал как сказал КРАМ (дефайню только номер бита, а уже внутри макроса подставляю его к GPIO), работает. Но конечно будет не так удобно переносить этот код на МК с портами А,В,С и т.д. Транслятор - стандартный MPASM, из состава MPLAB 8.92.
Только вот... От того, какой порт задействован номер его бита не изменится. У ПИКов нет прямоадресуемых бит (как у 51й). Меняется только адрес регистра спецфункций но номер линии остается одним и тем же... Возможно макрос как-то иначе надо организовать...
Попробуй дать номерам линий портов символьные имена. #define это текстовая подстановка, а у вышеприведенного второй элемент - цифра... Допустим... #define four 4 ; или через four equ 4 #define my_pin PORTB,four ....
Спасибо, подсказали идею: обявить в макросе на 1 параметр больше и передавать дефайн порта как 2 параметра (имя порта+номер пина), через запятую. Небольшая логическая несостыковка, но можно принять как данность. Задача решена.
Это дурной тон дрыгать ногами, игнорируя аппаратные фичи. Сейчас весь смысл применения дешевых восьмибитников состоит в том, что фактически такие чипы являются набором разнообразной периферии на все случаи жизни, а задача ядра всего лишь сконфигурировать этот зоопарк и и запустить его, изредка поддерживая небольшими расчетами и управлением через автоматические каналы связи.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения