К1921ВК01Т (арм Cortex-M4F)

32-разрядные микроконтроллеры разработки АО "НИИЭТ"

Модераторы: ea, dav, bkolbov, Alis, pip, _sva_

serg_vega
Сообщения: 96
Зарегистрирован: 20 июл 2020, 15:50
Предприятие: АО "ВНИИ "Вега"

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение serg_vega »

Disona писал(а): 17 май 2021, 15:25
serg_vega писал(а): 17 май 2021, 15:05 Вопрос Вектору: а какие прерывания разрешает макрос #define EINT __enable_irq()? Разве у данного контроллера есть полный запрет/разрешения прерываний?
Здравствуйте

Данный макрос, как можно видеть, вызывается CMSIS-функцию "__enable_iqr()", которая внутри выполняет ассемблерную команду "cpsid i".

Данная команда выставляет первый (и единственный значимый) бит в регистре "PRIMASK" ядра кортекс-M4. Согласно описание ядра это действие запрещает вызов всех прерываний с конфигурируемым приоритетом. Другими словами - запрещаются все периферийные прерывания; могут быть вызваны только прерывания с приоритетом ниже 0 - например прерывание таймера SysTick, прерывание из-за ошибки процессора "HardFault" / "BusFault" и так далее.

Подробнее про эти прерывания можно почитать в разделе "Exception model" документа кортекс-M4F User Guide (https://developer.арм.com/documentation/dui0553/latest/ , только "арм" в ссылке поменяйте на латинское написание, а то тут на форуме почему-то автоматом меняется на кириллицу).
Спасибо. Только наверное запрещает __disable_irq(); а "__enable_iqr()" все же должна разрешать. Причем по небольшому опыту с 1921ВК01Т и достаточно большому с STM и арм-ядер, встроенных в Zynq от Xilinx получается, что по умолчанию прерывания с приоритетом больше "0" разрешены.
Аватара пользователя
Disona
Сообщения: 81
Зарегистрирован: 06 дек 2016, 11:18
Предприятие: НПФ Вектор
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение Disona »

serg_vega писал(а): 17 май 2021, 17:02 Спасибо. Только наверное запрещает __disable_irq(); а "__enable_iqr()" все же должна разрешать.
Да, действительно, я перепутал.
serg_vega писал(а): 17 май 2021, 17:02 Причем по небольшому опыту с 1921ВК01Т и достаточно большому с STM и арм-ядер, встроенных в Zynq от Xilinx получается, что по умолчанию прерывания с приоритетом больше "0" разрешены.
Возможно, так и есть.
С уважением, Дмитрий Шпак
ООО "НПФ Вектор"
prostoRoman
Сообщения: 57
Зарегистрирован: 11 июл 2014, 15:06

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение prostoRoman »

serg_vega писал(а): 14 май 2021, 09:38
prostoRoman писал(а): 13 май 2021, 22:12
serg_vega писал(а): 13 май 2021, 16:01...из описания которой вообще невозможно понять какой у нее mode, там только картинки и они не совпадают тривиально ни с одним режимом STM32.
Тем более. Пробуйте перебором, там вариантов всего 4 стандартных.
Какая у Вас такая м/с с непонятным интерфейсом?
5101НА015. Ну, вообще да, надо пробовать. Да вот беда, ее тоже в живую нет. Зато потом, типа все соберут и дадут одни выходные на отладку. Типа, а что вы делали полгода?
Да, ситуация типичная.
Попинайте техподдрержку на форуме какой у неё SPI MODE, вроде отвечают быстро.
serg_vega
Сообщения: 96
Зарегистрирован: 20 июл 2020, 15:50
Предприятие: АО "ВНИИ "Вега"

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение serg_vega »

Понять не могу: SPI в данном контроллере настолько кривой, что разработчики не удосужились сделать пример с прерываниями? И "Вектор" тоже? Я хочу передавать, допустим пакеты по 8 слов. И принимать, соответственно тоже, по 8 слов. Делаем polling... Все работает все корректно... Включаем режим прерывания. Выставляем прерывания по ROR, и на осциллографе я вижу 8 переданных слов.... В прерывание мы не заходим... Ну да,буфер ведь заполнен, но не переполнен. Да и ладно. Ведь есть прерывания по заполнению буфера приемника наполовину... И тоже не работает, есть пропуски слов! Прерывания по опустошению буфера передатчика не существуют! И как с этим работать? По таймеру, закладываясь на время передачи пакета?
Аватара пользователя
Лашкевич
Сообщения: 373
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение Лашкевич »

Мы (Вектор) с прерываниями по SPi не работали, нам хватало и так. Извините.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
serg_vega
Сообщения: 96
Зарегистрирован: 20 июл 2020, 15:50
Предприятие: АО "ВНИИ "Вега"

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение serg_vega »

Лашкевич писал(а): 18 май 2021, 12:20 Мы (Вектор) с прерываниями по SPi не работали, нам хватало и так. Извините.
Ну а НИИЭТ после увольнения bkolbov, вообще забил и на поддержку, и на примеры и на контроллер :D
serg_vega
Сообщения: 96
Зарегистрирован: 20 июл 2020, 15:50
Предприятие: АО "ВНИИ "Вега"

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение serg_vega »

Ну что же... Поскольку разработчик данного контроллера ушел в глухое молчание, даже телефонные звонки не стимулируют активность поддержки, предлагаю считать, что режим прерываний в контроллере SPI по факту отсутствует. По крайней до представления НИИЭТ рабочих примеров. Точнее он все же есть, но кривизна его запредельна!
dav
Сообщения: 208
Зарегистрирован: 14 дек 2015, 09:21
Предприятие: АО НИИЭТ
Откуда: АО НИИЭТ, Воронеж

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение dav »

serg_vega писал(а): 20 май 2021, 09:39 Ну что же... Поскольку разработчик данного контроллера ушел в глухое молчание, даже телефонные звонки не стимулируют активность поддержки, предлагаю считать, что режим прерываний в контроллере SPI по факту отсутствует. По крайней до представления НИИЭТ рабочих примеров. Точнее он все же есть, но кривизна его запредельна!
Доброго времени суток!
SPI с прерываниями планируете использовать только для управления ЦАП 5101НА015? или для других задач?
serg_vega
Сообщения: 96
Зарегистрирован: 20 июл 2020, 15:50
Предприятие: АО "ВНИИ "Вега"

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение serg_vega »

dav писал(а): 20 май 2021, 10:06
serg_vega писал(а): 20 май 2021, 09:39 Ну что же... Поскольку разработчик данного контроллера ушел в глухое молчание, даже телефонные звонки не стимулируют активность поддержки, предлагаю считать, что режим прерываний в контроллере SPI по факту отсутствует. По крайней до представления НИИЭТ рабочих примеров. Точнее он все же есть, но кривизна его запредельна!
Доброго времени суток!
SPI с прерываниями планируете использовать только для управления ЦАП 5101НА015? или для других задач?
Нет. У нас широкое его применение кроме 5101НА015 точно 5306нт015, TQC9305 и PE43713. Это в том проекте, где платы уже разведены. И, возможно LM97593, а там вообще все очень жестко. Там будем думать. 100 МГЦ тактовой против 168 МГц у ST415RG, возможно просто не прокатят.
krestnick
Сообщения: 4
Зарегистрирован: 21 май 2021, 11:20
Предприятие: ППП ДА

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение krestnick »

Встал вопрос применения данного МК в новой разработке. В заменяемом МК используются 9 аппаратных таймеров. Возможно ли использовать таймеры ШИМ, квадратурных декодеров или каналов захвата в качестве дополнительных таймеров общего пользования? По документации на МК пока есть понимание, что такая возможность есть. Нет ли каких-либо ограничений?
Ответить

Вернуться в «32-разрядные микроконтроллеры»