Научная статья на тему '32-разрядные микроконтроллеры AT91SAM7S с интерфейсом USB производства компании Atmel'

32-разрядные микроконтроллеры AT91SAM7S с интерфейсом USB производства компании Atmel Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
624
124
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Курилин Алексей

До конца 2004 года компанией Atmel выпускалось более 10 наименований 32-разрядных микроконтроллеров, построенных на базе ядер ARM7TDMI и ARM920T. Наличие высокопроизводительного ядра и развитой периферии, достаточных для выполнения широкого круга задач, тем не менее, не способствовало широкому распространению этих кристаллов.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «32-разрядные микроконтроллеры AT91SAM7S с интерфейсом USB производства компании Atmel»

128

www.finestreet.ru

компоненты

микроконтроллеры

32-разрядные микроконтроллеры AT91SAM7S с интерфейсом USB

производства компании Atmel

Алексей КУРИЛИН

[email protected]

Данный обзор посвящен новинке на рынке микроконтроллеров — 32-разрядным кристаллам АТ91БАМ78 семейства БтаггАРМ.

До конца 2004 года компанией Atmel выпускалось более десятка наименований 32-разрядных микроконтроллеров, построенных на базе ядер ARM7TDMI и ARM920T. Наличие высокопроизводительного ядра и развитой периферии, достаточных для выполнения широкого круга задач, тем не менее, не способствовало широкому распространению этих кристаллов. Причины были разные: либо отсутствие интегрированной на кристалле оперативной и Flash-памяти, либо недостаточная пропускная способность шины внешней памяти данных

ARM7TDMI

Core

Advanced

Interrupt

Controller

32-bit К

ASB г

АМВА Bridge

On-chip

SRAM

On-chip

FLASH 32К 64К 128К 256К

SRAM 8К 16К 32К 64К

Рис. 1. Упрощенная схема архитектуры микроконтроллеров SmartARM

и программ, либо неудобные для пайки «вручную» BGA-корпуса. Для некоторых разработчиков «барьером» была высокая стоимость средств разработки и отсутствие базовых примеров программ.

В 2004 году компания Atmel объявила о развитии нового направления 32-разрядных платформ, в которое были заложены следующие основные особенности (рис. 1):

• высокопроизводительное 32-разрядное ядро ARM7TDMI;

• внутренняя Flash-память на 32-разрядной системной шине;

• внутреннее ОЗУ на 32-разрядной системной шине;

• подходящие для пайки «вручную» корпуса TQFP;

• дешевые средства разработки и программирования.

Семейство микроконтроллеров этого направления было названо SmartARM (префикс в наименовании микросхем — AT91SAM7). В начале 2005 года начали появляться первые представители этого семейства — микроконтроллеры линейки AT91SAM7S с интерфейсом USB и AT91SAM7A (SAM7A1 и SAM7A2) с интерфейсом CAN. До конца 2005 года ожидается появление еще одной линейки — с интерфейсом Ethernet (AT91SAM7X) (табл. 1).

Первые микроконтроллеры линейки AT91SAM7A (AT91SAM7A1 и AT91SAM7A2)

не содержат Flash-памяти, поэтому до появления микроконтроллера AT91SAM7A3 эта серия не вызывала большого интереса у разработчиков.

С микроконтроллерами серии AT91SAM7S получилась обратная ситуация: еще не успев начать серийный выпуск микросхем, компания Atmel получила очень много заказов на эти устройства, а первые серийные партии были раскуплены до прихода на склад поставщиков. На сегодняшний день можно сказать, что серийный выпуск AT91SAM7S состоялся, и их можно смело закладывать в новые проекты.

Микроконтроллеры серии AT91SAM7S с интерфейсом USB

Микроконтроллеры серии AT91SAM7S разработаны под любую задачу, где требуется привычный набор возможностей микроконтроллера, но либо производительности 8-разрядной платформы уже не хватает, либо требуется заложить большой запас производительности на будущее.

Основные особенности AT91SAM7S:

• выпускаются в корпусах TQFP с небольшим (44, 64) количеством выводов;

• имеют интегрированный контроллер интерфейса USB 2.0 (full speed);

Таблица 1. 32-разрядные микроконтроллеры SmartARM (AT91)

AT91 Ядро ARM7TDMI Макс. производительность (МГц) Объем ОЗУ (КБ) Объем Flash-памяти (КБ) Загрузочная ROM (КБ) Интерфейс SDRAM Каналов USART Каналов SPI Каналов TWI Каналов SSC Каналов PDC Интерфейс MCI Каналов CAN Интерфейс USB Каналов Ethernet Количество 16-битных таймеров Каналов ШИМ Системный таймер Сторожевой таймер Каналов 10-разрядного АЦП Схема сброса при включении питания Блок контроля питания (BOD) Встроенный RC-генератор Линий с повышенным током нагрузки Линий ввода/вывода Напряжение питания(В) Корпус

SAM7A1 X 40 4K EBI - - 3 1 - - 11 - 1 - - 9 4 - + 8 - - - - 49 3,0-5,0 QFP144

SAM7A2 X 30 16K EBI - - 2 1 - - 10 - 4 - - 10 4 - + 16 - - - - 57 3,0-5,5 QFP176

SAM7A3 X 60 32K 256K - - 3 1 2 19 + 2 + - 9 8 + - 16 + - + - 62 3,0-3,6 QFP100

SAM7S32 X 55 8K 32K - - 1 1 1 1 11 - - - - 3 4 + - 4 + + + 4 32 3,0-3,6 QFP48

SAM7S64 X 55 16K 64K - - 2 1 1 1 11 - - + - 3 4 + - 8 + + + 4 39 3,0-3,6 QFP64

SAM7S128 X 55 32K 128K - - 2 1 1 1 11 - - + - 3 4 + - 8 + + + 4 39 3,0-3,6 QFP64

SAM7S256 X 55 64K 256K - - 2 1 1 1 11 - - + - 3 4 + - 8 + + + 4 39 3,0-3,6 QFP64

SAM7X128 X 55 32K 128K - - 2 1 1 1 11 - - + 1 3 4 + - 8 + + + 4 60 3,0-3,6 QFP100

SAM7X256 X 55 64K 256K - - 2 1 1 1 11 - - + 1 3 4 + - 8 + + + 4 60 3,0-3,6 QFP100

SAM7X512 X 55 64K 512K - - 2 1 1 1 11 - - + 1 3 4 + - 8 + + + 4 60 3,0-3,6 QFP100

C140 X 36 16K EBI 1K + - 1 - - 6 - - - 2 3 - + + - - - - - 48 1,8/3,3 BGA256

микроконтроллеры

компоненты

129

Power

Management

Controller

JTAG

Crystal Osc.

On-Chip RC

PLL and Dividers

32-bit RISC ARM7TDMI core

Vectored

Interrupt

Controller

USB

SPI

1,8 Voltage Regulator

Integrated

SRAM

Reset

Controller

High-Speed

FLASH

Brown-Out

Detector

Programming

Interface

Peripheral

DMA

Controller

SSC

USART

TWI

Timers

PWM

Watchdog

10-bit ADC

High-Current

Pads

Рис. 2. Функциональные блоки микроконтроллеров AT91SAM7S

• стоимость сопоставима с 8-разрядными микроконтроллерами;

• поддержаны недорогими средствами разработки и примерами программ.

Таким образом, находясь в одинаковой

ценовой группе с большинством 8-разрядных микроконтроллеров, 32-разрядные микроконтроллеры AT91SAM7S позволяют выполнять более широкий круг задач.

Если сравнивать их с прочими 32-разрядными микроконтроллерами, предназначенными для аналогичной области применения, можно выделить высокую интеграцию блоков и компонентов на кристаллах AT91SAM7S. Примером показателя высокой интеграции является тот факт, что для «обвязки» микроконтроллера достаточно всего 20 внешних компонентов:

• стабилизатор на 3,3 В;

• 2 конденсатора и 1 резистор для фильтра ФАПЧ;

• 2 конденсатора и 1 кварц для высокочастотного тактового генератора;

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

• 13 развязывающих конденсаторов. Рассмотрим организацию и характеристики основных блоков AT91SAM7S (рис. 2).

Flash-память

AT91SAM7S снабжен контроллером Flash-памяти, который выполняет следующие функции:

• обеспечивает работу ядра с Flash-памятью;

• позволяет увеличить производительность процессорного ядра при использовании 16-разрядного набора команд Thumb;

• осуществляет функции чтения и записи данных в Flash-память, установки и снятия битов защиты блоков памяти от случайного и несанкционированного чтения и записи. Корпорации Atmel пока что не удалось

достичь высокого быстродействия Flash-памяти. На сегодняшний день быстродействие Flash-памяти является единственным «узким» местом на кристалле. Для решения этого недостатка производитель выработал рекомендации по увеличению производительности:

1. При выполнении из Flash-памяти программы, содержащей в основном 32-разрядные команды набора ARM, максимальной производительности можно достичь на тактовой частоте 30 МГц:

• до 27 MIPS с использованием набора команд ARM;

• до 21 MIPS c использованием набора команд Thumb.

2. При выполнении из Flash-памяти программы, содержащей в основном 16-разрядные команды набора Thumb, максимальной производительности можно достичь на тактовой частоте 50 МГц, но для этого необходимо использовать встроенную функцию кэширования второй 16-разрядной команды, полученной в результате чтения 32-разрядного слова. В результате, при выполнении второй команды образуется дополнительный цикл ожидания, позволяющий без программных задержек считывать данные из Flash-памяти. При использовании набора команд ARM необходимо программно добавлять цикл задержки. Этот способ позволяет получить следующие результаты:

• до 24 MIPS с использованием набора команд ARM;

• до 38 MIPS c использованием набора команд Thumb.

3. Максимальной производительности (50 MIPS) можно достичь, если дать команду процессору выполнять программу из ОЗУ, предварительно ее туда загрузив.

С точки зрения структуры содержимого Flash-память микроконтроллеров разбита на страницы по 128 байт и зоны по 4 кбайт. Чтение данных можно производить по словам, а запись — постранично.

Записанная во Flash-память программа может быть защищена от несанкционированного считывания или случайного стирания установкой Lock-битов, которые осуществляют защиту памяти по зонам. Этим процессом управляет контроллер Flash-памяти, который хранит данные для каждой зоны (например, объем Flash-памяти 64 кбайт раз-

бит на 16 зон, для каждой из которых можно установить индивидуальный бит защиты).

Функции стирания данных в незащищенной зоне можно производить постранично, после чего можно производить запись данных (время выполнения процедуры стирания-записи — 2 мс на одну страницу). Также поддерживается функция полного стирания всего содержимого Flash-памяти (выполняется за 10 мс).

С целью защиты интеллектуальной собственности — данных во Flash-памяти — предусмотрена функция запрета доступа к Flash-памяти (на чтение и запись) из «внешнего мира» по интерфейсам внутрисхемного программирования и интерфейсу FFPI (Fast Flash Programming Interface). Для этого предназначен бит Security Fuse, после установки которого доступ к содержимому Flash-памяти по интерфейсам внутрисхемного программирования и интерфейсу FFPI можно будет осуществить только после полного стирания данных с использованием внешнего вывода Erase.

С точки зрения записи программы во Flash-память существует несколько вариантов:

1. Параллельный режим программирования по интерфейсу FFPI с использованием параллельных (gang) программаторов.

2. Внутрисхемный последовательный режим программирования по интерфейсу JTAG с использованием внутрисхемных программаторов.

3. Внутрисхемный последовательный режим программирования с использованием имеющихся на кристалле интерфейсов USB либо DBGU (DeBuG Unit — UART с усеченными возможностями). В этом режиме принимает участие загрузчик SAM-BA, который позволяет производить запись программы внутрисхемно без использования программатора.

Периферийный контроллер прямого доступа к памяти (PDC)

Для обмена данными между оперативной памятью и периферией в микроконтроллеры AT91SAM7S включен периферийный контроллер PDC (Peripheral Data Controller), задача которого заключается в организации обмена данными между памятью и периферией без участия ядра микроконтроллера. Основные преимущества такой реализации заключаются в высвобождении вычислительных ресурсов микроконтроллера с возможностью организации непрерывной передачи данных, не прекращающейся при возникновении прерываний в системе и при остановке процессорного ядра.

Для организации обмена данными с имеющейся на кристалле периферией контроллер PDC имеет каналы для каждого периферийного узла. Для управления процессами передачи каждый периферийный узел содержит регистры контроллера PDC:

130

компоненты

микроконтроллеры

• автоинкрементируемый 32-битный указатель на текущий адрес памяти;

• автодекрементируемый 16-битный счетчик объема данных на передачу (максимальный объем передаваемых данных за одну сессию 64 кбайт);

• автоинкрементируемый 32-битный указатель на адрес памяти для следующего этапа передачи данных;

• автодекрементируемый 16-битный счетчик объема данных, необходимых для передачи на следующем этапе.

Контроллер позволяет организовать обмен

данными блоками по 8, 16 или 32 бита.

Коммуникационные последовательные интерфейсы

Для обмена данными с внешними устройствами в микроконтроллере предусмотрено 6 различных интерфейсов (рис. 3).

Следует отметить, что для обмена данными в AT91SAM7S предусмотрено два USART, обеспеченных линиями квитирования для гибкого контроля процесса передачи данных, а для вывода отладочной информации предусмотрен дополнительный UART (DBGU). Скорость обмена данными по USART достигает 30 Мбит/с в синхронном режиме и 6,87 Мбит/с в асинхронном.

Интерфейс SPI в микроконтроллерах AT91SAM7S может работать в двух режимах (master и slave), обеспечивая передачу данных на скоростях до 30 Мбит/с.

В отличие от традиционных 32-разрядных микроконтроллеров, у AT91SAM7S интерфейс SPI снабжен четырьмя линиями Chip Select, что позволяет организовать обмен данными в режиме master с четырьмя внешними устройствами, с каждым из которых микроконтроллер может устанавливать связь на заданной скорости и осуществлять обмен данными блоками по 8 или 16 бит.

Как и прочая периферия, интерфейс SPI может работать под управлением контроллера PDC.

Высокоскоростной интерфейс SPI

Режимы Master/Slave Работа с четырьмя slave'aMM Скорость до 30 МБит/с

Синхронный последовательный интерфейс (SSC)

Скорость до 12,7 МБит/с Поддержка l2S

Интерфейс USB 2.0 Full Speed

Скорость до 12 МБит/с

2 интерфейса ивАРТ

Режимы Синхр./Асинхр. Скорость до 30 Мбит/с (Синхр.)

Работа в низкоскоростных режимах для 1гЭА и 1507816 Линии квитирования

Отладочный интерфейс

овси

Дополнительный IIАКТ (асинхронный режим, без линий квитирования)

Поддерживается обмен данными через контроллер PDC

Рис. 3. Коммуникационные последовательные интерфейсы AT91SAM7S

Таблица 2. Поддерживаемые режимы работы UART

Параметр Значение

Бит данных 5,6,7,8 или 9

Стоповые биты 1, 1,5 или 2

Выбор порядка битов в байте (МБВДБВ) Да

Контроль четности Odd, Even, None, Mark, Space

Контроль ошибок Parity, Framing, Overrun, Break detection

Буферизация С использованием PDC (до 64 кбайт)

Интерфейс USB

Контроллер USB-интерфейса микроконтроллеров AT91SAM7S содержит интегрированный приемопередатчик, соответствующий спецификации шины USB 2.0 full-speed. Он имеет буфер FIFO объемом 328 байт и поддерживает организацию четырех каналов передачи данных, два из которых могут работать в режимах bulk, interrupt и control, а два других — в режимах bulk, isochronous и control.

VBUS

С_0603

С32

100nF

GND

USB—В—S—F—В—ТН 2

,П П

О

иго

J6

GND

USB_DP USB DM

С_0603 ф C1Q 16pF COG

GND

R_0603 R18

—ІШ—

R13

—QE—

C_0603 C33

__16pF COG

GND

C_0603

C18

33pF COG

Для работы интерфейса ШВ используется единая (с ядром) схема генерации и распределения тактового сигнала, что позволяет использовать один кварц для ядра и ШВ.

Как было сказано выше, микроконтроллерам АТ91вАМ7в характерна высокая степень интеграции, и еще одним показателем этого служит схема включения ШВ, требующая всего 6 внешних элементов (рис. 4, 5).

Помимо выполнения функции обмена данными интерфейс ШВ можно использовать и для питания микроконтроллера (а также всего устройства) с целью продления времени работы устройства в автономном режиме.

Аналогово-цифровой преобразователь

Микроконтроллеры АТ918АМ78 содержат 8-канальный аналогово-цифровой преобразователь (АЦП), который позволяет работать в двух режимах разрешающей способности — 8 и 10 бит. Максимальная частота дискретизации, обеспечиваемая АЦП, достигает 384 тыс. отсчетов в секунду (ksps). Как и прочая периферия, АЦП поддерживается PDC.

Рис. 4. Схема включения интерфейса USB

микроконтроллеры

компоненты

131

ADC CR (Control Register)

1 0

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

START

T

TIOA Channel 0

TIOA Channel 1

Программный запуск

Аппаратный запуск

Передний фронт на внешнем выводе ADTRG

У Запуск преобразования АЦП

/

TRGEN Bit

ADC MR (Mode Register)

TRGSEL

з\

TRGSEL TRGEN

Рис. 6. Схема запуска преобразования АЦП

Окончание преобразования (опрос либо по прерыванию)

Чтение результата преобразования на выбранном канале

ADC SR (Регистр статуса) 7 1

ЕОС7

ЕОС1

ЕОСО

ADC CDRx (Регистр результата на канале х)

9 1 0

Область результата преобразования

8-битный режим

10-битный режим

15 9 8

Чтение бита опережения | OVR7 OVR1 OVRO

Рис. 7. Схема чтения результата преобразования АЦП

Запуск преобразования может быть осуществлен программно и аппаратно (рис. 6).

По каждому сигналу запуска может выполняться как преобразование сигнала с одного канала (указанного в регистре ADC_CHER), так и последовательное преобразование сигналов с выбранных (указанных в регистре ADC_CHER) каналов. Помимо одиночных преобразований также поддерживается режим непрерывного преобразования сигнала с одного или нескольких каналов.

По окончании каждого преобразования результат может быть считан в заданном формате (рис. 7).

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

Питание АЦП осуществляется от 3,3-воль-товой линии питания VDDIN, и в момент преобразования ток потребления составляет 1 мА. Для снижения энергопотребления в период между преобразованиями в АЦП предусмотрен режим энергосбережения (sleep

mode), ток потребления АЦП в котором не превышает 1 мкА.

В качестве источника опорного напряжения предполагается использование внешнего источника с напряжением от 2,6 В до значения VDDIN.

Широтно-импульсный модулятор (ШИМ, PWM)

Контроллер ШИМ микроконтроллеров AT91SAM7S включает четыре независимых

канала для генерации широтно-модулиро-ванных сигналов. На каждом канале можно устанавливать независимые значения частоты, скважности и полярности сигнала.

Блок ШИМ можно разбить на две части: контроллер блока ШИМ и модули каналов блока ШИМ.

Контроллер блока ШИМ выполняет функцию формирования и распределения набора тактовых сигналов, включающих два независимых тактовых сигнала clkA и clkB, а также набор сигналов, равных системной тактовой частоте, деленной на число, кратное 2п (где п — целое число от 1 до 10). Каждый из сформированных сигналов может быть использован для работы любого канала ШИМ. Помимо функции распределения тактовой частоты контроллер блока ШИМ выполняет функцию включения и выключения модулей каналов, разрешения и запрещения прерываний от модулей каналов.

Модули каналов ШИМ выполняют выбор источников тактового сигнала, выбор режима работы канала (выравнивание импульсов по левому краю, правому краю и по центру), управление параметрами частоты и скважности сигнала, осуществляют счет импульсов. Для всех модулей каналов блока ШИМ предусмотрен общий регистр (PWM_CUPD), позволяющий производить синхронное изменение формы выходных сигналов в соответствии с новыми установками. Для формирования сигналов на разных каналах без взаимного перекрытия предусмотрена возможность синхронизации выходных сигналов (рис. 8).

Выходные сигналы ШИМ в режиме PIOA (в микроконтроллере предусмотрено два режима включения периферии на внешние выводы — PIOA и PIOB) мультиплексированы с внешними выводами PA0, PA1 и PA2, имеющими удвоенную нагрузочную способность, что позволяет осуществлять подключение внешних цепей с током нагрузки до 16 мА.

Энергопотребление

Параметры энергопотребления в микроконтроллерах AT91SAM7S регулируются встроенным контроллером управления питанием (Power Management Controller, PMC), выполняющим следующие функции:

• распределение тактовой частоты на ядро

и периферийные модули;

132

компоненты

микроконтроллеры

• управление значениями частот;

• вывод тактовой частоты к внешним блокам (линии РСК).

Главным достоинством контроллера управления питанием является возможность гибкого управления характеристиками энергопотребления при различных конфигурациях рабочей частоты ядра и периферии. В качестве примеров можно привести следующие значения:

• 32 мА — тактовая частота периферии

и ядра 55 МГц, вся периферия включена;

• 21 мА — вся периферия остановлена, тактовая частота ядра 55 МГц;

• 11 мА — ядро остановлено, тактовая частота периферии 55 МГц, вся периферия включена;

• 36 мкА — работа от внутреннего RC-генератора на частоте 32 кГц, периферия остановлена;

• 2,7 мкА — работа от внутреннего RC-генератора на частоте 500 Гц (максимальные значения делителей), периферия остановлена.

Блок управления тактовыми частотами позволяет также выключать неиспользуемую периферию на различные промежутки времени (рис. 9).

Как видно из схемы на рис. 9, источником тактовой частоты может быть внутренний RC-генератор, либо кварцевый генератор. При работе от внутреннего RC-генератора тактовая частота может варьироваться в пределах от 22 до 42 кГц. Для внешнего высокочастотного генератора может быть использован кварцевый резонатор с частотой от 3 до 20 МГц. При использовании кварца с частотой менее 8 МГц необходимо подключить последовательно в цепь ХОИТ резистор сопротивлением 1 кОм.

Для повышения тактовой частоты (вплоть до 220 МГц), контроллер управления питанием содержит блок ФАПЧ, частота выходного сигнала которого задается параметрами внешнего фильтра (рис. 10). Для расчета но-

миналов элементов фильтра можно использовать программу PLL Filter Calculator, распространяемую свободно.

Одной из важных возможностей контроллера управления питанием является функция автоматического переключения на работу от RC-генератора как источника тактовой частоты в случае отказа внешнего высокочастотного тактового генератора. Эта функциональность может быть использована, например, для сохранения важной информации и извещения о критической ситуации.

Средства поддержки разработок

Основным стартовым набором для микроконтроллеров AT91SAM7S является набор AT91SAM7S64-IAR, в состав которого входят целевая плата с распаянным микроконтроллером AT91SAM7S64, внутрисхемный эмулятор J-LINK (производство SEGGER Microcontroller Systeme GmbH), 2 кабеля USB (A-B). Также в набор включено программное обеспечение — оценочная версия компилятора IAR (с ограничением на объем генерируемого бинарного кода в 32 кбайт). Набор также содержит CD с документацией, руководствами по применению и примерами программ. Стоимость такого набора составляет $295.

В качестве альтернативы можно приобрести еще более дешевую версию (около $165) — набор AT91SAM7S-EK, включающий целевую плату с распаянным микроконтроллером AT91SAM7S256, 1 кабель USB (A-B) и диск с документацией. Для начинающих разработчиков рекомендуется использовать AT91SAM7S64-IAR, включающий полный набор необходимого аппаратного и программного обеспечения.

Основой обоих наборов является целевая плата (рис. 11), на которую может быть распаян любой кристалл серии AT91SAM7S (есть дополнительная посадочная площадка для микроконтроллера AT91SAM7S32 в корпусе TQFP48).

Вся система построена таким образом, что запуск платы может быть выполнен за считанные минуты — имеется руководство по быстрому старту (Getting Started), где описана последовательность включения «железа», установки программного обеспечения, запуска демонстрационного проекта.

В качестве основного источника документации предлагается веб-сайт www.at91.com. Сайт регулярно обновляется и пополняется последними версиями документации на кристаллы, содержит описания и руководства на стартовые наборы, руководства по быстрому старту, библиотеки и примеры про-

Analog

Inputs

RS232 RS232

Driver Driver

User Pushbuttons

UART

VDDCORE

AT91SAM7SXXX

VDDOUT

-12 В DC Input

CH

3,3 в

Crystal

Extension Slot

Power 5 В USB Device ICE Debug Port

Supply

Рис. 11. Функциональная схема и внешний вид целевой платы стартовых наборов ДТ913ДМ7364-!ДР и ДТ913ДМ73-ЕК

микроконтроллеры компоненты

Flash, кБ 2048

1024

512

256

128

64

32

[ Выпуск в 2006 году ]

SAM7A6

SAM7S512

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

SAM7SES12

SAM7X512

SAM7A5

SAM7SE256

SAM7L256

SAM7X256

SAM7A3

SAM7L128

SAM7X128

SAM7A4

Малое Интерфейс Драйвер Интерфейс Интерфейс

количество внешней ЖКИ Ethernet CAN

выводов шины

Рис. 12. План развития микроконтроллеров SmartARM

грамм для различных программных средств разработки, программное обеспечение для работы с «железом».

При последующем серийном выпуске изделий на базе AT91SAM7S для программирования Flash-памяти микроконтроллера в системе можно использовать как имеющийся в комплекте внутрисхемный эмулятор J-Link, так и любой другой программатор из списка приведенных на сайте www.at91.com в разделе Third Party.

Приведенные на сайте программаторы загружают программу в микроконтроллер по интерфейсам JTAG (внутрисхемные программаторы) или FFPI (параллельные программаторы). Можно также обходиться без программаторов, используя имеющийся на кристалле загрузчик SAM-BA (Smart ARM Boot Assistance), описание работы с которым находится на сайте www.at91.com в разделе Getting Started.

В качестве программных средств разработки корпорация Atmel рекомендует использование компилятора IAR Embedded Workbench (www.iar.com) для написания программ на языке ассемблера или Си. Основными документами, которыми рекомендуется пользоваться при разработке программного обеспечения в среде IAR, являются базовые примеры программ (www.at91.com) и встроенные файлы справки компилятора, включающие практические руководства по использованию средств и инструментариев среды разработки IAR, руководство по эффективному программированию на Си, описание системы команд и формата команд ARM-ассемблера.

Альтернативой компилятору IAR является популярный в среде разработчиков пакет Multi2000 от компании GreenHills

(www.ghs.com). Список прочих средств разработки приведен на сайте www.at91.com.

Для решения задач распараллеливания процессов предлагаются операционные системы реального времени. Самой популярной на сегодняшний день является Micrium uC/OS-II (www.micrium.com). Также доступна бесплатная операционная система Open Source FreeRTOS (www.freertos.org).

Заключение

Поддержанные доступным программным обеспечением и недорогими стартовыми наборами, микросхемы семейства SmartARM начинают активно внедряться в новые разработки. Хотя архитектура ARM уже давно была «обкатана» многими производителями, в том числе и Atmel, разработчики ждали чего-то более дешевого и понятного. На сегодняшний день многие из них признают, что ожидания оправдались в микросхемах серии AT91SAM7S.

Следует отметить, что Atmel планирует и в дальнейшем активно развивать направление SmartARM (рис. 12).

Функциональность микроконтроллеров AT91SAM7S будет расширяться путем введения дополнительных блоков. Так, в ближайшем будущем ожидается выпуск микроконтроллеров с интерфейсом Ethernet. Также планируется выпуск кристаллов с интерфейсом внешней шины (EBI), а в дальнейшем — с драйвером ЖКИ. Что касается микроконтроллеров с интерфейсом CAN, то после выпуска AT91SAM7A3 с Flash-памятью объемом 256 кбайт запланирован выпуск микроконтроллеров с увеличенным и уменьшенным объемами памяти. ■

i Надоели баннеры? Вы всегда можете отключить рекламу.