Поиск по сайту: |
|
По базе: |
|
Главная страница > Статьи > Микроконтроллеры |
|
||||||||||||||||||||||||||||||||||||||||||||
Микроконтроллеры MSP430 компании Texas Instruments c Flash-памятью.MSP430F11xx - это 16 -разрядный, RISC-архитектуры микроконтроллер со сверхнизким энергопотреблением и Flash-памятью программ. Семейство измерительных микроконтроллеров MSP430, компании Texas Instruments, наконец-то пополнилось микроконтроллерами с Flash-памятью программ. И здесь компания Texas Instruments оказалась впереди других компаний. Микроконтроллеры с Flash-памятью программ, компании Texas Instruments, имеют самое низкое энергопотребление в сравнении с микроконтроллерами других компаний. Благодаря применению Flash-памяти, появилась возможность модифицировать память программ, не снимая микроконтроллер с рабочей платы. Кроме того, микроконтроллеры с Flash-памятью значительно дешевле микроконтроллеров с EPROM-памятью программ. В таьлице 1 представлена таблица с основными характеристиками семейства микроконтроллеров MSP430F11xx. Как видно из таблицы микроконтроллеры семейства отличаются между собой объемом памяти данных и памяти программ. Есть некоторые различия в характеристиках таймера. Таблица 1. Основные характеристики семейства MSP430F11xx
Архитектура микроконтроллеров семейства MSP430F11xx Мощный 16-разрядный RISC-архитектуры процессор (CPU) выполняет инструкции за 1-2 машинных цикла. Шестнадцать 16-разрядных регистров располагаются в CPU, обеспечивая сокращенное время выполнения инструкций. Это уменьшает время выполнения операции регистр-регистр в одном цикле процессора. Четыре регистра (R0…R3) резервируются для использования в качестве счетчика команд, указателя вершины стека, регистра статуса и генератора констант. Остальные двенадцать регистров (R4…R15 ) - регистры общего назначения. Периферийные устройства подключаются к CPU, использующему шины адресов, данных и шины управления, и могут работать со всеми инструкциями для обработки памяти.
Рис.2 Архитектура MSP430F11xx Система команд обеспечивается мощным и легким в использования ассемблером. Система команд состоит из 51 инструкции с тремя форматами и семью адресными режимами. Рассмотрим назначение отдельных модулей, входящих в микроконтроллер MSP430F11xx. Модуль System Clock & Oscillator . Модуль SCO генерирует три частоты, используемые в микроконтроллере:
Модуль претерпел значительные изменения в сравнении с прежними микроконтроллерами MSP430. Внешний резонатор, подключаемый к выводам Xin и Xout ( генератор LFXT1), может иметь частоту резонанса от 32.768 kHz до 8 MHz. Вспомогательная частота ACLK получается делением частоты генератора LFXT1 на /1, /2, /4, /8 делителем DIVA. Делитель DIVA управляется программно. В состав модуля SCO введен генератор DC. Частота этого генератора задается либо внешним резистором, подключаемым к выводу P2.5, либо внутренними резисторами микроконтроллера, управляемыми программно. Диапазон частот генератора DC : от 100 kHz до 5 MHz. Импульсы генератора DC поступают на вход синтезатора частот ( DCO), управляемого программно. Импульсы с выхода синтезатора частот поступают на вход делителя частоты DIVM (режимы /1, /2, /4, /8, Off) . Импульсы с выхода делителя DIVM (управляемого программно) и есть MCLK. Аналогично формируется частотная последовательность SMCLK , но при помощи делителя DIVS. Благодаря перечисленным изменениям, возросла устойчивость системы и гибкость управления производительностью системы и режимами энергосбережения. Память данных (RAM) имеет объем 128-256 байт. Используется для хранения переменных и для организации стека. Программная память (FLASH) организована в виде сегментов объемом 512 байт. Число сегментов, 2 или 8, зависит от типа микроконтроллера. Сегменты могут модифицироваться индивидуально или всем блоком. В состав памяти входят два сегмента, называемых информационными. Модификация информационных сегментов аналогична основным. Модификация Flash-памяти осуществляется по протоколу JTAG. JTAG - это комплекс аппаратных и программных средств, благодаря которому осуществляется чтение, стирание и запись информации в программную Flash-память микроконтроллера. Для этого процесса используются выводы TDO(P1.7), TDI(P1.6), TMS(P1.5) и TCK(P1.4). Первичная функция модуля сторожевого таймера Watchdog (WDT) - выполнить управляемый системный перезапуск после того, как возник программный сбой. Если выбранный интервал времени истекает, WDT генерирует системный сброс. Если функция сторожевого таймера не нужна в приложении, модуль может работать как таймер интервала, который генерирует прерывание после истечении выбранного интервала времени. Счетчик сторожевого таймера (WDTCNT) 16-битовый, непосредственно не доступен из программы. WDTCNT управляется через управляющий регистр сторожевого таймера (WDTCTL), который является 16-битовым регистром. Запись в WDTCNT-регистр возможна при использовании правильного пароля в старшем байте. Младший байт загружает данные записанные в WDTCTL-регистре. Старший байт должен быть паролем - 05Ah. Если в старший байт WDTCTL-регистра будет записан байт отличный от 05Ah , то система сгенерирует программный перезапуск. Модуль Timer_A представляет собой 16-разрядный таймер/счетчик с тремя регистрами слежения/сравнения. Модуль UART - программный. Последовательная связь осуществляется использованием программного обеспечения и одного блока слежения/сравнения. Аппаратные средства поддерживает выход потока последовательных данных, с синхронизацией, определяемой таймером. Регистр слежения/сравнения генерирует прерывание, определив начало стартового импульса входной последовательности (старт-бит). Затем, по прерыванию генерируемому таймером, происходит выборка сигнала в середине каждого бита последовательности. Благодаря использованию системы прерываний, работа программы приема последовательности проходит в фоновом режиме. Модуль I/O Port P1 - 8 линий вход/выход и модуль I/O Port P2 - 6 линий вход/выход, т. е. в распоряжении пользователя имеется 14 линий ввод/вывод для работы с внешними устройствами. Все линии программно перестраиваются в режим вход или выход. Каждый порт имеет свой вектор прерывания. Режимы работы всех линий I/O программируются независимо друг от друга. Установку режимов работы цифровых линий портов I/O осуществляют, используя семь служебных регистров:
Идентификация сработавшего вектора прерывания осуществляется программно, чтением данных соответствующего регистра флагов порта. Идентификация сработавшего вектора прерывания осуществляется программно, чтением данных соответствующего регистра флагов порта. Модуль Comparator_A (только в микроконтроллерах MSP430F1101, MSP430F1121) значительно расширяет возможности микроконтроллера. Теперь модуль имеет два источника опорного напряжения - внутренний и внешний. При использовании внутреннего источника опорного напряжения, Uref выбирается из ряда 0 Vcc, 0.25 Vcc, 0.5 Vcc и Vcc, где Vcc - напряжение питания микроконтроллера. При использовании внешнего Uref , значение опорного напряжения определяет пользователь в диапазоне 0...Vcc. Появилась возможность работать практически со всеми типами датчиков. Напряжение, ток, резистивные или емкостные датчики - основная сфера применения модуля Comparator_A. Средства отладки программ для микроконтроллеров MSP430F11xx Для отладки программного обеспечения микроконтроллеров семейства MSP430F11xx компания Texas Instruments выпускает комплект MSP-FET430x11x. В комплект MSP-FET430x110 входят :
На рисунке 4 показан внешний вид макетной платы комплекта MSP-FET430X110 На рисунке 5 - расположение элементов на плате.
Рис.3 Макетная плата MSP-FET430X110
Рис.4 Расположение компонентов на плате На макетной плате MSP-FET430x110 установлены следующие компоненты :
Программное обеспечение KickStart, входящее в комплект MSP-FET430x110, разработано компанией IAR Systems. Программный пакет состоит из ассемблера, линкера (компоновщик), симулятора-отладчика, компилятора языка Си (ограниченная версия, длина скомпилированного файла не более 1KB). Пакет KickStart поддерживает протокол JTAG для записи программ в Flash-память микроконтроллера. KickStart позволяет создавать программы для микроконтроллеров MSP430 на ассемблере, Си или комбинации этих языков. Компилятор Си (ограниченная версия) не поддерживает математику с плавающей точкой компании Texas Instruments. На ассемблер эти ограничения не распространяются. На рисунке 8 показано окно симулятора-отладчика, служащего для написания и отладки программ на языке ассемблер. Программный пакет KickStart работает в среде Win95, Win98, WinNT.
Рис.5 Окно симулятора-отладчика из программного пакета KickStart Эффективное использование описанного набора для макетирования устройств на микроконтроллерах семейства MSP430F11xx предполагает:
Документация к пакету KickStart содержит подробное описание всех программ, входящих в пакет, множество примеров программ на ассемблере и Си, описание семейства микроконтроллеров MSP430F11xx в формате PDF. Это значительно облегчает использование пакета в практических приложениях. Программный пакет KickStart доступен для свободного использования (free) на сайте компании Texas Instruments : www.ti.com (размер файла 17MB). Краткие технические характеристики микроконтроллера MSP430F11xx:
Семейство состоит из следующих микроконтроллеров:
На рисунках 6 и 7 показано назначение выводов новых микроконтроллеров семейства MSP430F11xx с Flash-памятью. Кристалл микроконтроллера размещен в пластмассовом корпусе ( 20 выводов) с шагом выводов 1,27 мм (SOWB) или 0,625 мм (TSSOP), тип монтажного исполнения - SMD.
Рис.6 Микроконтроллер MSP430F11x
Рис.7 Микроконтроллер MSP430F11xx Пример использования микроконтроллера MSP430F11xx. На рисунке 8 показана схема регулятора оборотов электрической дрели, в которой использован микроконтроллер MSP430x111x. Вполне возможно применение микроконтроллера MSP430F1121, необходимо только снизить напряжение питания микроконтроллера до 3,6 вольт.
Рис.8 Регулятор оборотов однофазной дрели Алгоритм работы программы прост. По входу P1.3 микроконтроллер определяет момент перехода синусоиды через "0", используя регистр слежения/сравнения. Компоненты R8, R9 и C5 используются для реализации токового АЦП. Программа, манипулируя зарядом и разрядом конденсатора C5 при помощи выводов микроконтроллера P2.0, P2.1, P1.0 и резисторов R8 и R9, определяет положение движка резистора R8. Это и есть информация о необходимой частоте вращения двигателя дрели в данный момент. Имея информацию о переходе переменного напряжения через "0", а также информацию о позиции движка потенциометра R8, совсем просто рассчитать момент включения тиристора Т1 (вывод микроконтроллера P2.4) при частоте сети 50 Hz. Для генерации задержки на включения тиристора используется Timer_A. Главная - Микросхемы - DOC - ЖКИ - Источники питания - Электромеханика - Интерфейсы - Программы - Применения - Статьи |
|
Впервые? | Реклама на сайте | О проекте | Карта портала тел. редакции: +7 (995) 900 6254. e-mail:info@eust.ru ©1998-2023 Рынок Микроэлектроники |
|