
- •Прикладное программирование в информационно-навигационных системах
- •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 прерываний поддерживается собственным вектором, вектора прерываний хранятся в выделенном блоке памяти (PIEVector–RAM). Вектора прерываний – это адреса, по которых хранятся подпрограммы обслуживания прерываний. На сохранение текущей информации и вызов процедуры обработки прерывания затрачивается 9 процессорных циклов.
На рис. 3.6 приведена блок-схема обработки мультиплексируемых прерываний.
На уровне периферии при возникновении необходимости прерывания бит флага (IF) соответствующего прерывания устанавливается в регистре в выделенное для этого периферийного устройства место. Если соответствующее прерывание активировано (IE), то периферийное устройство генерирует запрос прерывания вPIE.
На уровне PIEпри поступлении запроса прерывания вPIEбит флага (IF) соответствующего прерывания устанавливается в регистре в выделенное для этого периферийного устройства место. Если соответствующее прерывание активировано (IE), проверяется соответствующий данной группе из 8 бит в регистреPIEACKx, чтобы убедиться, чтоCPUготов работать с этой группой прерываний. Если да, тоPIEгенерирует запрос прерывания вCPU, если нет, тоPIEждет готовностиCPU.
На уровне CPUпри поступлении запроса на прерывание устанавливается соответствующий флагIFRи при установке ядром соответствующего разрешенияIERи отсутствии глобальной маски прерыванийINTMCPUприступает к подготовке обслуживания прерывания. При этом сохраняются переменные прерываемой программы, очищается конвейер, сохраняется адрес последней операции для возврата. Далее из таблицы векторов прерываний извлекается адрес соответствующей подпрограммы обслуживания прерывания и начинается ее исполнение, флаги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. Аналого-цифровой преобразователь. Устройство, программирование функций»