Микроконтроллеры
фирмы STMicroelectronics
В современной радиоэлектронике существуют две обширнейшие, динамично развивающиеся темы — применение и производство микроконтроллеров. Темы эти теснейшим образом взаимосвязаны и на стыке порождают серьезную проблему выбора подходящего микроконтроллера (МК) для эффективного решения конкретной задачи в определенной предметной области. Решению этой проблемы посвящено множество статей в журналах по электронике, тематические выпуски, исследования и диссертации, разрабатываются специальные методики [1-5].
Владимир Севбо Михаил Титов
В рамках данной проблемы, как это ни странно звучит, фактор превосходства технических характеристик в условиях технологического паритета фирм и чрезвычайно быстрой реакции разработчиков на удачные решения конкурентов обычно не является основным. На первый план выдвигаются факторы простоты и удобства применения, которые слагаются из функционального соответствия микроконтроллера решаемой задаче, обеспеченности средствами проектирования и удобствами их использования, а также наличия достаточной информации о перечисленных средствах. Подтверждением сформулированного тезиса может служить бесспорная истина, заключающаяся в том, что практически любая задача может быть решена в рамках большинства семейств микроконтроллеров. Многие авторы отмечают также лукавство приводимых фирмами технических параметров. Рекордные значения производительности, измеренные, например, на «удобных» наборах функций, легко теряются в практических задачах. Другие «рекорды», такие как размеры или потребление мощности в «спящем» режиме, во многих случаях становятся несущественными в рамках всей системы. Вызывают сомнения также широкие возможности и универсальность, взваливающие тяжелый груз излишней информации и неиспользуемых ресурсов на процесс проектирования и конечное изделие.
Важным мотивом выбора является опыт работы проектировщика с конкретным типом микроконтроллера. Однако собственный опыт с большим успехом часто может быть заменен наличием достаточного количества надежных примеров использования.
В свете вышесказанного, хотелось бы обратить внимание разработчиков на микроконтроллеры фирмы SТMicroelectronics (STM), до настоящего времени мало представленные в массовых отечественных изданиях. Между тем фирма SТM, входящая в семерку мировых лидеров по производству микроэлектроники, поставляет на рынок широкий ряд ми-кроконтроллерных семейств от простейших SТ62, весьма функциональных 8-разрядных SТ72, SТ9, 16разрядных S^0, до мощных микроконтроллеров
ST20, ST40, ST100 с элементами RISC- и DSP-архитектуры. Таким образом, продукция STM представляет собой реальный противовес продукции американских компаний-производителей МК.
На мировом рынке МК фирмы SТM давно и уверенно занимают свою нишу в бытовой и автомобильной электронике, промышленной автоматике и аппаратуре связи. Кстати, с некоторой долей уверенности можно предположить близкий бум применения микроконтроллеров в отечественных разработках, связанных именно с бытовой и автомобильной электроникой. Ориентированные на данные области применения МК фирмы STM, как правило, имеют специальные схемы защиты входов и фильтрации помех, что обеспечивает высокую устойчивость ко внешним электромагнитным помехам.
Широкий диапазон возможностей семейств МК фирмы SТM дает преимущества использования единой идеологии при решении всего комплекса задач, стоящих перед разработчиком, а также позволяет применять однотипные средства проектирования. Широкая номенклатура МК (только семейство SТ72 включает более 100 позиций) обеспечивает возможность максимально точно подобрать средство реализации для конкретной задачи, тем самым упростив, удешевив и ускорив разработку проекта. Последний фактор приобретает особое значение в нынешних условиях, когда успех сопутствует тем разработчикам и производителям РЭА, которые чуть раньше конкурентов выставят на рынок изделия, использующие последние достижения технологии. На ускорение разработок может существенно повлиять планируемое фирмой «ПетроИнТрейд» создание при Военном университете связи технического консультационного центра (ТКЦ) по изделиям фирмы STM.
При выборе семейства МК приходится учитывать также степень «политизированности» фирмы, приводящей к досадным фактам ограничений или неожиданным для разработчика отказам на поставку наиболее интересных высокотехнологичных позиций, необходимости лицензирования и т. п. Такое явление более характерно для фирм США (например, Analog Devices) и менее — для европейских, к представителям которых относится и фирма SТM.
Характеристики микроконтроллеров семейства ST62
Итак, ряд МК фирмы SТM открывается семейством ST62, ориентированным на относительно простые задачи в автомобильной, бытовой технике и промышленных устройствах. Специфика такой ориентации — в стремлении удовлетворить противоречивым требованиям высокой помехоустойчивости при низких стоимости и энергопотреблении. МК этого семейства имеют обычные для своего класса характеристики памяти — до 8 Кбайт памяти программ (ПЗУ или однократно программируемой памяти), до 128 байт ОЗУ, до 128 байт электрически программируемой энергонезависимой памяти для хранения констант, бит за-
щиты памяти программ. 8-битовая гарвардская архитектура на основе аккумулятора реализует 40 команд, включая битовые, и 9 видов адресации. Ориентированные на широкий диапазон применений, МК имеют до 24 программно-настраиваемых многофункциональных двунаправленных линий ввода/вывода. Из них до 10 выходов могут иметь повышенную нагрузочную способность. Входы имеют хорошую шумовую защищенность и встроенную защиту от пробоя, цифровые входы снабжены триггерами Шмитта. Почти все варианты микроконтроллеров семейства снабжены функционально законченными 8-битовыми многовходовыми АЦП, двумя 8-битовыми таймерами, интерфейсами UART и SPI. В семейство входит группа микроконтроллеров со встроенным ЖКИ-интерфейсом. Диапазон питающих напряжений — от 2,4 до 6 В. Кроме того, имеется детектор пониженного напряжения, два режима пониженной мощности — ожидания и остановки. Верхняя граница рабочего диапазона температур для автомобильных применений имеет значение + 125 °С.
Семейство обеспечено широким набором программных и аппаратных средств проектирования, реализующих концепцию интегрированной среды разработки (Ride IDE). Кроме того, имеется также блок-диаграммный и графический интерфейсы (ST-Realizer, Visual Micro Lab), а также ориентированные на специфические применения (Fuzzy Logic).
В табл. 1 приведены характеристики основных приборов семейства, позволяющие выбрать вариант, соответствующий решаемой задаче.
Как видно из табл. 1, в рамках семейства выделены функционально-ориентированные подразделы, включающие различные по ресурсам и стоимости варианты исполнения микроконтроллеров. На сайтах фирмы и на CD-ROM имеется техническая документация по микро-
контроллерам, средствам проектирования, а также рекомендации по типичным применениям с описанием различных особенностей применения, приемов эффективного использования ресурсов и примеров реализованных устройств. Кроме того, представлена методика, посвященная обеспечению высокой помехоустойчивости при использовании микроконтроллеров.
Однако микроконтроллеры ST62 по меркам сегодняшнего дня имеют низкую производительность (цикл команды составляет 1,625 мкс при тактовой частоте 8 МГц), малые объемы адресуемой памяти и вследствие этого невыигрышное соотношение производительность/ стоимость. Поэтому фирма STM в настоящее время основной акцент делает на развитие семейства ST72. Наряду с развитием зарекомендовавших себя собственных решений, привнесенных из семейства ST62, можно отметить сходство МК семейства ST72 с семейством MC68HC05/08 фирмы MOTOROLA. Соответственно, при сохранении своих традиционных сфер применения появляется возможность использования МК фирмы STM в областях, характерных для МК фирмы MOTOROLA.
Характеристики микроконтроллеров семейства БТ72
Семейство ST72, по сравнению с ST62, предназначено для более серьезного применения и поддерживается языками высокого уровня. Ядро, построенное по фон-неймановской архитектуре с аккумулятором, имеет 6 внутренних регистров, включающих 16-разрядный счетчик команд, адресное пространство памяти в 64 Кбайта, параллельную 8-разрядную внутреннюю шину, два индексных регистра X и Y, а также 16-разрядный указатель стека (используется только младший байт, при этом размер стека может составлять 256 байт).
Система команд включает 63 инструкции длиной от 1 до 4 байт с 17 способами адресации, что позволяет выполнять логические по-
битовые операции, различные варианты передачи битов и байтов, обеспечивает эффективную передачу данных в АЛУ и быструю работу с таблицами. Минимальное время исполнения однобайтовой команды составляет 125 нс при внутренней тактовой частоте 16 МГц. Беззнаковое умножение 8 х 8 бит выполняется за 11 циклов (1,37 мкс). Реализуется также программируемая логика снижения мощности. Всего имеется 6 режимов снижения энергопотребления от 2 мА до 0,2 мкА.
Емкость однократно программируемого или ФЛЭШ ПЗУ может составлять от 4 до 60 Кбайт, емкость ОЗУ — до 2 Кбайт. 16-разрядный таймер, реализующий только функцию сброса (без возможности пуска/останова), может работать в одном из режимов: ШИМ, выходное сравнение по двум каналам, входной захват, формирование на внешнем выводе импульса заданной длины при наступлении внешнего события. Кроме того, как и семейство ST62, микроконтроллеры ST72 практически не требуют применения внешних управляющих схем благодаря наличию на кристалле сторожевого таймера, схемы сброса при включении и снижении пита-
Таблица 1. Характеристики микроконтроллеров семейства ST62
Program Memory Type Prog. (Bytes) RAM Data A/D Inputs Timer functions Serial I/O,
Device Flash OTP FAST ROM2 ROM EPROM version (Bytes) E2PROM (Bytes) 16-Bit (IC/OC/PWM) 8-Bit (IC/OC/PWM Others Interface levels (High Current) Packages
| ST6: General Purpose Control Applications (up to 8 Kbytes address space) |
r ST6200C ST62E01C 1K 64 4x8-bit WDG 1 9 (3) DIP16/SO16
16 Pins ST6201C ST62E01C 2K 64 4x8-bit WDG 9 (3) DIP16/SO16/SSOP16
ST6203C ST62E01C 1K 64 1 WDG 1 9 (3) DIP16/SO16
ST6252C ST62E62C 2K 128 4x8-bit 2 (1/1/1) WDG 9 (5) DIP16/SO16/SSOP16
ST6262C ST62E62C 2K 128 64 4x8-bit 2 (1/1/1) WDG 1 9 (5)
ST6208C ST62E20C 1K 64 1 (1/1/1) WDG 12 (4)
ST6209C ST62E20C 1K 64 4x8-bit 1 (1/1/1) WDG 1 12 (4)
ST6210C ST62E20C 2K 64 8x8-bit 1 (1/1/1) WDG 12 (4)
20 Pins ST6218C ST62E18C 8K 192 7x8-bit 2 (1/1/1) WDG UART 12 (8) DIP20/SO20
ST6220C ST62E20C 4K 64 8x8-bit 1 (1/1/1) WDG 12 (4)
8-bit ST6 ST6253C ST62E60C 2K 128 7x8-bit 2 (1/1/1) WDG SPI 13 (6)
ST6260C ST62E60C 4K 128 128 7x8-bit 2 (1/1/1) WDG SPI 13 (6)
ST6263C ST62E60C 2K 128 64 7x8-bit 2 (1/1/1) WDG SPI 13 (6)
ST6215C ST62E25C 2K 64 16x8-bit 1 (1/1/1) WDG 20 (4) DIP28/SO28
ST6225C ST62E25C 4K 64 16x8-bit 1 (1/1/1) WDG 1 20 (4)
28-42 Pins S ST628C ST62E28C 8K 192 12x8-bit 2 (1/1/1) WDG SPI / UART 20 (8) DIP21/SO28/SSOP28
ST6255C ST62E65C 4K 128 13x8-bit 2 (1/1/1) WDG SPI 21 (8)
ST6265C ST62E65C 4K 128 128 13x8-bit 2 (1/1/1) WDG SPI 21 (8)
ST6230B ST62E30B 8K 192 128 16x8-bit 1 (2/2/2) 1 (1/1/1) WDG SPI / UART 20 (4) DIP28/S028
ST6232B ST62E32B 8K 192 128 21x8-bit 1 (2/2/2) 1 (1/1/1) WDG SPI / UART 30 (9) SDIP42
ST6240B ST62E40B 8K 216 128 12x8-bit 2 WDG SPI 24 (4) QFP80
ST6242B ST62E42B 8K 216 128 6x8-bit 2 WDG SPI 18 (4) OFP64
D у ST6246B ST62E46B 4K 140 128 8x8-bit 2 WDG SPI 20 (4) SDIP56
ST6280B 5T62E80B 8K 320 128 12x8-bit 2 (1/1/1) WDG SPI / UART 22 (10) QFP100
ST6285B 5T62E85B 8K 288 128 8x8-bit 2 (1/1/1) WDG SPI / UART 12 (4) QFP80
ния ниже порога, вспомогательного внутреннего тактового генератора.
Построенное на основе стандартного ядра промышленных микроконтроллеров, семейство SТ72 ориентировано на огромный диапазон применений. К ним относятся промышленная автоматика, системы автоматического управления, бытовые приборы, системы автоматизации жилища, автомобильная электроника, связь, системы охраны и др. Для наилуч-
шего удовлетворения требованиям задачи из более чем 100 вариантов исполнения МК семейства могут быть подобраны наилучшие комбинации функций, включающие АЦП, USB, автомобильные протоколы CAN и LIN, контроллер бесщеточных двигателей, ЖКИ-контроллер, операционные усилители (ОУ) и пр., а также различные объемы и виды памяти (ОЗУ, ПЗУ, ППЗУ, ЭППЗУ, Flash). Вся номенклатура приборов семейства SТ72 разбита
на подгруппы, часть из которых представлена в табл. 2. Более полную информацию можно найти на сайте и CD-ROM фирмы, а также в ее консультационных центрах.
Являясь лидером производства энергонезависимой памяти, фирма STM одной из первых в рамках семейства ST72 предложила широкий ряд МК, базирующихся на Flash. На этой основе активно разрабатывается концепция программирования в изделии (in-Suit),
Таблица 2. Характеристики микроконтроллеров семейства ST72
Program Memory Type Prog. RAM Data A/D Inputs Timer functions Serial I/O,
Device Flash OTP FAST ROM2) ROM EPROM version (Bytes) (Bytes) E2PROM (Bytes) 16-Bit (IC/OC/PWM) 8-Bit (IC/OC/PWM) Others Interface levels (High Current) Packages
£ 3 ST7: Industry standart, fast core architecture with innovative peripherals (up to 64K bytes address space) |
1 ST72104G1 4K 256 1 (2/2/1) WDG SPI 22 (8) SDIP32/S028 (Pin to pin compatible)
ST72104 G2 8K 256 1 (2/2/1) WDG SPI 22 (8)
ST72216G1 4K 256 6x8-bit 1 (2/2/1) WDG SPI 22 (8)
ST72215G2 8K 256 6x8-bit 2 (4/4/2) WDG SPI 22 (8)
ST72254G1 4K 256 6x8-bit 2 (4/4/2) WDG SPI I2C 22 (8)
ST72254G2 8K 256 6x8-bit 2 (4/4/2) WDG SPI I2C 22 (8)
ST72101G1 ST72E251G2 4K 256 1 (2/2/1) WDG SPI 22 (8)
ST72101G2 ST72E251G2 8K 256 1 (2/2/1) WDG SPI 22 (8)
SI72213G1 ST72E251G2 4K 256 6x8-bit 1 (2/2/1) WDG SPI 22 (8)
ST72212G2 ST72E251G2 8K 256 6x8-bit 2 (4/4/2) WDG SPI 22 (8)
ST72251G1 ST72E251G2 4K 256 6x8-bit 2 (4/4/2) WDG SPI I2C 22 (8)
ST72251G2 ST72E251G2 8K 256 6x8-bit 2 (4/4/2) WDG SPI I2C 22 (8)
1 3 3 ST72124J2 8K 384 2 (4/4/2) WDG, RTC SPI SCI 32 (4) SDIP42/TQFP44 (Pin to pin compatible)
ST72124J4 16K 512 2 (4/4/2) WDG, RTC SPI SCI 32 (4)
ST72314J2 8K 384 6x8-bit 2 (4/4/2) WDG, RTC SPI SCI 32 (4)
ST72314J4 16K 512 6x8-bit 2 (4/4/2) WDG, RTC SPI SCI 32 (4)
ST72334J2 8K 384 256 6x8-bit 2 (4/4/2) WDG, RTC SPI SCI 32 (4)
ST72334J4 16K 512 256 6x8-bit 2 (4/4/2) WDG, RTC SPI SCI 32 (4)
ST72121J2 ST72E311J4 8K 384 2 (4/4/2) WDG SPI SCI 32 (4)
ST72121J4 ST72E311J4 16K 512 2 (4/4/2) WDG SPI SCI 32 (4)
ST7231 1J2 ST72E311J4 8K 384 6x8-bit 2 (4/4/2) WDG SPI SCI 32 (4)
ST7231 1J4 ST72E311J4 16K 512 6x8-bit 2 (4/4/2) WDG SPI SCI 32 (4)
ST72331J2 ST72E311J4 8K 384 256 6x8-bit 2 (4/4/2) WDG SPI SCI 32 (4)
ST72331J4 ST72E311J4 16K 512 256 6x8-bit 2 (4/4/2) WDG SPI SCI 32 (4)
ST72314N2 8K 384 8x8-bit 2 (4/4/2) WDG, RTC SPI SCI 44 (8) SDIP56/TQFP64 (Pin to pin compatible)
ST72314N4 16K 512 8x8-bit 2 (4/4/2) WDG, RTC SPI SCI 44 (8)
ST72334N2 8K 384 256 8x8-bit 2 (4/4/2) WDG, RTC SPI SCI 44 (8)
ST72334N4 16K 512 256 8x8-bit 2 (4/4/2) WDG, RTC SPI SCI 44 (8)
ST72311N2 ST72E311N4 8K 384 8x8-bit 2 (4/4/2) WDG SPI SCI 44 (8)
ST72311N4 ST72E311N4 16K 512 8x8-bit 2 (4/4/2) WDG SPI SCI 44 (8)
ST72331N2 ST72E311N4 8K 384 256 8x8-bit 2 (4/4/2) WDG SPI SCI 44 (8)
ST72331N4 ST72E311N4 16K 512 256 8x8-bit 2 (4/4/2) WDG SPI SCI 44 (8)
ST72311R6 ST72E311R9 32K 1K 8x8-bit 2 (4/4/2) 1 (2/4/4) WDG, RTC SPI SCI 48 (12) TQFP64 (Pin to pin compatible)
ST72311R7 ST72E311R9 48K 1.5K 8x8-bit 2 (4/4/2) 1 (2/4/4) WDG, RTC SPI SCI 48 (12)
ST72311R9 ST72E311R9 60K 2K 8x8-bit 2 (4/4/2) 1 (2/4/4) WDG, RTC SPI SCI 48 (12)
< ST72511R6 ST72E511R9 32K 1K 8x8-bit 2 (4/4/2) 1 (2/4/4) WDG, RTC SPI / SCI / CAN 48 (12)
ST72511R7 ST72E511R9 48K 1.5K 8x8-bit 2 (4/4/2) 1 (2/4/4) WDG, RTC SPI / SCI / CAN 48 (12)
ST72511R9 ST72E511R9 60K 2K 8x8-bit 2 (4/4/2) 1 (2/4/4) WDG, RTC SPI / SCI / CAN 48 (12)
§ ST72589BW5 ST72E589BW5 24K 1K 5x8-bit 2 (4/4/2) 10-bit (0/0/4) WDG, RTC SPI / SCI I2C CAN 31 PQFP128
ST72389BW4 ST72E589BW5 16K 512 5x8-bit 2 (4/4/2) WDG, RTC SPI SCI 31
T ST72141K2 ST72E141K2 8K 256 8x8-bit 2 (4/4/2) WDG SPI 26 (3) SDIP32/SO34
5 ST72171K2 8K 256 8x8-bit 1 (2/2/1) 1 (1/2/2) WDG SPI / SCI 3 22 (5) SDIP32/SO34
Л. ST72411R1 4K 256 WDG Smart Card (5 I/0s) 10 TQFP64
§ ST72633K1 ST72E631K4 4K 256 8x8-bit 1 (2/2/1) WDG USB 19 (10) SDIP32/SO34
ST72632K2 ST72E631K4 8K 256 8x8-bit 1 (2/2/1) WDG SCI / USB 19 (10)
ST72631K4 ST72E631K4 16K 512 8x8-bit 1 (2/2/1) WDG SCI / I2C / USB 19 (10)
£ 1 ST9: 8/16-Bit high performance core for fast real time management (up to 4 Mbytes address space)
1 8 І ST90135M5 ST90E158 24K 768 8x8-bit 4 (6/6/6) WDG SPI / SCI 67 TQFP80/PQFP80
ST90135M6 ST90E158 32K 1K 8x8-bit 4 (6/6/6) WDG SPI / SCI 67
ST90158M7 ST90E158 48K 1.5K 8x8-bit 5 (8/8/8) WDG SPI / 2xSCI 67
ST90158M9 ST90E158 64K 2K 8x8-bit 5 (8/8/8) WDG SPI / 2xSCI 67
ST90R158 Rom less None 2K 8x8-bit 5 (8/8/8) WDG SPI / 2xSCI 51
ST92F120R9 60K 2K 512 8x8-bit 4 (6/6/6) WDG SPI / lxSCI / I2C 48 TQFP64
ST92F120R1 128K 4K 1K 8x8-bit 4 (6/6/6) WDG SPI / lxSCI / I2C 48
ST92F120V9 60K 2K 512 16x8-bit (110/10/8) WDG SPI / 2xSCI / I2C 77 PQFP100
ST92F120V1 128K 4K 1K 16x8-bit 6 (10/10/8) WDG SPI / 2xSCI / I2C 77
T ST92141K4 ST92E141 16K 512 6x8-bit 3 (4/4/3) WDG SPI 15 (4) SDIP32/PSO34
§ ST92163N4 SI90E163 20K 2K 6x8-bit 2 (3/3/3) WDG I2C / SCI / USB 42 (6) SDIP56
ST92163R4 ST90E163 20K 2K 6x8-bit 2 (3/3/3) WDG I2C / SCI / USB 44 (8) TQFP64
16-bit ST10 | ST10: fast core with advansed interrupt management (up to 10 Mbytes address space)
I ST10R172L1) Rom less None 1K 5 WDG USART / SSP 77 TQFP100
ST10R272L Rom less None 1K 5 WDG USART / SSP 77
1 ST10R167 Rom less None 4K 16x10-bit 5 WDG USART / SSC / CAN 111 PQFP144
ST10F168 256K 8K 16x10-bit 5 WDG USART / SSC / CAN 111
Abbreviations:
ADC=Analog to Digital Converter AR=Auto-Reload CAN=Controller Area Network CAPCOM=Capture Compare IC/OC=Input Capture/Output Compare I2C=Inter Integrated System LCD=Liquid Crystal Display
LVD=Low Voltage Detection MAC=Multiply Accumulator MC=Motor Control MFT=Multifunction Timer OSG=Oscillator Safeguard PEC=Peripheral Event Controller PLL=Phase Locked Loop PWM=Pulse Width Modulation
ROP=Readout Protection RTC=Real Time Clock Timer SCI=Serial Communication Interface SPI=Serial Peripheral Interface SSC=Single-Cycle Switching Support SSP=Synchronous Serial Port TLI=External Top Level Interrupt
UART=Universal Asynchronous Receiver Packages:
Transmitter USART=Universal Synchr./Asynchr. Receiver Transmitter USB=Universal Serial Bus WDG=Watchdog Timer
DIP=Dual In Line LCC=Leaded Chip Carrier QFP=Quad Flat Pack SDIP=Shrink Dual In Line SO=Small Outline SSOP=Shrink small outline package TQFP=Thin Quad Flat Pack
Notes:
1. Under development
2. Factory Advanced Service Technique ROM
3. The device exists in low voltage version
4. The device exists in B version only (without LVD and OSG)
5. Audio square wave generator
позволяющая не только упростить и ускорить процесс разработки изделий, но и сообщить этим изделиям новые свойства, дающие возможность получения различных версий для разных пользователей, а также модификации изделий непосредственно у потребителя. Весьма интересным представляется прибор ST72C171 — МK со встроенным программноуправляемым ОУ, содержащий два усилителя rail-to-ra.il с программным управлением, встроенный программируемый источник опорного напряжения, схемы выборки и хранения, АЦП и Flash-память. Фактически это система сбора данных на кристалле, позволяющая полностью обойтись без внешних компонентов и, кроме того, дающая возможность строить самокалибрующиеся ОУ, АЦП со сверхразрешением в заданных интервалах напряжения (АЦП-лупа), избирательные по мощности усилители.
Многочисленными подгруппами представлены традиционные для STM направления: МK управления электродвигателями (ST72141), МK с CAN-контроллерами (ST72521), МK с USB-интерфейсом ^Т7261х, ST7263х, ST726Зх). В отдельные подгруппы выделены наименьшие по габаритам МK ST72C254 в 28- или 32-выводных, а с максимальным объемом памяти программ (до 60 Майт) — в 64-выводных корпусах.
Микроконтроллеры семейства ST72, так же как и ST62, обеспечены широчайшим набором удобных в использовании средств проектирования производства STM и других фирм.
Техническая поддержка семейства ST72 обеспечивается по всему миру группами инженеров по областям применения (в скором времени, возможно, и Россия не будет здесь исключением). Поддержка заключается в организации обучения, «горячих» линий консультации, поставке программного обеспечения, драйверов, проверенных алгоритмов, готовых решений прикладных задач. Для быстрого старта проектов можно использовать многочисленные примеры, имеющиеся на сайтах и CD-ROM фирмы, а также в консультационных центрах.
Большое число интересных технических решений содержит семейство ST9 — самое высокопроизводительное семейство 8-разрядных микроконтроллеров фирмы STM, достаточно подробное описание которых можно найти в [З]. Однако эти изделия фирма планирует продавать в основном крупным производителям РЭА, поэтому подробно на них останавливаться не будем.
Из логики развития технологии и увеличения количества областей применения МK следует, что постепенно будет возрастать роль более мощных 16-разрядных МЮ Об этом же свидетельствует и динамика продаж ведущих фирм по производству МК При этом необходимо отметить, что, вследствие более широких возможностей по сравнению с 8-разрядными М^ номенклатура 16-разрядных приборов менее разнообразна. Для этого класса МK более характерно стремление обеспечить совместимость и унификацию основных архитектурных решений с МK других фирм, что упрощает задачи обеспечения их средствами поддержки и обучения пользователей.
Характеристики микроконтроллеров семейства ST10
Архитектура семейства 16-разрядных МK ST10 возникла в конце 1990 г. при сотрудничестве компаний SGS-Thomson и Siemens (ныне Infineon). Родоначальником семейства является сравнительно простой кристалл 80C166 с RISC-подобным ядром. Благодаря сокращенному набору команд программа становится менее склонной к ошибкам выполнения и более простой при верификации. Периферийные устройства тесно связаны с ядром ЦПУ, что делает общее поведение программного обеспечения в реальном времени существенно проще.
Сегодня семейство представлено следующими кристаллами: ST10R167Q3 (аналог C167CR производства Infineon), ST10F168Q6, ST10R272 и новый, только что вышедший процессор ST10F269, содержащий те же функциональные блоки, что и ST10F168, и дополнительно еще один интерфейс CAN, 12 Мб ОЗУ и математический сопроцессор. Имеются сведения о разработке ST10F280.
Основные данные по уже выпускаемым процессорам приведены в табл. 3.
Все МK семейства ST10 основываются на одной и той же базовой архитектуре и поддерживают единую систему команд (за исключением расширений для новых членов семейства). Это позволяет безболезненно переходить на следующий уровень производительности при реализации более сложного проекта.
МK семейства ST10 строятся по модульному принципу, предполагающему разделение на три основных системы: ядро центрального процессора (ЦП), контроллер прерываний и периферийные модули. В кристалл встроен управляемый событиями контроллер прямо-
го доступа к памяти, который освобождает ЦП от участия в пересылках и сохранении данных. ЦП обнаруживает большинство ошибок, могущих возникнуть в процессе исполнения программы — переполнение стека, неверный операционный код, выход за пределы адресного пространства, — и реагирует на эти ошибки с помощью специальных векторов прерывания.
МК семейства ST10 основаны на фон-ней-мановской архитектуре и имеют единое адресное пространство для памяти программ, памяти данных, регистров и портов ввода/вывода. Адресация кода и данных происходит путем сегментации и разбиения на страницы адресного пространства до 16 Мбайт: 64 Кбайт — сегменты кода и 16 Кбайт — страницы данных. Обмен данными внутри кристалла организован при помощи четырех внутренних шин:
• 32-разрядная шина внутренней памяти программ, которая обеспечивает считывание двухсловных команд из встроенного ПЗУ за один цикл (или из 256 Кбайт БЫЬ-памяти — у ST10F168);
• две 16-разрядные шины встроенному двухпортовому регистровому ОЗУ (8-12 Кбайт), что позволяет одновременно производить запись и чтение данных;
• 16-разрядная шина для обмена с периферийными модулями;
• дополнительная 16-разрядная Х-шина, являющаяся внутренним продолжением внешней системной шины и служащая для подключения дополнительной памяти и новых периферийных модулей.
Банк регистров общего назначения содержит до шестнадцати 16-разрядных регистров, каждый из которых может использоваться как аккумулятор, указатель при косвенной адресации или для хранения индекса. При столь
Таблица 3. Характеристики микроконтроллеров семейства ST10
ST10R167 ST10F168 ST10R272
CPU ST10 ST10 ST10-DSP
MAC - - +
FLASH - 256k -
ROM - - -
RAM 2k+2k 2k+6k 1k
CapCom 32 кан. 32 кан. -
Таймеры 2GPT(5 timers) 2GPT (5timers) GPT1+GPT2(5)
АЦП 16 кан/10-бит 16 кан/10-бит -
USART 1 1 1
Serial I/O SSC SSC SSP
Watchdog Timer Timer Timer + osillator
PWM 4 4 1
Chip select 5 5 5
PEC 8 кан. 8 кан. 8 кан.
Количество внешних прерываний 8 8 4
I/O (max) 110 110 77
CAN CAN 2.0B CAN 2.0B -
Диапазон адресов 16 M 16 M 16 M
Тип корпуса PQFP 144 PQFP 144 TQFP 100
Макс. частота синхронизации 25 МГц 25 МГц 50 МГц, PLL
Рабочее напряжение, В 5 5 3,3
Рабочие температуры, °С -40...+125 -40...+85 -40...+85 или 0.70
Таблица 4. Средства поддержки проектирования для семейства ST10
ST10R167 ST10F168 ST10R272
Аппаратные средства (Starter KIT) MCB167 фирмы Keil KitCON ST10F168 фирма PHYTEC KitCON ST10R272 фирма PHYTEC
Профессиональный пакет программного обеспечения № 1 PK166 (состав: CA166+отладчик dScope) фирма Keil PK166 (состав: CA166+отладчик dScope) фирма Keil PK166 (состав: CA166+отладчик dScope) фирма Keil
Профессиональный пакет программного обеспечения № 2 CA166 (состав: A166+C166 Compiler + RTX166 Tiny) фирма Keil CA166 (состав: A166+C166 Compiler + RTX166 Tiny) фирма Keil CA166 (состав: A166+C166 Compiler + RTX166 Tiny) фирма Keil
Профессиональный отладчик PLS Fast view фирма PLS PLS Fast view фирма PLS PLS Fast view фирма PLS
большом числе регистров становится возможным сократить частоту обращений ко внешней памяти и существенно повысить скорость. Любой регистровый банк произвольно размещается во встроенном ОЗУ.
Эффективное программирование МК семейства ST10 достигается благодаря мощной системе команд, поддерживающей вычисления над 8-, 16- и 32-разрядными операндами, операции умножения и деления, контроль границ стека, управление периферией через регистры специальных функций. Для увеличения скорости выполнения команд контроллеры семейства содержат четырехступенчатый конвейер команд. При тактовой частоте процессора 25 МГц цикл выполнения команды составляет 80 нс, время выполнения умножения 16х 16 бит — 400 нс, деления 32/16 бит — 800 нс. В системе команд хорошо представлены операции булевой алгебры и манипуляции с битами.
МК ST10R167/168 имеют встроенные CAN-контроллеры, 16-канальные 10-битовые АЦП с временем преобразования 7,76 мкс и 110 линий ввода/вывода, индивидуально программируемых на ввод, вывод или специальные функции. Более подробно с особенностями функционирования и возможностями МК семейства ST10 можно ознакомиться по описанию его аналога — семейства С166 [6], а также на CD-ROM фирмы STM и на сайте http:// mcu.st.com.
Основные области применения микроконтроллеров:
• ST10R167, ST10F168, ST10F269 — автомобильная техника, авиация, измерительные приборы, управление процессами в реальном времени;
• ST10R272 — средства телекоммуникаций. С 1998 г. STMicroelectronics выпустила
80 млн процессоров ST10, из них 11 млн — с внутренней БЫЬ-памятью.
Перечень используемых средств поддержки проектирования приведен в табл. 4.
В заключение хочется отметить, что микроконтроллеры как объект изучения требуют более детального рассмотрения вне рамок этой статьи. Мы будем и в дальнейшем публиковать различную информацию для разработчиков, использующих микроконтроллеры компании STMicroelectronics. МММ
Литература
1. Выбор микроконтроллера (по материалам фирмы MOTOROLA). — Инженерная микроэлектроника, № 1, 1998.
2. Фрунзе А. Рабы своих семейств. — Компоненты и технологии, № 3, 2000.
3. Фрунзе А. Контроллерный рынок России: факты и домыслы, парадоксы и закономерности. — Компоненты и технологии, № 4, 2000.
4. Ахметов М. 8-разрядные микроконтроллеры, или В бой идут одни «старики». — CHIP NEWS, №1, 2000. С. 3-10
5. С. Копытин. Микроконтроллеры семейства SIEMENS C166. — CHIP NEWS, № 1, 1999. С. 39-42.
6. Копытин С. Микроконтроллеры семейства SIEMENS С166 (часть 2). — CHIP NEWS, № 4, 1999. С. 24-28.