Адаптердля микроконтроллеров avr к программатору NM9215

December 10, 2010 by admin Комментировать »

набор NM9216/1

Микроконтроллеры фирмы Atmel имеют удачное сочетание цены и функциональности. Благодаря этому они широко распространены на 1говарном рынке. Перед применением микроконтроллеров в той или иной конструкции им необходимо «указать», что и как «делать». Для Радиолюбителей, которые еще никогда не сталкивались с микроконт- Шоллерной техникой, наверное, стоит сказать об этом пару слов.

Любой микроконтроллер является как бы миниатюрным компь- , ютером. Когда вы включаете компьютер, он начинает загружаться, и Ьерез некоторое время уже полностью готов к работе. При этом про­фессор компьютера отрабатывает определенный алгоритм, выполняя последовательно некоторую серию команд и обмениваясь информаци­ей с периферийными по отношению к нему устройствами. В результа­те этого процессор настраивает компьютер, подготавливая его к нор- >мальной работе. Так и микропроцессор выполняет некоторую про­грамму, предназначенную для выполнения определенной задачи.

Для записи программы в микроконтроллер и предназначены набо­ры МАСТЕР КИТ серии NM9216. Для этого потребуется базовый блок (набор NM9215), связывающий компьютер с адаптером (серия , наборов NM9216), рассчитанным на определенный тип микросхем.

МАСТЕР КИТ предлагает использовать набор NM9216/1 для про­граммирования микроконтроллеров фирмы Atmel.

Краткое описание адаптера для микроконтроллеров AVR

Адаптер для микроконтроллеров AVR предназначен для работы с " микроконтроллерами фирмы Atmel следующих типов:

AT90S2323, Tiny 12 (DDI);

AT90S1200, AT90S2313 (DD2);

AT89Sxxxx, AT90S8515, AT90S4414 (DD3);

AT90S8535, AT90S4434 (DD4);

AT90S4433, AT90S2233 (DD5).

Обозначениям DD1…DD5 соответствуют типы колодок, каждая из которых предназначена для подключения и программирования опре­деленного типа микросхем.

Внешний вид собранной платы адаптера и его монтажная схема по­казаны на Рис. 1 и Рис. 2.

Рис. 1. Внешний вид адаптера для микроконтроллеров AVR

 

Рис. 2. Расположение элементов на плате адаптера для микроконтроллеров

AVR

К разъему ХР1 подключается 10-контактный интерфейсный 1лейф для соединения с базовым блоком NM9215. Джампер JMP1 ус- Ьнавливается в положениях 1—2 или 2—3 в зависимости от полярнос­ти сигнала сброса Reset программируемого микроконтроллера. На Ьдате предусмотрено место под установку штыревых контактов ISP-интерфейса.

Некоторые сведения и сравнительные характеристики микроконтроллеров фирмы Atmel

Семейство микроконтроллеров AVR фирмы Atmel имеет много об­щих аппаратных черт с популярным на сегодняшний день семейством MCS-51. Но, построенные в соответствии с принципами Гарвардской Ьхитектуры, они обеспечивают на порядок более высокую производи­тельность при меньшем энергопотреблении. Выполнение машинных инструкций в них основывается на конвейерном принципе: во время Выполнения первой инструкции следующая считывается из програм­мной памяти.

I Семейство микроконтроллеров AVR так же популярно, как и се­мейство MCS-51. Тем более что фирма Atmel и ряд других фирм сво­бодно распространяют не только техническую информацию об этих икросхемах, но и средства отладки, макроассемблеры и даже Си-ком- иляторы.

В рамках единой базовой архитектуры AVR-микроконтроллеры И>ирмы ATMEL подразделяются на три семейства:

Classic AVR — базовая линия микроконтроллеров;

Tiny AVR — низкостоимостные микроконтроллеры с 8 выводами;

Mega AVR — микроконтроллеры для сложных приложений, требу­ющих большого объема памяти программ и данных.

Микроконтроллеры семейства Classic имеют следующие основные характеристики:

FLASH-память программ объемом от 1 до 8 Кбайт (число циклов стирания/записи не менее 1000);

память данных на основе статического ОЗУ (SRAM) объемом до 512 байт;

память данных на основе ЭСППЗУ (EEPROM) объемом от 64 до 512 байт (число циклов стирания/записи не менее 100000).

SRAM — аббревеатура от Static Random Access Memory означает: статическое запоминающее устройство с произвольной выборкой, ста­тическое ОЗУ.

EEPROM — аббревеатура от Electrically Erasable Programmable Read-Only Memory означает: электрически-стираемое программируе­мое постоянное запоминающее устройство (ЭСППЗУ).

Микроконтроллеры семейства Tiny имеют следующие основные характеристики:

FLASH-память программ объемом от 1 до 2 Кбайт (число циклов стирания/записи не менее 1000);

оперативная память (статическое ОЗУ) объемом от 1 до 2 Кбайт:

память данных на основе ЭСППЗУ (EEPROM) объемом до 64 байт (число циклов стирания/записи не менее 100000);

некоторые модели микроконтроллеров могут работать при пони­женном до 1.8 В напряжении питания.

Микроконтроллеры семейства Mega имеют следующие основные характеристики:

FLASH-память программ объемом от 8 до 128 Кбайт (число циклов стирания/записи не менее 1000);

оперативная память (статическое ОЗУ) объемом от 1 до 4 Кбайт;

память данных на основе ЭСППЗУ (EEPROM) объемом от 512 байт до 4 Кбайт (число циклов стирания/записи не менее 100000);

возможность самопрограммирования;

возможность внутрисхемной отладки в соответствии со стандартом IEEE 1149.1;

наличие BOD (сокр. от Brown-Out Detector — детектор снижения напряжения питания);

возможность программного снижения частоты тактового генерато­ра (не во всех моделях).

Далее рассмотрены некоторые характеристики тех моделей микро­контроллеров, которые можно программировать с помощью програм­матора NM9215 и адаптера NM9216/1.

Микроконтроллер Tinyl 2

Микроконтроллер Tiny 12 самый простой микроконтроллер се­мейства AVR (проще только Tinyl 1). Это восьмиразрядный микро­контроллер, построенный по КМОП-технологии. Выполнение машин­ных инструкций происходит за один цикл.

Tinyl2 имеет энергонезависимую память программ и память дан­ных. Объем памяти программ всего 1 Кбайт, что недостаточно для на­писания мало-мальски серьезной программы. Зато их необязательно программировать на специальном программаторе. Сделать это можно непосредственно в самом изделии через предназначенный для этого узел — ISP-интерфейс (при этом необходимо подать на микроконтро.т лер некоторые управляющие сигналы). Tinyl2 относятся к классу

Жпсроконтроллеров с внутрисистемным программированием. Он име- еТ 64 байта репрограммируемой памяти данных (до 100 тысяч циклов Ияпись/стирание» ), которая также может быть запрограммирована Ьутрисистемно. Память программ и память данных снабжены блоки- Ирвкой от несанкционированного доступа, предотвращающей про­смотр их содержимого.

К Микроконтроллер Tiny 12 способен обрабатывать как внешние, так ^Ьнутренние прерывания. Внутреннее прерывание может быть вызва­но аппаратно встроенным в Tiny 12 таймером, либо программируемым ^Ёльзователем — сторожевым таймером WatchDog Timer (WDT), при­данным уберечь микросхему от «зависания». Кроме того, WDT имеет ^Кственный генератор, способный функционировать независимо от «новного тактового генератора.

Г Tiny 12 имеет два программно выбираемых режима пониженного Жергопотребления: «Idle Mode» и «Power-down Mode». Во время ак- ^пации режима «Idle Mode» основные узлы микроконтроллера «за­глаживаются», что и приводит к значительному снижению потребля­емой микросхемой энергии. Однако таймер-счетчик, WDT и система ^работки прерываний продолжают работать. Если Tinyl2 перешел в 1ежим «Power-down Mode», происходит «замораживание» тактового ^шератора поэтому блокируются все основные функции микроконт- Ишлера до ближайшего прерывания или аппаратного сброса. Однако в этом режиме содержание регистров Tiny 12 остается неизменным. Но Нже если микроконтроллер находится в одном из этих режимов, его Н)жно «разбудить», подав сигнал «wake-up».

К Микроконтроллер Tiny 12 хорош для создания устройств низкой и вредней сложности при минимальных аппаратных затратах.

Никроконтроллер AT90S2323

I Микроконтроллер AT90S2323 похож как функционально, так и ап- фатио на Tiny 12. Однако некоторые отличия у этих микроконтрол- Жров все-таки имеются. Прежде всего, при анализе блок-диаграммы Микропроцессора AT90S2323 можно обнаружить дополнительный Ьямоугольник, обозначаемый как SRAM. Так обозначают память, расположенную прямо на кристалле микросхемы [переводится как ?гатическя оперативная память (ОЗУ)]. Ее объем 128 байт, что для Итаюконтроллеров такого уровня очень даже неплохо. Наличие в •T90S2323 ОЗУ может значительно упростить жизнь программис- И-разработчика, поскольку теперь появилась возможность «быстрой •боты» с переменными, которые программно заносятся в SRAM. Кро­ме того, в отличие от перезаписываемой памяти данных EEPROM ata Memory, которая имеет конечное число циклов запись/стирание,

SRAM имеет бесконечно большое значение этого отношения. Поэтому использование ОЗУ — это значительный шаг вперед.

С другой стороны, у AT90S2323, в сравнении с Tinyl2, объем памя, ти программ и памяти данных EEPROM увеличена в два раза. Коди. чество команд, выполнение которых происходит всего за один мащИн_ ный цикл увеличена с 90 (Tinyl2) до 120. Не осталось без внимания и быстродействие. Микроконтроллер AT90S2323 способен нормально функционировать на частотах вплоть до 10 МГц! Однако микроконт­роллер AT90S2323 имеет всего 3 линии ввода/вывода данных против 6 в Tinyl2. Поэтому при разработке конструкций на основе AT90S2323 придется выбирать, что важнее: дополнительная память или число об­служиваемой внешней периферии.

В обоих микроконтроллерах имеется встроенный аналоговый ком­паратор, способный сравнивать два автономных сигнала на своем вхо­де и в зависимости от полученного результата формировать прерыва­ние. Следует отметить и то, что особенности программирования AT90S2323 практически не отличаются от Tinyl2.

Микроконтроллер AT90S1200

Микроконтроллер AT90S1200, в отличие от описанных выше, на­делен двумя независимыми портами ввода/вывода данных. Первый порт содержит восемь, а второй семь линий ввода/вывода общего на­значения, что делает его весьма привлекательным для работы с вне­шней периферией. Кроме того, AT90S1200 отличается количеством используемых команд — 89, то есть меньшим, чем у рассмотренных вы­ше микроконтроллеров (120). Конечно, этот факт наложит некоторые ограничения в плане создания управляющей программы, но количест­во линий ввода/вывода, поддержка возможности программирования на языках высокого уровня, отличающихся от Ассемблера большей на­глядностью и простотой, неплохое быстродействие (максимальная частота тактового генератора) и низкое энергопотребление могут иг­рать решающую роль при его выборе.

Микроконтроллер AT90S2313

Микроконтроллер AT90S2313 из рассмотренных вариантов наибо­лее совершенный. Поэтому рассмотрим его подробнее.

Количество машинных инструкций этого микроконтроллера 120. Память данных EEPROM имеет объем 128 байт. Содержимое опера* тивной памяти (RAM) уничтожается при отключении питания, но зато позволяет аналогично AT90S2323 увеличить скорость процесса обме* на данными между основными узлами микроконтроллера. Размерь’ RAM, EEPROM и памяти программ у AT90S2313 и AT90S2323 одпна*

Ввые. Одинаковы у них и рабочие частоты задающих тактовых гене- Второв, и число команд (машинных инструкций).

Г Однако микроконтроллер AT90S2313 имеет некоторые отличия. ^Ьедыдущие изделия снабжались только одним 8-разрядным тайме- ром. Поэтому программистам в разных задачах нередко приходилось Вкать решения с помощью программных ухищрений. В микроконт­роллере AT90S2313 схема пополнилась 16-разрядным многорежим- дым таймером, позволяющим без программных ухищрений програм- Вровать необходимые задержки и временные интервалы.

I И еще об одном нововведении в периферии микроконтроллера. Коме ISP-интерфейса, AT90S2313 снабжен полным программно-уп- Ивляемым последовательным дуплексным каналом UART. Это дало ^Ьможность разработчику организовать последовательный перифе- Жшный интерфейс, позволяющий довольно быстро производить сни­женный обмен информацией между контроллером и периферией или Нже между двумя контроллерами. Выходные порты микроконтролле- ра AT90S2313 (Port В и Port D) снабжены буферными каскадами и ^Х’обны выдерживать довольно мощную для микросхемы нагрузку Например, светодиодный дисплей, ток потребления которого может Входить до 20 мА).

Микроконтроллеры AT90S2333 и AT90S4433

I В микроконтроллерах AT90S2333 и AT90S4433 имеется встроен- ный 6-канальный 10-разрядный аналого-цифровой преобразователь ВЦП). Появилась возможность преобразовывать аналоговые сигналы  цифровой код по каждому из шести входных каналов! Используя ЦП этих микроконтроллеров не следует забывать об их невысокой ^шности преобразования аналога в цифру. Отдельно выполненные ^кросхемы АЦП могут обеспечить гораздо более низкую погреш- Всгь преобразования.

 В остальном микроконтроллеры AT90S2333 и AT90S4433 функци­онально мало чем отличаются от AT90S2313. Исключение составляет Вшь их периферия. Обратите внимание, разработчики делают боль­шой упор на развитие устройств периферии. И это не случайность, оскольку микроконтроллер с развитой периферией довольно удобно Ваптировать под конкретную конструкцию не только за счет увеличе­ния числа линий управления, но и функциональности используемого Микроконтроллера в целом. В доказательство выше сказанного в мик- Всхемах AT90S2333 и AT90S4433, помимо двунаправленных портов PhD, введен многофункциональный двунаправленный шестиразряд- Вш порт С. Помимо основной своей функции обмена данными, он мо- Нет быть программно настроен как приемник аналоговых сигналов, поступающих затем на АЦП. Так же как порты В и D, порт С снабжен буферным каскадом, дающим возможность работать с мощной свето­диодной нагрузкой непосредственно, без каких-либо согласующих то­ковых усилителей. Всего в AT90S2333 и AT90S4433 можно задейство­вать до 20 двунаправленных линий ввода/вывода.

Наличие SRAM дало возможность реализации стековой памяти которой отводится некоторая область в самой SRAM. В стек заносятся значения программного счетчика PC, которые соответствуют адресам программной памяти, сразу после которых микроконтроллер начинает обработку некоторого прерывания или выполнение подпрограммы Структуру стека легко понять, представив мысленно магазин автомата Калашникова. Мы помещаем туда патрон за патроном, пока не запол­ним весь магазин. При стрельбе магазин будет опустошаться в поряд­ке, обратном заполнению: первым вылетит тот патрон, который встав­лялся нами последним. И наоборот, последним вылетит самый пер­вый, помещенный в магазин патрон. Принцип действия любого стека в любом микроконтроллере, где он существует, ничем не отличается от приведенного выше примера.

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

За распределение адресов в стеке следит 8-разрядный указатель стека SP (stack pointer). Сам SP может быть программно доступен как для чтения его значения, так и для записи в него. Однако делать это на­до крайне осторожно, поскольку неправильная установка SP может привести к печальному результату.

Что касается SRAM, то все имеющиеся в распоряжении 128 байт па­мяти данных являются доступными посредством пяти различных режи­мов ее адресации, которые поддерживают микроконтроллеры AVR.

Основные отличия микроконтроллера AT90S2333 от AT90S4433 заключаются в том, что объем памяти программ, а также и EEPROM У AT90S2333 в два раза меньше, чем у AT90S4433, у которых они соот­ветственно 4 Кбайта и 256 байт.

Источники прерывания у микроконтроллеров AT90S2333 и AT90S4433 имеют уровни приоритета. Другими словами, если возника­ет ситуация, когда появляется сразу несколько запросов на прерывание- микроконтроллер выставляет их в очередь, в которой в первых рядах на обработку стоят прерывания с наивысшим уровнем приоритета. КаЖЛ(|С прерывание, грубо говоря, имеет свой адрес в адресном пространстве, по

ггорому они распределены. Адрес, соответствующий некоторому пре- ванию, называют его вектором. Самый младший адрес вектора пре- вания будет соответствовать самому высокому приоритету.

Микроконтроллер AT90S4414

| Микроконтроллер AT90S4414 позволяет создавать управляющую рограмму, объем которой может доходить до 4 Кбайт. Такой размер, Введенный под программную память, позволяет свободно писать до- Вугьно серьезные программы не только на Ассемблере, но и на языках Высокого уровня, например на Си. Количество машинных инструкций, И;пользуемых AT90S4414, достигает 120. Как и в предыдущих вариан­тах микроконтроллеров, память программ может заполняться внутри- Истемно, то есть когда микроконтроллер находится непосредственно Вке в самом устройстве (используя ISP-интерфейс).

| Объем репрограммируемой памяти EEPROM и оперативной памя­ти данных доведен до 256 байт, что, в свою очередь, положительно ска- Ллось как на размерах стека, так и на возможности расширения коли­чества используемых в программе переменных.

[ Увеличено число портов. К портам В, D и С добавился порт А, что Ививело к увеличеню числа линий ввода/вывода. Порт А представляет И>бой 8-разрядный двунаправленный порт ввода/вывода данных с воз- Ишностью подключения токовой нагрузки до 20 мА. Кроме того, при использовании внешней памяти данных (ERAM) он выполняет функ- Нию мультиплексной (комбинированной) шины адреса данных. Однако эрт А выдает только младшие 8 разрядов адреса. Старшие 8 разрядов И>являются синхронно с младшими на выходах порта С. В режиме рабо- ты микроконтроллера с SRAM он работает как 8-разрядный двунаправ­ленный порт ввода/вывода общего назначения с возможностью подклю- Иения мощной нагрузки (аналогично порту А). Порты В и D также -разрядные умощненные двунаправленные порты общего назначения, Которые могут функционировать и в других специфических режимах, Иоторые мы не будем рассматривать в рамках излагаемого материала.

Помимо последовательного интерфейса SPI, имеется последова­тельный программируемый интерфейс UART. Нельзя не упомянуть и о двух независимых многорежимных таймерах-счетчиках, снабженных Иаждый своим предделителем частоты. Причем разрядность этих пе- Ииферийных устройств различна: 8 и 16 разрядов.

Быстродействие микроконтроллера AT90S4414 довольно непло- feoe. Частота работы его тактового генератора может достигать 4 МГц. Интервал питающих напряжений, при которых изделие надежно фун­кционирует, 2.7…6 В в зависимости от выбранной частоты задающего генератора.

Микроконтроллер AT90S8515

Микроконтроллер серии AT90S8515 отличается от AT90S4414 на­личием в два раза больших по объему памяти программ, EEPROM. SRAM, функционально более универсальным 16-разрядным таймером и возможностью более гибкой настройки SPI-интерфейса, имеющего два режима работы: ведущий и ведомый.

Микроконтроллеры AT90S4434 и AT90S8535

Микроконтроллеры AT90S4434 и AT90S8535 очень схожи с AT90S4414 и AT90S8515. Они имеют одинаковое количество выпол­няемых в одном машинном цикле команд, число которых 120, одина­ковые объемы памяти программ, энергонезависимой и оперативной памяти данных. Но есть и отличия. Микроконтроллеры AT90S4434 и AT90S8535 оснащены 8-канальным 10-разрядным АЦП. В них имеют­ся два 8-разрядных и один 16-разрядный таймер. Кроме того, в AT90S4434 и AT90S8535 введен дополнительный генератор, который может служить источником тактовых импульсов для одного из ис­пользуемых таймеров независимо от основного тактового генератора микроконтроллера! Активация этого дополнительного генератора про­исходит программно с подключением кварцевого резонатора на 32768 Гц.

Если необходимо тактировать таймер внешним сигналом, то па входы, к которым был подключен кварц, должна быть подана последо­вательность прямоугольных импульсов с частотой не более 256 кГц, поскольку полоса пропускания буферного усилителя микроконтро. лера по этим входам составляет 0…256000 Гц.

Все порты микроконтроллеров AT90S4434 и AT90S8535, как и в микросхемах AT90S4414, AT90S8515, усилены буферными каскадал и по выходному току. Те же 32 программно управляемые двунаправлен­ные линии ввода/вывода. Но есть и отличия. Линии порта А програм­мно перенастраиваются в режим аналоговых входов, сигналы с кото­рых поступают в аналоговый мультиплексор. С его помощью можно коммутировать пришедшие на его вход сигналы с входом АЦП. Выво­ды порта С РС6 (OSC1) и PC7(OSC2), помимо своей основной задачи ввода/вывода данных, задействованы при активации режима работы таймера от дополнительного генератора.

И последнее. В микроконтроллерах AT90S4434 и AT90S8535, в от­личие от их предшественников, Sleep-режимов уже три вместо двух ос­новных Low Power Idle и Power Down. Для того чтобы были понятны ос­новные различия этих режимов, напомним, что во время Low Power Idle (режим холостого хода) происходит остановка центрального процессор-

Вдаго устройства, поскольку на него перестает подаваться сигнал с так- Иового генератора. Содержание внутреннего ОЗУ и регистров специаль­ных функций при этом остается неизменным. Выводы портов удержи­вают значения, которые были на них до перехода в режим холостого хода. На таймеры-счетчики, SPI-порт и схему прерывания продолжают по­ступать тактовые сигналы, а их работоспособность не нарушается.

Режим Power Down (выключенный режим питания) останавлива­ет генератор микроконтроллера. С остановкой синхрогенератора пре­вращается функционирование не только CPU, но и таймеров, SPI-nop- ‘ та и схемы прерываний. Однако содержимое основных регистров оста- Щется неизменным.

И наконец, последний режим Power Save. Когда он активирован, продолжает функционировать лишь таймерный генератор, позволя­ющий поддерживать в работоспособном состоянии таймер, в то время ^как остальные составляющие микроконтроллера находятся в спящем Вюжиме.

На этом закончим краткое рассмотрение микроконтроллеров AVR, 1с которыми можно работать, используя наборы NM9216/1 и NM9215.

Микроконтроллер AT89S53

Рассмотрим микроконтроллеры AT89S53 и AT89S8252, которые сегодня можно назвать предшественниками нового AVR-поколения.

Микроконтроллеры AT89S53 имеют ряд существенных отличий от семейства MCS-51. В их состав включено уже знакомое устройство SPI. Объем программной памяти уже составляет 12 Кбайт, a SRAM — 256 байт. Да и с таймерами все в порядке. У AT89S53 три 16-разряд­ных таймера. AT89S53 имеет в своем составе сторожевой таймер WDT, а количество возможных источников прерывания 9.

Микроконтроллеры AT89S53 имеют более высокую, чем у семей­ства MCS-51, нагрузочную способность выводов, позволяющую соеди­нять с каждым из них до шести стандартных TTL-выводов. Макси­мальный входной ток может достигать значения 10 мА, при этом сум­марный ток через выводы порта Р0 не должен превышать 26 мА, а через выводы остальных портов — 15 мА.

В микроконтроллере AT89S53, как и в MCS-51, реализовано два энергосберегающих режима: холостой ход (Idle) и отключение пита­ния (Power Down).

Выводы порта РЗ у AT89S53 выполняют те же альтернативные функции, что и в микроконтроллерах MCS-51: РЗ.О и Р3.1 обеспечива­ют работу последовательного порта, Р3.2 и РЗ.З принимают сигнал внешнего прерывания, Р3.4 и Р3.5 — входы таймеров-счетчиков 0 и 1 1 соответственно, Р3.6 и Р3.7 — стробы записи и чтения внешней памяти

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

Под выполнение альтернативных функций можно программно на­строить шесть из восьми выводов порта Р1. Выводы Р 1.0 и Р 1.1 обслу­живают третий таймер. Выводы с Р1.4 по Р1.7 обеспечивают работу SPI. Кроме того, на вывод Р1.4 подается сигнал выборки подчиненного устройства (Slave), с которым задающий контроллер (Master) будет вести обмен. Благодаря такому раскладу на основе AT89S53 можно строить двухпроцессорные системы.

Работа в режиме SPI обмен данными осуществляется в соответс твии с протоколом «ведущий/ведомый». Если AT89S53 работает как ведомый, то установка ведущим на его входе Р1.4 низкого уровня сооб щает ему об осуществлении обмена именно с ним. Единичный уровень Р1.4 соответственно исключает его из процесса обмена. Благодаря та­кой логике работы «master-slave», легко строить системы из двух и бо­лее микроконтроллеров.

При работе AT89S53 в качестве ведущего данные выводятся через линию Р1.5. По этой же линии ведомый принимает информацию. От­сюда название альтернативной функции линии Р1.5: MOSI (master data out, slave data in). Линия PI.6 выполняет обратные функции. Она работает на прием у ведущего и на передачу у ведомого. Его название MISO (master data in, slave data out).

И наконец, линия PI.7 используется для тактирования обмена. Тактовые сигналы вырабатываются ведущим устройством и от него передаются всем ведомым. У ведущего микроконтроллера Р1.7 являет­ся выходом тактирования, а у ведомых — входом.

Несколько слов о программировании AT89S53. Микроконтроллер допускает целых два режима программирования: с использованием 12- и 5- вольтового интерфейса. Однако если у АТ89С51/52/55 для дости жения подобной гибкости пришлось изготавливать различные версии изделий, допускающих работу только с одним из вышеперечисленных интерфейсов, то каждый из AT89S53 уже содержит в себе обе эти воз­можности. Режим параллельного программирования использует 12-вольтовый сигнал и схож с АТ89С51/52/55. Пятивольтовая загруз­ка, дающая возможность перепрограммирования микроконтроллера прямо в аппаратуре, использует для этого интерфейс SPI.

Микроконтроллер AT89S8252

Микроконтроллер AT89S8252 практически повторяет AT89S53. [Основное отличие его состоит в объеме разрешенной на кристалле па­мяти программ, равной 8 Кбайт, и в присутствии в нем Flash-памяти шанных 2 Кбайта (аналог EEPROM AVR), доступной в любой момент (программно. Количество циклов ее программирования увеличено, по сравнению с памятью программ MCS-51, практически на два порядка (до 100000 циклов стирания/записи), поскольку данные обновляются гораздо чаще самой программы. Энергонезависимая внешняя память 1на кристалле позволяет хранить константы, таблицы и другие данные, которые должны допускать возможность оперативного изменения в .процессе работы контроллера без потери их при выключении питания [микросхемы. С помощью такой памяти данных очень удобно реализо­вать хранение настроек пользователя в собранной конструкции даже при длительном отключении ее от источника питания. Использование резервной батарейки в подобном случае не требуется.

Нагрузочная способность портов AT89S8252 заметно уступает AT89S53.

При программировании AT89S8252 несколько отличается от AT89S53, так как он имеет два массива Flash-памяти: внутренняя па­мять программ и внешняя память программ. Оба режима программи­рования (12- и 5-вольтовый) допускают занесение информации как в ‘тот, так и в другой массив. Но если при последовательном программи­ровании эти массивы находятся в разных адресных пространствах и для каждого из них предусмотрен свой набор команд чтения/записи, то при параллельном программировании их адресное пространство едино! Иными словами, в последнем режиме пользователь как бы име­ет контроллер с 10-килобайтной внутренней памятью, подлежащей программированию, при этом первые восемь килобайт содержат коды программ и таблицы констант, а последние два килобайта — оператив­ные данные, которые могут изменяться самим контроллером в процес­се его работы.

В остальном микроконтроллеры AT89S8252 и AT89S53 схожи между собой.

Сборка адаптера для микроконтроллеров AVR

Перед сборкой адаптера для микроконтроллеров AVR вниматель­но ознакомьтесь с приведенными в начале этой книги рекомендациями по монтажу электронных схем. Это поможет избежать порчи печатной платы и отдельных элементов схемы. Перечень элементов набора при­веден в Табл. 1.

Таблица 1. Перечень элементов набора NM9216/1

Позиция

Характеристика

Наименование и/или примечание

Кол-во

С1…С5

0.1 мкФ

Конденсатор, 104 — маркировка

5

С6, С7

22 пФ

Конденсатор, 220 (22,22р) — маркировка

2

DDI

D1P-8

Колодка узкая

1

DD2

DIP-20

Колодка узкая

1

DD3.1)1)4

DIP-40

Колодка широкая

 

DD5

DIP-28

Колодка узкая

1

R1

ЮкОм

Коричневый, черный, оранжевый*

1

ZQ1

4.0 МГц

Кварцевый резонатор, короткий

1

JMP1

PLS-40

Разъем штыревой, 3 контакта

1

ХР1

PLS-40R

Разъем штыревой, угловой, 10 контактов

1

 

 

Перемычка съемная

1

А9216/1

74×56 мм

Плата печатная

1

* Цветовая маркировка на резисторе.

Места расположения элементов на плате адаптера для микроконт­роллеров AVR и линии его подключения к базовому блоку показаны на Рис. 2. Отформуйте выводы элементов, установите элементы на плату и припаяйте их выводы; при этом установите сначала малогаба­ритные, затем все остальные элементы. Собранную плату лучше раз­местить в подходящем корпусе, который защитит плату от внешних воздействий и придаст конструкции завершенный вид. Корпус можно подобрать в каталоге наборов МАСТЕР КИТ, помещенном в конце этой книги.

Перед самым первым включением собранного адаптера необходи­мо произвести визуальную проверку монтажа и установить перемычки JMP1 в нужное положение. Далее запустите необходимую интерфейс­ную программу и следуйте инструкции по работе с ней. Возникающие проблемы при сборке адаптера можно обсудить на конференции сайта http://www.masterkit.ru, а вопросы по работе адаптера можно задать по адресу: infomk@masterkit.ru.

Наборы NM9215 и NM9216/1, а также и другие наборы из каталога МАСТЕР КИТ можно приобрести в магазинах радиодеталей или на радиорынках.

Оставить комментарий

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