Разделы
Публикации
Популярные
Новые
Главная » Классические однокристальные микроконтроллеры

1 ... 5 6 7 8 9 10 11 ... 20

Продолжение таблицы 1

Тип

ПЗУ, Кбайт

ОЗУ, байт

Таймеры-счетчики

Прерывания

Порты в/в

Тактовая частота, МГц

Рабочее напряжение

Температурный диапазон, °С

AT89C51-20JC

2*16 бит

IS, 4Р

4...6

0...70

АТ89С51-20РС

2*16 бит

IS, 4Р

4...6

0...70

AT89C51-20QC

2*16 бит

IS, 4Р

4...6

0...70

AT89C51-20AI

2*16 бит

IS, 4Р

4...6

-40...+85

44А

AT89C51-20JI

2*16 бит

IS, 4Р

4...6

-40...+85

AT89C51-20PI

2*16 бит

IS, 4Р

4...6

-40...+85

AT89C51-20Q1

2*16 бит

IS, 4Р

4...6

-40...+85

АТ89С51-24АС

2*16 бит

IS, 4Р

4,..6

0...70

44А

AT89C51-24JC

2*16 бит

IS, 4Р

4...6

0...70

АТ89С51-24РС

2*16 бит

1S, 4Р

4...6

0...70

AT89C51-24QC

2*16 бит

IS, 4Р

4...6

0...70

AT89C51-24AI

2*16 бит

1S, 4Р

4 .6

-40...+85

44А

AT89C51-24JI

2*16 бит

IS, 4Р

4...6

-40...+85

AT89C51-24PI

2*16 бит

IS, 4Р

4...6

-40...+85

AT89C51-24Q1

2*16 бит

IS, 4Р

4...6

-40...+85

AT89LV51-12AC

2*16 бит

1S, 4Р

2,7...6

0...70

44А

AT89LV51-12JC

2*16 бит

1S, 4Р

2,7...6

0...70

AT89LV51-12PC

2*16 бит

1S, 4Р

2,7...6

0...70

AT89LV51-12AI

2*16 бит

IS, 4Р

2,7...6

0...70

44А

AT89LV51-12JI

2*16 бит

1S, 4Р

2,7...6

-40...+85

AT89LV51-12PI

2*16 бит

IS, 4Р

2,7...6

0...70

АТ89С52-12АС

3*16 бит

1S, 4Р

4...6

0...70

44А

AT89C52-12JC

3*16 бит

IS, 4Р

4...6

-40...+85

АТ89С52-12РС

3*16 бит

IS, 4Р

4...6

-40...+85

AT89C52-12QC

3*16 бит

IS, 4Р

4...6

-40...+85

AT89C52-12AI

3*16 бит

1S, 4Р

4..,6

-40...+85

44А

AT89C52-12JI

3*16 бит

IS, 4Р

4...6

-40...+85

AT89C52-12PI

3*16 бит

1S, 4Р

4...6

-40...+85

AT89C52-12QI

3*16 бит

IS, 4Р

4...6

-40...+85

Продолжение таблицы 1

Тип

Таймеры-

Порты

Тактовая

Рабочее

Температурный

Кбайт

счетчики

в/в

частота, МГц

напряжение, В

диапазон, °С

АТ89С52-12JA

3*16 бит

1S, 4Р

4...6

-40...+125

АТ89С52-12РА

3*16 бит

1S, 4Р

4...6

-40...+125

АТ89С52-12QA

3*16 бит

IS, 4Р

4...6

-40...+125

AT89C52-12DM

3*16 бит

IS, 4Р

4,5...5,5

-55...+125

40D6

AT89C52-12LM

3*16 бит

1S, 4Р

4,5...5,5

-55...+125

АТ89С52-12DM/883

3*16 бит

IS, 4Р

4,5...5,5

-55...+125

40D6

АТ89С52-12LM/883

3*16 бит

IS, 4Р

4,5...5,5

-55...+125

АТ89С52-16АС

3*16 бит

IS, 4Р

4...6

0...70

44А

AT89C52-16JC

3*16 бит

IS, 4Р

4...6

0...70

АТ89С52-16РС

3*16 бит

1S, 4Р

4...6

0...70

AT89C52-16QC

3*16 бит

IS, 4Р

4...6

0...70

АТ89С52-16AI

3*16 бит

IS, 4Р

4...6

-40...+85

44А

AT89C52-16JI

3*16 бит

IS, 4Р

4...6

-40...+85

АТ89С52-16Р1

3*16 бит

IS, 4Р

4...6

-40...+85

40 Р6

AT89C52-16QI

3*16 бит

IS, 4Р

4...6

-40...+85

АТ89С52-16АА

3*16 бит

IS, 4Р

4...6

-40...+125

44А

AT89C52-16JA

3*16 бит

1S, 4Р

4...6

-40...+125

АТ89С52-16РА

3*16 бит

IS, 4Р

4...6

-40...+125

AT89C52-16QA

3*16 бит

1S, 4Р

4...6

-40...+125

АТ89С52-20АС

3*16 бит

IS, 4Р

4...6

0...70

44А

AT89C52-20JC

3*16 бит

1S, 4Р

4...6

0...70

АТ89С52-20РС

3*16 бит

IS, 4Р

4...6

0...70

40 Р6

AT89C52-20QC

3*16 бит

1S, 4Р

4...6

0...70

AT89C52-20AI

3*16 бит

IS, 4Р

4...6

-40...+85

44А

AT89C52-20JI

3*16 бит

1S, 4Р

4...6

-40...+85

AT89C52-20PI

3*16 бит

IS, 4Р

4...6

-40...+85

AT89C52-20Q1

3*16 бит

1S, 4Р

4...6

-40...+85

t \ 1 *ы/ > Лш W 1

АТ89С52-24АС

3*16 бит

IS, 4Р

4...6

0...70

44А

AT89C52-24JC

3*16 бит

IS, 4Р

4...6

0...70

AT89C52-24QC

3*16 бит

IS, 4Р

4...6

0...70



ш

о

5 Ш

со я о. Z

§ р

£ о п| га

о с

Р

ге т о

53 га О ю

О

>S 2

S ч g

о со, о

ф

я т ф 5

о. с

;Й - 3 3 I

JS >s I I

0 о ш m л J> CD Ш

о я 3 о Ъ q. ш о О 0-

rt -:t

Ч

CD iO

Q а о о

РО 1AD3) РО 4 (AD4)


.47 P0e!AD6)


If Issff

Рис. 1. Цоко.певка микроконтро.плеров AT89C51/52 и AT89LV.51/52

Б первую очередь необходигую отметить более высокую нагрузочную способность их выводов, позволяющую соединять с каждым из них до 6 стандартных TTL-входов. Максимальный входной ток может достигать 10 мА, при этом суммарный ток через выводы порта О не должен превышать 26 мА, а через выводы остальных портов- 15 мА. Максимальный суммарный ток через все выводы не должен быть более 71 мА. Напряжения на входах относительно общего провода должны лежать в диапазоне от -1 до +7 В, максимальное рабочее напряжение - 6,6 В. В режиме Power Down допустимо снижение напряжения до 2 В. Потребление АТ89С51/52 на частоте 12 МГц при напряжении питания 6 В не превышает 20 мА, в режи.ме Idle - 5 мА, в режиме Power Down - 100 мкА при напряжении 6 Б и 40 мкА при 3 В. Зависимость потребляемого тока от напряжения питания и частоты для AT89LV51/52 приведена на рис. 2.

В микроконтроллерах 8хС51 сигнал ALE генерируется с постоянной частотой, в 6 раз меньшей частоты осциллятора, исчезая л1Ш1ь при обращении к внешней памяти данных. В АТ89С51/52 возможно программно запретить выдачу этого сигнала, установив в единицу бит О SFR-регистра, находящегося по адресу 8Е. При этом сигнал ALE будет появляться лишь при выполнении команд МОУХ, MOVC (либо при работе с внешней памятью программ, если она имеется в вашей системе). В остальных случаях на выводе будет присутствовать напряжение высокого уровня. На AT89LV51/52 возможность подавления вывода сигнала ALE не распространяется.

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

о. га о >= с



Ice. мА

ATBSLVSI

т = +

25-С

Vcc =

вный ре

жим

В

I 4 8 12 16 20 24 Р.МГц 1СС, мА а)

AT89LV51

Т = +

25-С

Vcc =

Реж

1м Idle

В

I 4 8 12 16 20 24 Р.МГц tc. мкА б)

AT89LV51 Режим Pow6

т = +а5-с

rOoun

3 4 5 6

Ucc, В в)

Рис. 2. Зависимость потребляемого тока для AT89LV51 /52 от напряжения питания и частоты в активном режиме (а), режиме Idle (б) и Power Down (в)

ПРОГРАММИРОВАНИЕ АТ89С51/52 И AT89LV51/52

Контроллеры АТ89С51/52 выпускаются рассчитанными на программирование 5- или 12-вольтовыми импульсами. У первых из них вторая строчка маркировки на корпусе заканчивается на -5 , у вторых дефис с цифрой во второй строчке отсутствуют. Сигнатурные байты для первых следующие: (ОЗОН) - 1ЕН, (031Н) - 51Н, (032Н) - 05Н. Вторые отличаются содержимым байта: (032Н) - в нем записано не 05Н, а OFFH. AT89LV51/52 выпускаются только в расчете на программирование 12-вольтовыми импульсами. Их сигнатуры: (ОЗОН) - 1ЕН, (031Н) - 61Н, (032Н) -OFFH.

Изначально контроллеры поставляются потребителю с очищенным ПЗУ, т. е. все его ячейки содержат OFFH. В этом случае контроллер сразу готов к занесению в него информации. Иначе перед программированием необходимо осуществить цикл стирания. Для этого на его выводы необходимо подать сигналы в соответствии с табл. 2 и стереть информацию отрицательным импульсом длительностью не менее 10 мс, приложенным к выводу ALE/ PROG.

Цикл записи осуществляется следующим образом. На соответствующие входы портов Р1 и Р2 подается адресная информация, на входы РО - байт данных. Сигналы на остальных входах доллшы соответствовать табл. 2. Частота осциллятора не должна быть ниже 4 МГц (напомним, что изделия Atmel полностью статические, поэтому в обычном режиме нижнее значение рабочей частоты не оговаривается).

Таблица 2

Программирование АТ89С51/52 и AT89LV51/52

режим

PSEN

ALE/PROG

EA Л/рр

Стирание

Н

Н/12 В{*)

Н

Программирование ПЗУ

н

Н/12В{*)

Н

Н

н

Верификация ПЗУ

Н

Н

н

сигнатурных

н

Н

Установка бита защиты 1

н

Н/12ВП

Н

Н

Н

Н

Установка бита защиты 2

н

Н/12В{*)

Н

Н

Установка бита защиты 3

н

Н/12 В{*)

н

Примечания.

(*) - 12 В подается для 12-вольтовых версий

контроллеров, иначе необходимо 5 В

Н - высокий логический уровень, L - низкий

На рис. 3 и 4 приведены временные диаграммы сигналов циклов программирования и верификации как для 5-, так и для 12-вольтовых версий контроллеров. Отметим, что для корректной верификации выводы порта РО должны быть соединены с проводом питания через резисторы номиналом 10 кОм. Естественно, при установленных битах защиты верификация невозможна. Допустимые длительности импульсов и задержек приведены в табл. 3, схема включения микроконтроллеров при программировании - на рис. 5.

Р1.0-Р1.7, . Р2.0-Р2.4, РЗО

PORTO.

Адрес программирования -1(Адрес считывания

ALE/PROG .

EA/Upp-

Р2.7 (ENABLE) -

(RDY/Sr )

tENSH

Данные на запись

JAVGL

tSHGL

tDVGL iGHD >

tGLGH

GHAX

IGHSI

Лог.О ELQV -

- tAVQV

Счит. данные

tEHQZ

\ Занят /~

Рис. 3. Программирование и верификация 12-вольтовых версий АТ89С51/52 и AT89LV51/52



Р1.0-Р1.7, . Р2.0-Р2.4, РЗ.О

ALE/PROG . ЁА/Upp

(enable) -

p3.4-(rdy/bsy)

tENSH

Адрес программирования

Данные на запись yf

tAVGL

tDVGL tQHD >-

tcLGH

Лог. 0

tGHBL ->-

tGHAX

Адрес считывания )

tELQV -

- tAVQV

Счит. данные

tEHQZ

Занят

Рис. 4. Программирование и верификация 5-вольтовых версий АТ89С51/52 и AT89LV51/52

Отметим, что при программировании 12-вольтовых версий напряжение Vpp должно быть в диапазоне 11,5... 12,5 В, при этом ток, потребляемый контроллером по этому входу, не превышает 1 мА.

Импульс программирования на входе ALE/ PROG не программирует ПЗУ непосредственно, а лишь запускает внутреннюю схему программирования. Процесс занесения 1 байта занимает примерно 1,5 мс. Для того, чтобы программируюгцее устройство могло

Таблица 3

Временные характеристики циклов программирования и верификации

Параметр

Минимум

Максимум

Ед. ИЗМ

V (*)

Напряжение программирования

11,5

12,5

В

Ток программирования

1/tcLCL

Частота генерации

МГц

tAVGL

Время предустановки адреса

48*tcLCL

tcHAX

Время задержки адреса

48*tcLCL

toVGL

Время предустановки данных

48*tcLCL

tcHDX

Время задержки данных

48*tcLCL

♦ehsh

Время задержки установки Vpp относительно вывода Р2.7

48*tcLCL

tsHGL

Время задержки сигнала PROG

мкс

tGHSL(*)

Время задержки снятия Vpp

мкс

toLGH

Длительность PROG

мкс

Iavqv

Задержка считываемых данных относительно адреса

48*tcLCL

tELQV

Задержка данных относительно ENABLE

48*tcLCL

tEHQV

Удержание данных

48*tcLCL

tGHBL

Задержка установления BUSY

мкс

Длительность внутреннего цикла записи

Примечание. {*) - 12 В подается для 12-вольтовых версий контроллеров, иначе - 5 В 152

А0. А7 Адрес - (0000H-1FFFH) L А8...А12

В соотеетствии с табл.2

1 =Ьс

BQi -

4 24 МГц! I

Р20-Р24 Р2.6 РО Р2.7

Р3.6 > ALE

Р3.7 ю

XTAL2S БА <л го

RST XTAL1

GND PSEN

0+5B

PGM DATA

PROG - UH/Upp -UlH

A0...A7 Адрес I > (0000H-1FFFH1 l > A8...A12

В соответствии

с табл.2

BQi 4. ,24 МГц

Р1 Vcc

р2.0-р24 р2.6 ро

р3.6 > aleL-

р3.7 5 I

xtal2 о еа .-I <л го

xtal1

gnd psen

)+5 В

Верефицированные данные (выводы шины соединить с Ucc через резисторы сопротивлением 10 ком)

-UlH

рис. 5. Схема включения микроконтроллеров АТ89С51/52 и AT89LV51/52 при программировании

точно определить момент, когда закончился внутренний цикл программирования, Atmel предусмотрела так называемые режимы DATA Polling и Ready/Busy. Программирование и верификация 12-вольтовых версий АТ89С51/52 и AT89LV51/52. В первом случае после подачи импульса программирования на вход PROG рекомендуется считывать содержимое старшего бита записываемого байта (линия Р0.7) и сравнивать с тем, что было подано на запись. До тех пор, пока цикл внутренней записи не закончится, верификация бита Р0.7 будет давать ложный результат, и только после завершения записи считанное значение будет соответствовать записывавшемуся.

Егце одним индикатором окончания цикла внутренней записи может быть чтение состояния вывода Р3.4 микроконтроллера после импульса программирования. До тех пор, пока уровень сигнала на этом выходе будет низким, контроллер не готов к верификации и записи следуюгцего байта. Высокий уровень сигнала индицирует завершение внутреннего цикла записи и разрешает верификацию.

В остальном контроллеры АТ89С51/52 и AT89LV51/52 аналогичны своим Intel-прототипам.

АТ89С1051

Этот контроллер, полностью программно совместимый с семейством MCS-51, выпускается в 20-выводном DIP-корпусе (рис. 6). Последнее оказалось возможным вследствие отказа от использования линий портов РО и Р2 (а также Р3.6, о чем будет сказано ниже). АТ89С1051 содержит 1 кбайт электрически перепрограммируемого ПЗУ, 15 линий ввода/вывода, 64 байта внутреннего ОЗУ, один тай-



тов

мер-счетчик, три вектора прерываний и аналоговый компаратор. Поддерживаются режимы Idle и Power Down. Кроме того, выводы пор-сильноточные, допускающие прохождение через них тока вплоть до 20 мА, что позволяет их использовать для непосредственного управления светодиодными индикаторами (правда, суммарный ток через все линии порта не должен превышать 80 мА).

Допустимый диапазон питающих напряжений - от 2,7 до 6 В, потребляемый ток - не более 15 мА в активном режиме, 5 мА в режиме Idle и 100 мкА в режиме Power Down. Зависимость потребляемого тока от напряжения пита-

1 <

} 20

РЗ.О

). 19

PI.7

i> 18

PI.6

XTAL2

4 <

f 17

PI.5

XTAL1

l>

> 16

pi.4

(INTO) рз.г

> 15

P1.3

(INT1)P3.2

7 <

о о

PI.2

(Т0)Р3.4

8 <

> 13

Pl.l (AIN1)

> 12

Pl.O(AINO)

10 <

P3.7

Рис. 6. Цоколевка AT89C1051

Ice,

12 Р.МГц

Ice. mkA

Ucc, В в)

Ice. mA

AT89C10 Активны

51 T = + ti режим

85-C V

:c=6B

5B

AT89C1051 Т^+85С Vcc = 6 В

Режим Idle


AT89C1051 Режим Powe

T = +85C г Doun

Рис. 7. Зависимость потребляемого тока для AT89C1051 от напряжения питания и частоты в активном режиме (а), режиме Idle (б) и Power Down (в)

ния и частоты для АТ89С1051 приведена на рис. 7. Основные характеристики контроллеров этого типа приведены в табл. 4.

Выводы портов Р1.2-Р1.7 имеют внутренние нагрузочные резисторы. Р1.0иР1.1не имеют их и используются соответственно как положительный (AIN0) и отрицательный (AINl) входы встроенного прецизионного аналогового компаратора. Выход компаратора соединен с линией Р3.6, не выведенный наружу микроконтроллера. Линии порта Р3.2-Р3.4 выполняют альтернативные функции: Р3.2 - МГО, РЗ.З - МП, Р3.4 - ТО. Линии порта РЗ также снабжены внутренними нагрузочными резисторами.

Из стандартного для контроллеров семейства MCS-51 набора регистров SFR в АТ89С1051 присутствуют аккумулятор, регистры В, PSW, IP, IE, TCON, TMOD, TLO, THO, SP, PCON, DPTR, PI и РЗ. Инструкции LCALL, LJMP, ACALL, AJMP, SJMP, JMP@A+DPTR, CJNE, DJNZ, JB, JNB, JC, JNC, JBC, JZ, JNZ не должны в качестве адресов перехода (вызова подпрограмм) использовать адреса свыше 3FFH, т. к. контроллер не имеет средств выявления подобных ошибок.

АТ89С1051 имеет всего два бита защиты - LB1 и LB2. Установка LB1 запрещает доп-

с а. о

га о Я 1

га га I- т

С ю

ю 3 а.

й к а. S

С г

га т Н о

<2 га О ю

а г

ю с



рограммирование контроллера. Установка обоих битов защищае его от несанкционированного считывания содержимого ПЗУ. Снятие битов защиты осуществляется при стирании ПЗУ.

программирование дт89с1051

Программирование АТ89С1051 имеет существенные отличия от аналогов семейства NICS-51, определяемые ограниченным чистом его выводов. Ватедствие этого отсутствует возможность задавать извне адрес программируемого байта. Адресация осуществляется при помощи внутреннего счетчика, сбрасываемого в О при сбросе контроллера. Инкрементирование счетчика осуществляется положительным импульсом на входе XI ALL Поэтому при программировании необходимо внешнее тактирование, осуществля-, ,5 g емое по входу XTAL2. Схема включения микроконтроллеров АТ89С1051 при

Данные для i г i i

программи- программировании приведена на рис. 8.

Последовательность подачи сигна-

RDY/BSY . PROG .

В соответствии с табл.S

Л

Импульс MHKpeN-oH-жроваиия адреса

РЗ 2 J,

РЗ.З й

Р3,4 S

Р35 -

Р3.7 01

XTALi GND

рования

Б соответ-стаии с табл.5

>

РЗЗ

P3.S

о

X1AL1

-U,h,.Vpp

0+5B

Верефи-цируемые данные

лов программирования приведена ниже.

1. Подать напряжение питания. Установить RST и XTAL1 в низкий уровень, выждать не менее 10 мс.

2. Установить RST и Р3.2 в единицу.

3. Установить на выводах РЗ.З, Р3.4, РЗ.З, Р3.7 сигналы в соответствии с табл. 5, определяющие выбранный режим.

4. Установить на выводах порта Р1 байт данных, соответствующий адресу 0.

5. Подать на вход RST напряжение 12 В.

6. Подать отрицательный импульс программирования на вход Р3.2. Этим импульсом запускается внутренняя

схема программирования. Процесс занесения байта в ПЗУ занимает примерно 1,2 мс.

7. Для верификации подать на вход RST напряжение 5 В. Ус1аио-вить на выводах РЗ.З, Р3.4, РЗ.З, Р3.7 сигналы в соответствии с табл. 5. Прочитать данные по выводам порта 1.

8. Подать положительный импульс на входХТАЕ1 для инкрементирования счетчика адреса.

9. Установить на выводах порта Pi байт данных, соответствующий следующему адресу. Повторять действия по пп. 5-8 до завершения программирования всего программного массива.

Рис. 8. Схема включения микро-контрол.перов AT891051 при программировании

режим

P3.2/PROG

РЗ.З

Стиракие

12 В

н

Н

Программирование ПЗУ

12 В

-1 Г

Н

Н

Верификация ПЗУ

Н

н

Т

Н

Н

Чтение сигнатурных байтов

Н

н

L 1

Установка бита защиты 1

12 В

1 г

Н

Н

Н

Н

Установка бита защиты 2

12 В

Н

Н

1Е 1

Примечания.

С) - импульс стирания должен иметь длительность не менее 10 мс; Н - высокий логический уровень, L - низкий

jloVGL

Р34. (prog)

RST-

, lENSH

P34 (ENABLE) -

(RDY/BSY)

XTALI .

tcLGI

tGHSL

~\ Лог- 1

Лог, О tELOV --

ehoz

Готов

IbHIH j tlHiH

(импульс инкрементирования адреса)

Рис. 9. Временные диаграммы цикла программирования и верификации АТ89С1051

Таблица 6

Временные характеристики циклов программирования и верификации

АТ89С1051

Параметр

Минимум

Максимум

Ед. изм

Напряжение программирования

11,5

12,5

В

... Ipp

Ток профаммирования

0,25

bvGL

Время предустановки данных

МКС

toHDX

Время задержки данных

мкс

Время задержки установки Vpp относительно вывода Р3.4

мкс

fsHGL

Время задержки сигнала PROG

мкс

fcHSL

Время задержки снятия Vpp

мкс

, Iglgh

Длительность PROG

мкс

Ielqv

Задержка данных относительно ENABLE

мкс

. EHQZ

Удержание данных

мкс

. tcHBL

Задержка установления BUSY

0,05

мкс

Длительность внутреннего цикла записи

tsHIH

Задержка инкрементирующего импульса

мкс

tlHIL

Длительность инфементирующего импульса

мкс



10. Установить XTALl и RST в низкий уровень. Выключить питание.

АТ89С1051 имеет режимы DATA Polling и Ready/Busy. В первом случае после подачи импульса программирования на вход PROG рекомендуется считывать содержимое старшего бита записываемого байта (линия Р 1.7) и сравнивать с тем, что было подано на запись. До тех пор, пока цикл внутренней записи не закончится, верификация бита Р1.7 будет давать ложный результат, и только после завершения записи считанное значение будет соответствовать записывавшемуся.

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

Если не установлены биты защиты, то возможно прочитать содержимое внутреннего ПЗУ микроконтроллера. Это осуществляется при следующей последовательности шагов.

1. Подать напряжение питания. Установить RST и XTAL1 в низкий уровень, вьгждать не менее 10 мс.

2. Установить RST и Р3.2 в единицу.

3. Установить на выводах РЗ.З, Р3.4, РЗ.З, Р3.7 сигналы в соответствии с табл. 5, определяющие режим верификации.

4. Прочитать с выводов порта Р1 байт данных, соответствующий адресу 0.

5. Подать положительный импульс на вход XTALl для инкремен-тирования счетчика адреса.

6. Повторить действия по пп. 4, 5 до завершения чтения всего содержимого ПЗУ.

10. Установить XTAL1 и RST в низкий уровень. Выключить питание.

При чтении сигнатурных байтов ячейка ОООН содержит 1ЕН (производитель - Atmel), ячейка 001Н - ПН (код AT89C105I).

АТ89С2051

Этот контроллер, полностью программно совместимый с семейством MCS-51, также выпускается в 20-выводном DIP-корпусе. По выводам он полностью совместим с АТ89С1051. АТ89С2051 содержит 2 кбайта электрически перепрограммируемого ПЗУ, 15 линий ввода/вывода, 128 байт внутреннего ОЗУ, 2 таймера-счетчика, 6 векторов прерываний и аналоговый компаратор. Таймеры-счетчики

полностью идентичны таковым у jvlCS-51. АТ89С2051 имеет также стандартный для MCS-51 после- довательный порт. Поддерживаются режимы Idle и Power Down. fCpoMe того, выводы портов - сильноточные, допускающие прохождение через них тока вплоть до 20 мА. Это позволяет их использовать для непосредственного управления светодиодными индикаторами (правда, суммарный ток через все линии порта не должен превышать 80 мА).

Допустимый диапазон питающих напр5гжений - от 2,7 до 6 В, потребляемый ток - не более 15 мА в активном режиме, 5 мА в режиме Idle и 100 мкА в режиме Power Down. Зависимость потребляемого тока от напряжения питания для АТ89С2051 аналогична AT89CI051. Основные характеристики контроллеров этого типа приведены в табл. 7.

Выводы портов Р1.2-Р1.7 имеют внутренние нагрузочные резисторы. Р1.0 и Р1.1 не имеют их и используются соответственно как положительный (AIN0) и отрицательный (AINl) входы встроенного прецизионного аналогового компаратора. Выход компаратора соединен с линией Р3.6, не выводимой наружу микроконтроллера. Линии порта Р3.0-Р3.5 выполняют альтернативные функции: РЗ.О - RxD, Р3.1-TxD,P3.2- INTO, РЗ.З - ШП , Р3.4 - ТО, РЗ.З - Т1. Ли-

Ш

? 1 о g

га к О. I-

2 и

I о

I о

Q. СЗ

Е i

<2 га О 5

р- ю

s D. со

о. о о с (м im



НИИ порта РЗ также снабжены внутренними нагрузочными резисторами.

Из стандартного для контроллеров семейства MCS-51 набора регистров SFR в АТ89С2051 присутствуют аккумулятор, регистры В, PSW, IP, IE, TCON, TMOD, TLO, ТНО, SP, PCON, DPTR, PI и РЗ, имеющиеся в АТ89С1051, а также SCON, SBUF, TLl и THl. Инструкции LCALL, LJMP, ACALL, AJMP, SJMP, JMPlaA+DPTR, CJNE, DJNZ, JB, JNB, JC, JNC, JBC, JZ, JNZ не должны в качестве адресов перехода (вызова подпрограмм) использовать адреса свыше 7FFH - контроллер не имеет средств выявления подобных ошибок.

АТ89С2051 также имеет только два бита защиты, LB1 и LB2. Установка LB1 запрещает допрограммирование контроллера. Установка обоих битов защищает его от несанкционированного считывания содержимого ПЗУ. Снятие битов защиты осуществляется при стирании ПЗУ.

Программирование и верификация АТ89С2051 практически полностью идентичны аналогичным операциям у AT89C105L Различие состоит лишь в том, что объем внутреннего ПЗУ этого контроллера составляет не 1, а 2 кбайта, в связи с чем при программировании и верификации необходимо выполнить не 1024, а 2048 соответствующих циклов. Кроме того, при чтении сигнатурных байтов ячейка ОООН содержит 1ЕН (производитель - Atmel), ячейка 001Н - 21Н (код АТ89С2051).

АТ89С55 и AT89LV55

Это стандартные микроконтроллеры, практически полностью аналогичные классическим 8хС54 и 8хЕ54. Отличием их, помимо Flash-памяти вместо УФ-стнраемого ПЗУ, является несколько необычный его объем (20 кбайт). Основные характеристики контроллеров приведены в табл. 8, цоколевка аналогична АТ89С51.

Необходимо отметить более высокую, чем у MCS-51, нагрузочную способность выводов AT89C55/AT89LV55, позволяющую соединять с каждым из них до 6 стандартных TTL-входов. Максимальный входной ток может достигать 10 мА, при этом суммарный ток через выводы порта О не должен превышать 26 мА, а через выводы остальных портов - 15 мА. Максимальный суммарный ток через все выводы не должен быть более 71 мА. Напряжения на входах относительно общего провода должны лежать в диапазоне от -1 до +7 В, максимальное рабочее напряжение - 6,6 В. В режиме Power Down допустимо его снижение до 2 В. Потребление АТ89С55 на частоте 12 МГц при напряжении питания 6 В не превышает 20 мА, в режиме Idle - 5 мА, в режиме Power Down - 100 мкА при напряжении 6 В и 40 мкА при 3 В. Зависи-

О

1 С с

5 га о S

iS га m у-

о о

с Ш

га ш

о к

iS О)

га т Н о

К га О Ю

о

т

т

т

ш

о

ш ш о S

Ю с га а а. X

(г) (г)

о

о <

ю ю

о

о

< < <



и

с

Ъ

р

3- о;

о а

2 =

к и га га

Л

го т к о

о ю

о

s§8

5 -5

i x

т

Т ш ш

о 1 м-

5 со s S

CD Ч. О <Я

5 ° Р S

Q. 0) Q

л л

1& о о

ш ш

-Q □3 т

CD CD

Q D.

О О

мость потребляемого тока от, напряжения питания и часто- ты для AT89LV55 аналогична приведеной на рис. 2 длд AT89LV51/52.

В микроконтроллерах 8хС51 сигнал ALE генерируется с постоянной частотой, в 6 paaj меньшей частоты осциллягоп ра, исчезая лишь при обращении к внешней памяти данных. В АТ89С55 возможно программно запретить выдач)? этого сигнала, установив в 1 бит О SFR-регистра, находяпге-гося по адресу 8Е. При этом сигнал ALE будет появляться лишь при выполнении команд MOVX, MOVC (либо при работе с внешней памятью программ, если она имеется в вашей системе). В остальных случаях на выводе будет присутствовать напряжение высокого уровня. В отличие от AT89LV51/52i возможность подавления вывода сигнала ALE распространяется и на AT89LV55.

ПРОГРАММИРОВАНИЕ АТ89С55 И AT89LV55

Контроллеры АТ89С55 рассчитаны на програмлшро-вание 5- или 12-вольтовыми импульсами. У первых из них вторая строчка маркировки на корпусе заканчивается на -5 , у вторых дефис с цифрой во второй строчке отсутствуют. Сигнатурные байты для первых следующие: (ОЗОН) --1ЕН, (031Н) - 55Н, (032Н) -

05Н. Вторые отличаются содержимым байта (032Н) - в нем записано не 05Н, а OFFH. AT89LV51/52 пока выпускаются только в расчете на программирование 12-вольтовыми импульсами. Их сигнатуры: (ОЗОН) - 1ЕН, (ОЗШ) - 65Н, (032Н) - OFFH.

Изначально контроллеры поставляются потребителю с очищенным ПЗУ, т. е. все его ячейки содержат OFFH. В этом случае контроллер сразу готов к занесению в него информации. Иначе перед программированием необходимо осуществить цикл стирания. Осуществляется это аналогично тому, как это описано выше для АТ89С51/52 и AT89LV51/52.

Занесение в ПЗУ микроконтроллеров программного кода в целом осуществляется также аналогично АТ89С51/52 и AT89LV51/52. На соответствующие входы портов Р1 и Р2 подается адресная информация, на входы РО - байт данных.

Сигналы на остальных входах должны соответствовать табл. 2. Частота осциллятора не должна быть ниже 4 МГц (напомним, что изделия Atmel полностью статические, поэтому в обычном режиме нижнее значение рабочей частоты не оговаривается).

Но есть и одно существенное отличие АТ89С55 и AT89LV55 от Intel-прототипов. Поскольку рассматриваемые контроллеры Atmel имеют ПЗУ объемом больше 16 кбайт, то их адресная шина насчитывает 15 линий - от АО до А14. При обращении к внешней памяти программ младший байт адреса выводится через порт РО и должен фиксироваться регистром-защелкой в момент спада из 1 в О сигнала ALE. Старшие 7 адресных линий выводятся через Р2.0-Р2.6. Логично предположить, что при программировании адресная информация должна поступать в микроконтроллер через теже линии портов РО и Р2. Но поскольку при программировании вывод Р2.6 задействован, через него нельзя ввести в контроллер адресную линию А14, подобно тому, как это осуществлено у Intel 87С58. Поэтому разработчики Atmel предусмотрели подачу А14 при программировании через младший разряд порта РЗ (РЗ.О).

Временные диаграммы сигналов циклов программирования и верификации как для 5-, так и для 12-вольтовых версий контроллеров идентичны рассмотренным выше для АТ89С51/52 и AT89LV51/52. Напомним, что для корректной верификации выводы порта РО должны быть соединены с проводом питания через резисторы номиналом 10 кОм. Естественно, при установленных битах защиты верификация и чтение содержимого ПЗУ невозможно. Допустимые длительности импульсов и задержек должны быть такими, как указано в табл. 3.

При программировании 12-вольтовых версий напряжение Vpp должно быть в диапазоне 11,5...12,5 В, при этом ток, потребляемый Контроллером по этому входу не превышает 0,9 мА.



Контроллеры такке имеют режимы DATA Polling и Ready/Busy, подробно рассмотренные при описании AT89C51/52 и AT89LV51/52. Также, как и последние, они имеют двухуровневую систему приорщ тетов прерываний. Иных отличий от Intel-прототипов они не имеют^

AT89S53

Эти микроконтроллеры имеют ряд существенных отличий от предшественников, о чем свидетельствует доселе не появлявшаяся в обозначении буква S. Она говорит о том, что в их состав включено новое устройство - SPI (Serial Peripheral Interface - последовательный периферийный интерфейс, который может испо.чьзоваться для программной загрузки). Объем ПЗУ также не совсем обычен -г 12 кбайт. Основные характеристики контроллеров приведены в табл. 9, цоколевка аналогична АТ89С51.

Нагрузочная способность выводов аналогична АТ89С55/ AT89LV55. Напряжения на входах относительно общего провода должны лежать в диапазоне от -1 до Л-1 В, максимальное рабочее напряжение - 6,6 В. В режиме Power Down допустимо его снижение до 2 В. Потребление AT89S53 на частоте 16 МГц при напряжении питания 6 В не превьилает 25 мА, в режиме Idle - 6,5 мА, в режиме Power Down - 100 мкА при напряжении 6 В и 40 мкА при 3 В. Зависимость потребляемого тока от напряжения питания и частоты для AT89S53 аналогична приведенной на рис. 2.

В микроконтроллерах AT89S53 сигнал ALE, как и в АТ89С51, возможно программно запретить, установив в 1 бит О SFR-регистра, находящегося по адресу 8Е. При этом сигнал ALE будет появляться лишь при вьшолнении команд MOVX, MOVC (либо при работе с внешней памятью программ, еаш она имеется в вашей системе). В остальных отучаях на выводе будет присутствовать напряжение высокого уровня.

Выводы порта РЗ выполняют те же альтернативные функции, что и у MCS-51. Под выполнение альтернативных функций также задействованы и 6 из 8 выводов порта Р1. Выводы Pl.O и Р1.1, как и у 87С52, обслуживают третий таймер-счетчик. Выводы с Р 1.4 по Р 1.7 обеспечивают работу SP1. Вывод Р 1.4 является сигналом выбора подчиненного устройства, с которым задающий контроллер будет вести обмен. Как будет показано ниже, обмен по SPI-интерфейсу осуществляется в соответствии с логикой ведущий-ведомый или master-slave , как принято в англоязычной литературе. Если AT89S53 работает в режиме ведомого (slave), то установка ведущим (master) на его входе Р1.4 низкого уровня сообщает ему о том, что обмен будет осуществлен именно с ним. Единичный уровень выключает его из процесса обмена. Естественно, что ведущий контроллер должен располагать соответствующими

ь

с а о

а га S а

а: р

Н 5 я т

о и

а

л

>s

га Н

т о

го га О 10

CL а. от от

О- о. 0-

от от от

О- 0-

cd cd cd

ю ю ю

см <n cn

Q. CL

О- 0-

о

п ю

от а> со

о

S со >s S

cd i

О Ч

о =1 а

jo I

о Q-

D- -I ,S -

s , ,s

X I

Ц о о

0 e s

m .0 л

3 op cq

1 о о

I I i cd cd

О -2 -J Q 5:

м- 4



1 ... 5 6 7 8 9 10 11 ... 20
© 2004-2024 AVTK.RU. Поддержка сайта: +7 495 7950139 в тональном режиме 271761
Копирование материалов разрешено при условии активной ссылки.
Яндекс.Метрика