Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсач цуимп филе.docx
Скачиваний:
1
Добавлен:
23.09.2019
Размер:
661.21 Кб
Скачать

Оглавление

Введение 3

Техническое задание 4

1. Аппаратная реализация системы 5

2. Программная реализация системы 6

2.1 Реализация программы 6

Одноуровневые прерывания 7

Векторные прерывания 8

2.1.1 Регистры направления PxDIR 9

2.1.3 Регистр разрешения прерываний PxIE 10

2.1.4 Регистры выбора фронта прерываний PxIES 10

Заключение 15

Список источников информации 16

ПРИЛОЖЕНИЕ 17

Введение

Микроконтроллеры MSP430 — это процессоры для обработки смешанных (аналоговых и цифровых) сигналов (Mixed Signal Processor — MSP), обладающие сверхнизким энергопотреблением. Наиболее очевидное преимущество малого потребления проявляется в мобильных устройствах. Низкое энергопотребление позволяет реализовать идею одноразового питания, когда на протяжении всего срока эксплуатации изделия используется один незаменяемый источник. При этом источник питания устанавливается на фабрике, и исключается возможность поломки мобильного устройства в случае неправильной его замены. Эта идея применима для производства измерительных приборов, спортивного оборудования, портативных медицинских устройств. Кроме того, необходимо учитывать еще одно преимущество малого энергопотребления — сверхмалое электромагнитное излучение (EMI).

Сегодня микроконтроллеры со сверхнизким потреблением MSP430 — это всемирноизвестная и популярная серия устройств, включающая более 100 различных модификаций, имеющих Flash-память от 1 до 128 кбайт и количество выводов от 14 до 100, что позволяет подобрать идеальное решение для различных приложений.

Микроконтроллеры семейства MSP430 содержат 16-разрядное RISC CPU, периферийные модули и гибкую систему тактирования, соединенные через фон-Неймановскую общую адресную шину (MAB) памяти и шину памяти данных (MDB). Объединяя современное CPU с отображаемыми в памяти аналоговыми и цифровыми периферийными устройствами, семейство MSP430 предлагает решения для приложений со смешанными сигналами.

Семейство MSP430 обладает следующими ключевыми особенностями:

  • Архитектура с ультранизким потреблением, увеличивающая время работы при питании от батарей:     - для сохранности содержимого ОЗУ необходим ток не более 0,1 мкА;     - модуль тактирования реального времени потребляет 0,8 мкА;     - ток потребления при максимальной производительности составляет 250 мкА;

  • Высококачественная аналоговая периферия для выполнения точных измерений:     - встроенные модули 12-разрядного или 10-разрядного АЦП скоростью 200 ksps;     - имеется температурный датчик и источник опорного напряжения VRef;     - сдвоенный 12-разрядный ЦАП;     - таймеры, управляемые компаратором для измерения резистивных элементов;     - схема слежения (супервизор) за напряжением питания;

  • 16-разрядное RISC CPU, допускающее новые приложения к фрагментам кода:     - большой регистровый файл снимает проблему «узкого файлового горлышка»ii;     - компактное ядро имеет пониженное энергопотребление и стоимость;     - оптимизировано для современного высокоуровневого программирования;     - набор команд состоит из 27 инструкций, поддерживается семь режимов адресации;     - расширенные возможности векторных прерываний;

Возможность внутрисхемного программирования Flash-памяти позволяет гибко изменять и обновлять программный код, производить регистрацию данных.

Техническое задание

Необходимо спроектировать систему ввода-вывода аналоговой, цифровой информации на базе микроконтроллера MSP430F149 фирмы Texas Instruments.

Реализовать работу микроконтроллера с внешним прерыванием, прерыванием от таймера, и работу с АЦП, реализованнных в одной схеме, имеющих взаимозависимость.

  1. Аппаратная реализация системы

MSP430F149

Принципиальная схема:

  1. Программная реализация системы

Данное техническое задание состоит из одной задачи с тремя подпунктами:

1.а Реализация реагирования на внешнее прерывание;

1.б Реализация срабатываний прерываний от таймера;

1.в Реализация срабатываний прерываний от АЦП.

    1. Реализация программы

Необходимо получить программный код, который реализовывает возможность общей работы срабатываний прерываний от АЦП, таймера и внешнего воздействия.

Была разработана программа со следующей логикой работы:

Срабатывание таймера, запускающих поочередное включение и отключение индицирующих светодиодов происходит при определенном значении сигнала на АЦП, в то же время в случае нажатия на кнопку происходит срабатывание дополнительных комманд, изменяющих стиль индицирования до момента отпускания кнопки.

Первичная настройка микроконтроллера производится с помощью соответствующих регистров в функции main().

Для корректной работы необходимо запретить запуск сторожевого таймера.

Первичный запуск прерывания срабатывает при первом обращении к АЦП внутри функции main(), в дальнейшем отслеживание значения АЦП происходит в обработчике прерывания АЦП.

При достижении определенного значения на АЦП(12, линия P6.0), обработчик прерываний АЦП запускает обработчик прерываний таймера(А). Реализация мигания светодиодов(P1.0-P1.7) внутри обработчика проста, основывается на элементарных счетчиках, в качестве элементов задержки и отслеживания индикаторов.

В обработчике таймера есть индикатор нажатия кнопки(S3, линия P3.0), запускающий обработчик прерывания внешнего воздействия, внутри которого, соответственно находится код, отвечающий за изменение индицирующих светодиодов.

Код программы отображен в ПРИЛОЖЕНИИ, снабжен максимально подробно комментариями.

Далее перечислены используемые регистры для настройки микроконтроллера, а также информация о работе таймера, АЦП, а также краткая информация о прерываниях.

2.1.0

Прерывания

Прерывания в микроконтроллерах представляет собой  механизм, который позволяет микроконтроллеру реагировать на внешние события. Этот механизм работает таким образом, что при наступлении некоторого события в процессоре возникает сигнал, заставляющий процессор прервать выполнение текущей программы, т.е. говорят, что возникло прерывание. После того как выполнение текущей программы прервано, процессор должен перейти к выполнению программной процедуры, связанной с этим событием (прерыванием) – процедуры обработки прерывания. Однако, прежде чем перейти непосредственно к процедуре обработки прерывания, процессор должен выполнить ряд предварительных действий. Прежде всего, для того чтобы в будущем он смог корректно продолжить прерванную программу, необходимо сохранить состояние процессора (счетик команд, слово состояния процессора, внутренние регистры и т.д.) на момент, предшествующий прерыванию. Т.е. другими словами, требуется сохранить состояния всех тех ресурсов,  которые так или иначе могут быть изменены в процессе обработки прерывания. Далее, если в системе имеется несколько возможных источников прерываний (а обычно так и бывает), процессор должен определить источник запроса прерываний. И, наконец, затем перейти к самой процедуре прерываний, конкретной для данного прерывания. По завершению обработки прерывания процессор должен восстановить состояние ресурсов, соответствующее прерванной программе, после чего она может быть продолжена. Следует отметить, что для сохранения всех требуемых ресурсов, поиска источника прерывания и перехода к процедуре обработки прерывания процессор должен затратить вполне определенное время. Это время называется скрытым временем прерывания. Чем меньше скрытое время прерывания, тем выше скорость реакции системы на внешние события и тем выше производительность системы. Во многом это определяется системой прерывания процессора и она является одной из основных особенностей архитектуры контроллера.

Под системой прерываний мы будем понимать совокупность аппаратных и программных средств, реализующих механизм прерываний в микроконтроллере. Хотя существуют большое множество различных вариантов построения систем прерываний, тем не менее, можно выделить несколько основных способов организации систем прерываний. Они отличаются между собой объемом аппаратных средств, необходимых для реализации такой системы и соответственно имеют различное быстродействие. Рассмотрим эти варианты.