
- •Программирование микроконтроллеров mcs-51
- •Учебное издание
- •Предисловие
- •1.1. Микроконтроллеры фирмы Intel
- •1.2. Микроконтроллеры фирмы Philips
- •1.3. Микроконтроллеры фирм Siemens, Atmel
- •2.1. Программная модель микроконтроллера 8051
- •2.2. Ассемблерный язык микроконтроллера 8051
- •2.2.1. Система команд языка асм51
- •2.2.2. Директивы языка асм51
- •Include операнды
- •3.1. Этапы проектирования ппо
- •3.2. Кросс-ассемблер x8051
- •Input Filename:
- •2500 A.D. 8051 Macro Assembler - Version 4.02a
- •Input Filename: prim.Asm
- •3.3. Кросс-редактор связей Link
- •Input Filename:
- •3.4. Примеры микроконтроллерных программ
- •Оглавление
- •Глава 1. Состав семейства mcs-51. . . . . . . 5
- •Глава 2. Особенности программирования
- •Глава 3. Технология разработки прикладного
1.3. Микроконтроллеры фирм Siemens, Atmel
и Dallas Semiconductor
Фирма Siemens внесла несомненное своеобразие в развитие семейства MCS-51, выпустив микроконтроллеры серии C500 (табл.1.4), которые являются по существу самыми сложными МК 51-го семейства в мире. Эти микроконтроллеры построены на основе архитектуры МК 8051, дополненной разнообразной и весьма сложной периферией, среди которой можно отметить:
- 10-разрядные АЦП;
- 6-канальный 10-разрядный ШИМ для управления электродвигателями постоянного тока;
- 29-канальный ШИМ;
- 8 DPTR;
Обозначение |
Макс. частота (МГц) |
РПП (байт) |
РПД (байт) |
Таймеры/ счетчики |
|
|
|
|
Микроконтроллеры | ||
C502 |
20 |
ROM/EPROM 16K |
512 |
3+WDT |
|
C504G
|
40 |
ROM/EPROM 16K |
512 |
4+WDT |
|
С505С |
20 |
ROM/EPROM 16K |
512 |
3+WDT |
|
C509
|
16 |
- |
3328 |
5+WDT |
|
C515A |
24 |
ROM/EPROM 32K |
1280 |
3+WDT |
|
C515C
|
10 |
ROM/EPROM 64K |
2304 |
3+WDT |
|
C517A
|
24 |
ROM/EPROM 32K |
2304 |
4+WDT |
|
C540 |
12 |
ROM/EPROM 4K |
256 |
2 |
|
C541 |
12 |
ROM/EPROM 8K |
256 |
2+WDT |
|
|
|
|
Микроконтроллеры | ||
AT89C1051 |
24 |
FLASH 1K |
64 |
1 |
|
AT89C2051 |
24 |
FLASH 2K |
128 |
2 |
|
AT89C4051 |
24 |
FLASH 4K |
128 |
2 |
|
AT89C51 |
24 |
FLASH 4K |
128 |
2 |
|
AT89LV51 |
12 |
FLASH 4K |
128 |
2 |
|
AT89C52 |
24 |
FLASH 8K |
256 |
3 |
|
AT89LV52 |
12 |
FLASH 8K |
256 |
3 |
|
AT89C55 |
33 |
FLASH 20K |
256 |
3 |
|
AT89S8252 |
24 |
FLASH 8K |
256, EEPROM 2K |
3+WDT |
|
AT89S53 |
24 |
FLASH 12K |
256 |
3+WDT |
|
|
|
|
Микроконтроллеры | ||
DS5000FP |
12 |
NVRAM 32K |
128 |
2+WDT |
|
DS5001FP |
12 |
NVRAM 128K |
128 |
2+WDT |
|
DS5002FP |
12 |
NVRAM 128K |
128 |
2+WDT |
|
DS80C310 |
33 |
- |
256 |
3 |
|
DS8xC520 |
33 |
ROM/EPROM 16K |
1280 |
3+WDT |
|
- аппаратный блок умножения 16х16 и деления 32/16;
- блок загрузчика программной памяти (БЗПП).
Что касается фирмы Atmel, то ее лицом является FLASH технология. Владея ею в совершенстве, Atmel строит свою политику на внедрении FLASH в наиболее известные микросхемы памяти, программируемой логики и микроконтроллеров, использующие технологию EPROM. Тот факт,
Таблица 1.4
|
Линии ввода/ вывода |
Последов. каналы
|
Периферия, особенности |
U пит. (В) |
фирмы Siemens |
| |||
|
32 |
UART |
8 DPTR, 4 уровня IRQ |
4,25…5,5 |
|
32 |
UART |
АЦП 8x10, 6 ШИМ для двигателя пост. тока |
4,25...5,5 |
|
34 |
UART, CAN |
АЦП 8x8, 8 DPTR |
4,25...5,5 |
|
80 |
2 UART |
АЦП 15x10, 29 ШИМ, 8 DPTR, умн. 1616, дел. 32/16, БЗПП |
4,25...5,5 |
|
56 |
UART |
АЦП 8x8, 4 ШИМ |
4,25...5,5 |
|
57 |
UART, SSC, CAN |
АЦП 8x10, 4 ШИМ, 8 DPTR |
4,25...5,5 |
|
68 |
2 UART |
АЦП 12x10, 21 ШИМ, 8 DPTR, умн. 1616, дел. 32/16 |
4,25...5,5 |
|
32 |
USB |
- |
4,25...5,5 |
|
32 |
USB, SSC |
- |
4,25...5,5 |
фирмы Atmel |
| |||
|
15 |
- |
Аналоговый компаратор |
2,7...6,0 |
|
15 |
UART |
Аналоговый компаратор |
2,7...6,0 |
|
15 |
UART |
Аналоговый компаратор |
2,7...6,0 |
|
32 |
UART |
- |
4,0...6,0 |
|
32 |
UART |
- |
2,7...6,0 |
|
32 |
UART |
- |
4,0...6,0 |
|
32 |
UART |
- |
2,7...6,0 |
|
32 |
UART |
- |
4,0…6,0 |
|
32
|
UART, SPI |
2 DPTR |
2,7…6,0 |
|
32 |
UART, SPI |
2 DPTR |
4,0…6,0 |
фирмы Dallas Semiconductor |
| |||
|
32 |
UART |
БЗПП, 48-bit encryption key |
4,5…5,5 |
|
32 |
UART |
БЗПП |
4,5…5,5 |
|
32 |
UART |
БЗПП, 64-bit encryption key |
4,5…5,5 |
|
32 |
UART |
2 DPTR |
4,5…5,5 |
|
32 |
2 UART |
2 DPTR |
4,5…5,5 |
что в качестве первого кандидата на модернизацию при прорыве на рынок микроконтроллеров, где господствовали такие мощные фирмы как Philips, Siemens, Intel, Motorola, Mitsubishi и др., фирма Atmel избрала микроконтроллер 8051, подтверждает исключительно высокую популярность этого кристалла.
Среди оригинальных разработок Atmel в рамках семейства MCS-51 отметим следующие (см. табл.1.4):
- 20-выводные микроконтроллеры AT89С2051/1051, открывшие дорогу семейству MCS-51 в сферу "1-долларовых" приложений;
- микроконтроллеры с каналом SPI, обеспечивающие возможность внутрисхемного программирования FLASH памяти. Эта функция может быть очень удобна в производстве, когда программирование микросхем осуществляется уже после их монтажа;
- микроконтроллер с резидентной памятью типа EEPROM, обеспечивающей хранение оперативных данных при отключенном питании микросхемы.
Фирма Dallas Semiconductor в первую очередь получила известность среди производителей семейства MCS-51 своей серией DS5000 (табл.1.4). Оригинальность микроконтроллеров этой серии заключается в том, что их резидентная память программ выполнена в виде NVRAM - оперативной памяти, энергонезависимость которой обеспечивается литиевой батарейкой, встроенной непосредственно в корпус микросхемы. Фирма дает 10-летнюю гарантию на сохранность информации в NVRAM. Микроконтроллеры серии DS5000 имеют архитектуру стандартного ядра MCS-51, поэтому их временные характеристики полностью идентичны характеристикам микроконтроллера 8051.
Отметим, что фирма Dallas Semiconductor первой попыталась усовершенствовать архитектуру семейства MCS-51. Как известно, базовая архитектура этого семейства обеспечивает не оптимальную процедуру выборки и выполнения команд. Например, команда MOV A,Rn выбирается и выполняется микроконтроллером 8051 за 6 тактов, а следующие 6 тактов происходит холостая выборка команды по следующему адресу. В результате затрачивается 12 тактов тактового генератора МК. Специалисты Dallas Semiconductor переработав архитектуру МК 8051 создали группу микроконтроллеров DS8xC300/500 (табл.1.4), в которых типовой цикл выборки и выполнения команд сократился до 4-х тактов, а холостые выборки были исключены. Таким образом, команда MOV A,Rn стала выполняться за 4 такта тактового генератора, т.е. в 3 раза быстрее. Команды МК 8051, которые не имели холостых выборок, в DS8xC300/500 "ускорились" в 1,5 раза.
Список литературы
1. Каталог инструментальных средств для микроконтроллеров/ Фитон. М., 1998.
Глава 2.
|
ОСОБЕННОСТИ ПРОГРАММИРОВАНИЯ МИКРОКОНТРОЛЛЕРОВ MCS-51 |