
- •Прикладное программирование в информационно-навигационных системах
- •1.2 Направления повышения производительности (vliw, simd)
- •2.1 Цсп фирмы Texas Instruments. Семейства, области применения, особенности архитектуры.
- •2.2 Цифровой сигнальный контроллер tms320f28335
- •2.2.1 Основные параметры и характеристики
- •2.2.2 Краткое описание основных узлов и блоков
- •3.1 Вход/выходы общего назначения
- •3.2 Таймеры cpu
- •3.3 Внешний интерфейс
- •3.4 Прямой доступ к памяти
- •3.5 Система тактирования
- •3.6 Система прерываний
- •4.1 Модуль eQep квадратурного датчика (Encoder)
- •4.2 Модуль eCap захвата внешних событий (Capture)
- •4.3 Модуль ePwm широтно-импульсной модуляции
- •4.4 Модуль hrpwm широтно-импульсной модуляции с повышенным разрешением
- •4.5 Аналого-цифровой преобразователь adc
- •5.1 Модуль spi последовательного периферийного интерфейса
- •5.2 Модуль i2c межмикросхемного последовательного интерфейса
- •5.3 Модуль sci последовательного коммуникационного интерфейса
- •5.4 Модуль McBsp многоканального буферированного последовательного порта
- •5.5 Модуль can интерфейса
- •6.1.Интегрированная среда разработки и отладки программного обеспечения – общие понятия
- •6.2.Code Composer Studio ide (ccs): состав, общая характеристика
- •6.3 Настройка (Target and Host Setup), интерфейс пользователя
- •7.1 Конфигурация проекта
- •7.2 Текстовый редактор
- •7.3 Инструменты для создания программы
- •7.4 Построение проекта в ccs
- •7.5 Базовое программное обеспечение
- •8.1 Конфигурирование среды для отладки
- •8.2 Основные инструменты отладки
- •8.3 Отладка в реальном времени
- •8.4 Опции Reset
- •9.1 Анализ и оптимизация программы
- •9.2 Оптимизация прикладной программы
- •10.2 Примеры программ
- •10.3 Порядок внедрения заголовочных файлов и примеров программ
- •10.4 Использование matlab и LabView для подготовки и тестирования программ.
- •10.5 Аппаратная платформа для выполнения лабораторных работ tms320c2000 dsc Experimenter Kit. Назначение, устройство, особенности работы»
3.6 Система прерываний
3.6.1 В цифровом сигнальном контроллере TMS320F28335 содержится много периферийных блоков и каждый из них способен генерировать одно или несколько прерываний в ответ на внешние события. Число таких прерываний превышает возможности их обработки на уровне процессорного ядра, поэтому в процессоре создан блок расширения прерываний.
Блок расширения периферийных прерываний (PIE) служит для мультиплексирования до 96 источников периферийных прерываний к небольшому числу входов микропроцессорного ядра. 58 прерываний из 96 используются периферией процессора. 96 мультиплексируемых прерываний объединяются в группы по 8 и выход каждой из групп подключается к одному из 12 входов INT1…INT12 прерываний CPU. Каждое из 96 прерываний поддерживается собственным вектором, вектора прерываний хранятся в выделенном блоке памяти (PIE Vector – RAM). Вектора прерываний – это адреса, по которых хранятся подпрограммы обслуживания прерываний. На сохранение текущей информации и вызов процедуры обработки прерывания затрачивается 9 процессорных циклов.
На рис. 3.6 приведена блок-схема обработки мультиплексируемых прерываний.
На уровне периферии при возникновении необходимости прерывания бит флага (IF) соответствующего прерывания устанавливается в регистре в выделенное для этого периферийного устройства место. Если соответствующее прерывание активировано (IE), то периферийное устройство генерирует запрос прерывания в PIE.
На уровне PIE при поступлении запроса прерывания в PIE бит флага (IF) соответствующего прерывания устанавливается в регистре в выделенное для этого периферийного устройства место. Если соответствующее прерывание активировано (IE), проверяется соответствующий данной группе из 8 бит в регистре PIEACKx, чтобы убедиться, что CPU готов работать с этой группой прерываний. Если да, то PIE генерирует запрос прерывания в CPU, если нет, то PIE ждет готовности CPU.
На уровне CPU при поступлении запроса на прерывание устанавливается соответствующий флаг IFR и при установке ядром соответствующего разрешения IER и отсутствии глобальной маски прерываний INTM CPU приступает к подготовке обслуживания прерывания. При этом сохраняются переменные прерываемой программы, очищается конвейер, сохраняется адрес последней операции для возврата. Далее из таблицы векторов прерываний извлекается адрес соответствующей подпрограммы обслуживания прерывания и начинается ее исполнение, флаги PIEFRx автоматически сбрасываются.
Рис.3.6. Блок-схема обработки мультиплексируемых прерываний
3.6.2 Внешние прерывания – поддерживаются 8 маскируемых внешних прерываний (XINT1 – XINT7, XNMI). Параметры сигналов запроса прерываний (фронт, спад) настраиваются индивидуально. XINT1, XINT2, XNMI имеют собственный 16-разрядный счетчик, который позволяет делать точную отметку времени прерывания. Внешние прерывания не имеют однозначной привязки к определенным выводам микросхем,
XINT1, XINT2, XNMI могут быть запрограммированы на выводы, соответствующие GPIO0 …. GPIO31, XINT3 – XINT7 могут быть запрограммированы на выводы, соответствующие GPIO32 …. GPIO63.
Лекция №4 «Цифровой сигнальный контроллер TMS320F28335. Периферийные устройства для систем управления ePWM, eCAP, eQEP. Аналого-цифровой преобразователь. Устройство, программирование функций»