Спасибо. Только наверное запрещает __disable_irq(); а "__enable_iqr()" все же должна разрешать. Причем по небольшому опыту с 1921ВК01Т и достаточно большому с STM и арм-ядер, встроенных в Zynq от Xilinx получается, что по умолчанию прерывания с приоритетом больше "0" разрешены.Disona писал(а): ↑17 май 2021, 15:25Здравствуйте
Данный макрос, как можно видеть, вызывается CMSIS-функцию "__enable_iqr()", которая внутри выполняет ассемблерную команду "cpsid i".
Данная команда выставляет первый (и единственный значимый) бит в регистре "PRIMASK" ядра кортекс-M4. Согласно описание ядра это действие запрещает вызов всех прерываний с конфигурируемым приоритетом. Другими словами - запрещаются все периферийные прерывания; могут быть вызваны только прерывания с приоритетом ниже 0 - например прерывание таймера SysTick, прерывание из-за ошибки процессора "HardFault" / "BusFault" и так далее.
Подробнее про эти прерывания можно почитать в разделе "Exception model" документа кортекс-M4F User Guide (https://developer.арм.com/documentation/dui0553/latest/ , только "арм" в ссылке поменяйте на латинское написание, а то тут на форуме почему-то автоматом меняется на кириллицу).
К1921ВК01Т (арм Cortex-M4F)
Модераторы: ea, dav, bkolbov, Alis, pip, _sva_
Re: К1921ВК01Т (арм Cortex-M4F)
- Disona
- Сообщения: 81
- Зарегистрирован: 06 дек 2016, 11:18
- Предприятие: НПФ Вектор
- Откуда: Москва
- Контактная информация:
Re: К1921ВК01Т (арм Cortex-M4F)
Да, действительно, я перепутал.
Возможно, так и есть.
С уважением, Дмитрий Шпак
ООО "НПФ Вектор"
ООО "НПФ Вектор"
-
- Сообщения: 57
- Зарегистрирован: 11 июл 2014, 15:06
Re: К1921ВК01Т (арм Cortex-M4F)
Да, ситуация типичная.serg_vega писал(а): ↑14 май 2021, 09:385101НА015. Ну, вообще да, надо пробовать. Да вот беда, ее тоже в живую нет. Зато потом, типа все соберут и дадут одни выходные на отладку. Типа, а что вы делали полгода?prostoRoman писал(а): ↑13 май 2021, 22:12Тем более. Пробуйте перебором, там вариантов всего 4 стандартных.
Какая у Вас такая м/с с непонятным интерфейсом?
Попинайте техподдрержку на форуме какой у неё SPI MODE, вроде отвечают быстро.
Re: К1921ВК01Т (арм Cortex-M4F)
Понять не могу: SPI в данном контроллере настолько кривой, что разработчики не удосужились сделать пример с прерываниями? И "Вектор" тоже? Я хочу передавать, допустим пакеты по 8 слов. И принимать, соответственно тоже, по 8 слов. Делаем polling... Все работает все корректно... Включаем режим прерывания. Выставляем прерывания по ROR, и на осциллографе я вижу 8 переданных слов.... В прерывание мы не заходим... Ну да,буфер ведь заполнен, но не переполнен. Да и ладно. Ведь есть прерывания по заполнению буфера приемника наполовину... И тоже не работает, есть пропуски слов! Прерывания по опустошению буфера передатчика не существуют! И как с этим работать? По таймеру, закладываясь на время передачи пакета?
- Лашкевич
- Сообщения: 373
- Зарегистрирован: 13 май 2015, 13:10
- Предприятие: ООО "НПФ Вектор"
- Откуда: Москва
- Контактная информация:
Re: К1921ВК01Т (арм Cortex-M4F)
Мы (Вектор) с прерываниями по SPi не работали, нам хватало и так. Извините.
Re: К1921ВК01Т (арм Cortex-M4F)
Ну что же... Поскольку разработчик данного контроллера ушел в глухое молчание, даже телефонные звонки не стимулируют активность поддержки, предлагаю считать, что режим прерываний в контроллере SPI по факту отсутствует. По крайней до представления НИИЭТ рабочих примеров. Точнее он все же есть, но кривизна его запредельна!
-
- Сообщения: 209
- Зарегистрирован: 14 дек 2015, 09:21
- Предприятие: АО НИИЭТ
- Откуда: АО НИИЭТ, Воронеж
Re: К1921ВК01Т (арм Cortex-M4F)
Доброго времени суток!serg_vega писал(а): ↑20 май 2021, 09:39 Ну что же... Поскольку разработчик данного контроллера ушел в глухое молчание, даже телефонные звонки не стимулируют активность поддержки, предлагаю считать, что режим прерываний в контроллере SPI по факту отсутствует. По крайней до представления НИИЭТ рабочих примеров. Точнее он все же есть, но кривизна его запредельна!
SPI с прерываниями планируете использовать только для управления ЦАП 5101НА015? или для других задач?
Re: К1921ВК01Т (арм Cortex-M4F)
Нет. У нас широкое его применение кроме 5101НА015 точно 5306нт015, TQC9305 и PE43713. Это в том проекте, где платы уже разведены. И, возможно LM97593, а там вообще все очень жестко. Там будем думать. 100 МГЦ тактовой против 168 МГц у ST415RG, возможно просто не прокатят.dav писал(а): ↑20 май 2021, 10:06Доброго времени суток!serg_vega писал(а): ↑20 май 2021, 09:39 Ну что же... Поскольку разработчик данного контроллера ушел в глухое молчание, даже телефонные звонки не стимулируют активность поддержки, предлагаю считать, что режим прерываний в контроллере SPI по факту отсутствует. По крайней до представления НИИЭТ рабочих примеров. Точнее он все же есть, но кривизна его запредельна!
SPI с прерываниями планируете использовать только для управления ЦАП 5101НА015? или для других задач?
Re: К1921ВК01Т (арм Cortex-M4F)
Встал вопрос применения данного МК в новой разработке. В заменяемом МК используются 9 аппаратных таймеров. Возможно ли использовать таймеры ШИМ, квадратурных декодеров или каналов захвата в качестве дополнительных таймеров общего пользования? По документации на МК пока есть понимание, что такая возможность есть. Нет ли каких-либо ограничений?