Компания epson выпустила 16-битный микроконтроллер с ультранизким энергопотреблением

Microchip выпускает 16-разрядные микроконтроллеры с ультранизким потреблением в активном режиме

Microchip PIC24F «GA3» PIC24FJ128GA310

Семейство микроконтроллеров PIC24FJ128GA310 содержит схему резервного питания, имеет режим Sleep с низким потреблением и возможностью сохранения ОЗУ и встроенный драйвер ЖК индикатора

Компания Microchip сообщила о расширении номенклатуры 16-разрядных микроконтроллеров с ультранизким энергопотреблением. В состав вошло семейство PIC24F “GA3”, которое имеет самое низкое в отрасли потребление тока в активном режиме для 16-разрядных микроконтроллеров, а также имеет несколько новых режимов работы. В динамике ток потребления микроконтроллеров составляет 150 мкА/МГц в активном режиме. Наличие 6 каналов прямого доступа к памяти позволяет увеличить пропускную способность микроконтроллеров. Новые устройства также выполнены по технологии XLP и имеют дополнительный режим работы Sleep с потреблением тока до 330 нА и возможностью сохранения содержимого ОЗУ.

Следует отметить, что это первые микроконтроллеры с интегрированной схемой резервного питания (VBAT) от батареи часов реального времени. Дополнительно к перечисленным возможностям, микроконтроллеры снабжены контроллером ЖК индикатора и богатой периферией, что делает их более эффективными и позволит создавать недорогие приложения для рынка потребительской электроники (термостаты, домашняя автоматика, электронные замки), промышленных систем (системы безопасности, проводные и беспроводные сенсоры), медицинских приборов и измерительных устройств.

Отличительные особенности микроконтроллера PIC24FJ128GA310:

  • 16-разрядный Flash-микроконтроллер с ультранизким потреблением;
  • производительность 16 MIPS;
  • аппаратный перемножитель 16 бит×16 бит, аппаратный делитель 32 бит×16 бит;
  • Си оптимизированный набор инструкций;
  • 128 КБайт Flash-память, 8 КБайт ОЗУ;
  • встроенный осцилляторы с поддержкой 8 кГц – 8 МГц, до 32 МГц с PLL;
  • 6 каналов DMA;
  • технология XLP, потребление:
    • 10 нА в режиме Deep Sleep;
    • 400 нА при работающих часах реального времени в режиме Vbat;
    • 330 нА в режиме Sleep с сохранением содержимого ОЗУ;
    • 270 нА при запущенном сторожевом таймере в режиме Deep Sleep;
  • несколько режимов тактирования с возможностью переключения для достижения максимальной эффективности;
  • 10/12-битный 24-канальный дифференциальный АЦП;
  • встроенный аппаратный модуль измерения времени заряда для реализации сенсорного интерфейса (24 канала)три аналоговых rail-to-rail компаратора;
  • аппаратные часы реального времени с календарем и системой будильников;
  • коммуникационные интерфейсы: 4 канала UART, 2 канала SPI, 2 канала ШИМ;
  • пять 16-битных таймеров;
  • мониторинг тактовой частоты;
  • поддержка интерфейса JTAG;
  • возможность переназначения линий ввода/вывода;
  • напряжение питания 2.0 В – 3.6 В.

Встроенная функция резервного питания позволяет автоматически перейти на питание от резервного источника при отключении основного напряжения питания, и обратно. Интегрированный контроллер ЖК индикатора поддерживает непосредственное управление 480 сегментами, что позволит реализовать более информативные приложения.

Для оценки возможностей, разработки и отладки приложений на базе микроконтроллеров семейства PIC24F “GA3” компания предлагает подключаемый процессорный модуль (PIM) PIC24FJ128GA310 Plug-In Module MA240029 для отладочной платформы Explorer 16, а также отдельную отладочную плату с установленным сегментным ЖК индикатором LCD Explorer Development Board DM240314.

Перевод: Vadim по заказу РадиоЛоцман

Какой микроконтроллер выбрать

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

  1. Выбор микроконтроллера
  2. PIC
  3. Цена и содержимое
  4. Программирование и использование PIC
  5. AVR
  6. Цена и начинка
  7. Программирование и использование AVR
  8. ARM
  9. STM8
  10. STM32
  11. Прошивка и программирование
  12. Цена
  13. ESP
  14. Выводы

Выбор микроконтроллера

Открывает наш парад компания Microchip Technology с серией PIC. Эти МК отличаются между собой разрядностью (8/16/32), набором периферии и корпусом чипа. Восьмибитные варианты же делятся на четыре семейства: baseline, mid-range, enhanced mid-range и PIC18. Более подробная информация приведена в таблице.

Также есть 16-битные «пики» — PIC24F и DsPIC30/33F. Ну и 32-битные — PIC32MX. Эти непонятные сочетания букв и цифр — часть идентификатора чипа. То же, что и марки у машин. Например, широко распространенный камень PIC16F628A расшифровывается так: семейство PIC16F6 (Mid-range), а остальная часть имени — указатель на конкретный камень. У рассмотренных далее МК в имени может содержаться еще больше информации.

Цена и содержимое

Эти микроконтроллеры имеют среднюю стоимость. Например, камень PIC6F628 в Chipdip стоит около 150 рублей, а PIC18F2550 — 620 рублей.

Более дешевые экземпляры имеют в своем составе минимум периферии. У упомянутого ранее PIC6F628 следующие характеристики: встроенный тактовый генератор для работы с частотой 4 или 8 МГц; 18 пинов, из них 16 — ввод/вывод, а 2 — питание; для работы на более высоких частотах можно подключить кварцевый резонатор; Flash-память объемом 2048 слов; 4 аналоговых входа; два 8-битных таймера и один 16-битный; 224 байта ОЗУ (самому смешно); 128 байт EEPROM (это программно перезаписываемая энергонезависимая память, вроде жесткого диска); интерфейс UART.

Программирование и использование PIC

Программируют для микроконтроллеров, как правило, на ассемблере и на Си. Есть множество сред разработки: MPASM и MPLAB, MicroC, JALedit (язык JAL, сам про него впервые слышу). Скачать MPLAB

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

Вторым плюсом можно указать встроенные независимые (от тактового генератора) счетчики. Благодаря этому факту семейство зарекомендовало себя в качестве «мозгов» для частотомеров. Пара таких контроллеров лежит у меня в мастерской на черный день. Из минусов можно выделить только высокую стоимость оригинальных программаторов, которые зовутся PICkit.

PICKIT3

В интернете есть множество статей по сборке достойных аналогов таких программаторов. Но вся соль в том, что для сборки программатора тебе нужно что? Правильно, программатор. На этот случай был разработан программатор Громова. Для его сборки почти ничего не нужно, а работает он от COM-порта компьютера. На момент его разработки популярность этой серии МК была высока, да и COM-порты были у всех ПК. Сейчас все это уже редкость, так что придется преодолеть порог вхождения либо раскошелиться.

Микроконтроллеры AVR производит компания Atmel. Если не знал, это те самые контроллеры, из которых собирают Arduino. Некогда Atmel была независимой компанией, но позже ее купила упомянутая ранее Microchip, которая продолжает выпускать эти МК. Они делятся на три семейства: tinyAVR (ATtinyxxx), megaAVR (ATmegaxxx), XMEGA AVR (ATxmegaxxx).

TinyAVR имеет следующие характеристики:

  • Flash-память до 16 Кбайт;
  • RAM до 512 байт;
  • ROM до 512 байт;
  • число пинов (ножек) ввода-вывода 4–18;
  • небольшой набор периферии.
  • FLASH до 256 Кбайт;
  • RAM до 16 Кбайт;
  • ROM до 4 Кбайт;
  • число пинов ввода-вывода 23–86;
  • расширенная система команд (ассемблер) и периферии.
  • FLASH до 384 Кбайт;
  • RAM до 32 Кбайт;
  • ROM до 4 Кбайт;
  • четырехканальный контроллер DMA (для быстрой работы с памятью и вводом/выводом);
  • «инновационная» система обработки событий.

Как и в случае PIC, у моделей AVR в названии содержится ценная информация. Например: ATMega328PU — семейство megaAVR, 32 Кбайта Flash, 8-битный, P — говорит о модификации (примерно как у пистолета Макарова модернизированного — ПММ).

Расшифровка названия чипа

Цена и начинка

Эти микроконтроллеры имеют, как и PIC, среднюю стоимость. Например, упомянутый ранее камень ATmega328P в Chipdip стоит 160 рублей, а ATxmega128A1 — 590 рублей.

TinyAVR дешевле и проще своих старших братьев. Немного характеристик ATmega328P: предельная частота работы 20 МГц (слышал, правда, что под охлаждением и посильнее разгоняли); 23 пина ввода-вывода; Flash-память на 32 Кбайта; 8 аналоговых входов; два 8-битных таймера и один 16-битный; 6 ШИМ-каналов; 2 Кбайта RAM; 1 Кбайт EEPROM; интерфейсы UART, SPI, I2C.

Программирование и использование AVR

Благодаря распространению плат прототипирования Arduino, как у нас, так и за рубежом, эти МК имеют низкий порог вхождения. Программируются на ассемблере, Си, C++; можно воспользоваться графическими генераторами кода типа Scratch (см. Scratchduino). Для работы есть Atmel Studio, IAR AVR, WinAVR. Ну и Arduino IDE, куда уж без нее. Лично я использую связку из Geany и avrdude. Для прошивки есть большое разнообразие программаторов: как дешевые, так и подороже. Я для этих целей прикупил недорогой экземпляр USBasp где-то за 1,5 доллара (на Aliexpress есть масса вариантов). А можно в качестве программатора использовать и Arduino UNO.

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

Кстати, если заказываешь из Китая, то взять плату с чипом будет дешевле, чем чип отдельно.

О компании ARM и ее продукции ты наверняка слышал. Однако производит эта компания не сами микроконтроллеры, а лишь архитектуру. Лицензию на нее покупают конечные производители и используют так, как им захочется. Кто только их не выпускал! Но как микроконтроллеры наибольшее распространение получили чипы компании STMicroelectronics.

Читайте также  Регулятор мощности с экономичной схемой управления

Логотип STMicroelectronics

Они делятся на два семейства: STM32 и STM8. Как понятно из названий, такие чипы бывают 8- и 32-битные. А каждое семейство делится на серии, которых достаточно много.

Что можно о них сказать? Это функциональный аналог AVR, только дешевле. Здесь есть три серии: STM8L c ультранизким энергопотреблением, STM8S для индустриальной аппаратуры и STM8A, именуемые «высоконадежными». Периферия у всех такая же, как у AVR, но есть встроенный тактовый генератор. Из плюсов могу выделить только низкое энергопотребление и маленькую цену. Замечу, у STM8 архитектура не ARM, а собственная. Она очень схожа с ARM и использует идентичный STM32 интерфейс прошивки. Компилятор для них используется тоже один, и при его работе ты просто указываешь, под какую архитектуру собирать код.

STM32

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

Прошивка и программирование

Прошиваются STM32 с помощью разработанного компанией ST интерфейса Single Wire Interface Module (SWIM). Еще у МК этой серии есть интерфейс отладки Serial Wire Debugging (SWD). Им я не пользовался, но в большинстве гайдов по STM есть описание его настройки.

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

Для STM32 есть самые разные программаторы — от весьма крутых до простеньких USB-свистков. Я, например, взял ST-LINK, на «Алиэкспрессе» он стоил около 1,6 долларов. Его достоинство в том, что он может прошить любой контроллер STM.

Программатор ST-LINK

Стоит также упомянуть платы STM Nucleo. Вот одна из них.

Плата STM32 Nucleo

Это что-то вроде Arduino из мира STM. Стоит дороговато, как и оригинальные Arduino, но вещь для новичка отличная. Если деньги есть, стоит взять. Здесь же стоит упомянуть «Амперку» с их «Искрой» и набором для начинающих. Тоже вполне достойный выбор для первого раза.

Плата Iskra JS

Для программирования можно воспользоваться средами Embedded Workbench, uVision и TrueStudio. Благодаря работе умельцев для этих же целей можно использовать и родной для многих Arduino IDE. Есть также онлайновый IDE — mbed studio.

Партия из пяти плат с обвязкой и STM8 будет стоить около 4,5 долларов. Плата BluePill с STM32F103 сейчас стоит 1,6 доллара. Плата NUCLEO-F072RB — 16,4 доллара. Ссылок давать не буду — на «Алиэкспрессе» все это легко ищется по запросу «stm32».

И, наконец, пара слов про ESP. С этими МК я не работал и знаю о них немного. Это 32-битные камни с модулем Wi-Fi на борту. Они используют архитектуру xtensa. На них собирают умные дома и прочие интересные штуки (смотри врезку ниже). Программировать можно опять же в Arduino IDE. Знаменитая ESP8266, неоднократно упомянутая на страницах нашего сайта, как раз и относится к этому семейству. К нему же относится ESP32, старший брат ESP8266.

Выводы

Кроме упомянутых выше производителей есть много других: Intel, Renesas Electronics, Texas Instruments и прочие. Но в сообществе электронщиков-любителей они не прижились, хоть и активно используются в промышленности.

Новичкам я рекомендую AVR в виде Arduino: по нему много информации на русском, а порог вхождения невелик. Но засиживаться на них не стоит, а то так и будешь до конца дней собирать и пересобирать этот конструктор.

После Arduino стоит перейти на STM. Для простеньких проектов бери восьмибитные чипы, для более сложных — 32-битные, и будет тебе счастье. И помни, что микроконтроллер — это уже не процессор, но еще не компьютер.

Статьи на сайте о ESP32

Статьи на сайте об STM32 и проектах на его основе

Новая серия микроконтроллеров MSP430FR69x от компании Texas Instruments

Компания Texas Instruments позволит перевести бытовые счетчики и носимые устройства по контролю за состоянием здоровья на новый уровень, сообщает «Паяльник» .

Компания Texas Instruments выпустила 46 новых микроконтроллеров с ультранизким энергопотреблением MSP430™ FRAM microcontrollers (MCU), большим объемом памяти, новыми характеристиками и степенью интеграции. Микроконтроллеры серии MSP430FR69x расширяют объем энергонезависимой FRAM памяти (ферроэлектрическая память с произвольным доступом) до 128 КБ и обеспечивают интеллектуальную аналоговую интеграцию, такую как расширенный интерфейс сканирования (ESI) и аналогово-цифровой преобразователь (ADC) с дифференциальным входом, который потребляет всего лишь 140 мкА при частоте выборки 200 KSPS. Разработчики также смогут использовать интегрированный 320-сегментный LCD-контроллер для добавления дисплея к их продуктам и 256-битный аппаратный ускоритель с поддержкой улучшенного стандарта шифрования (AES) для гарантии безопасной передачи данных. Подобная интеграция не только снижает энергопотребление, но и уменьшает общий размер продукта, исключая использование дополнительных компонентов для таких систем.

Компания TI сфокусировала свои усилия на оптимизации микроконтроллеров серии MSP430FR69x для высокопроизводительных промышленных микроконтроллеров с ультранизким энергопотреблением с оптимизированными режимами наиболее низкой активной, дежурной и периферийной мощности потребления. Непревзойденная скорость записи микроконтроллеров MSP430FR69x с FRAM памятью и увеличенное в 10 миллионов раз количество циклов записи-стирания по сравнению с современной флэш-памятью привело к созданию памяти, которая снижает мощность потребления, увеличивает точность данных с течением времени и даже продлевает срок службы продукта. FRAM обеспечивает несравненную гибкость памяти, не требует использования сегментов для предварительного стирания и гарантирует побитный уровень доступа, позволяя выполнять запись текущих данных на лету, а также быстрее и удобней проводить обновление микропрограммного кода.

Использование микроконтроллеров серии MSP430FR69x с FRAM памятью для энергетических систем

Интегрированный ESI модуль, дифференциальный АЦП и LCD контроллер делают микроконтроллеры серии MSP430FR69x идеальным инструментом для измерения расхода воды, газа и тепла.

Характеристики и преимущества использования микроконтроллеров серии MSP430FR69x с ультранизким энергопотреблением:

  • Облегчение разработки благодаря совместимости по выводам и расширенному объему памяти от 64 КБ до 128 КБ FRAM памяти, и новым характеристикам FRAM микроконтроллерных платформ.
  • Новые преимущества безопасности, включая 256-битный аппаратный ускоритель с поддержкой улучшенного стандарта шифрования (AES) и IP инкапсулированный модуль для защиты передаваемых данных и протокола IP на микроконтроллерах серии MSP430FR69x. Быстрая скорость записи и низкие пиковые значения тока обеспечивают преимущества безопасности для генерирования новых ключей защиты и сохраняют информацию о состоянии продукта даже в случаях пропадания электропитания.
  • Разрушает барьеры, связанные с использованием традиционной технологии памяти микроконтроллеров, благодаря FRAM памяти с непревзойденной скоростью записи, долговечностью, гибкостью и потреблением энергии во время операции записи.

Цена и доступность

Микроконтроллеры серии MSP430FR69x доступны в промышленных партиях 1 000 штук по цене USD $4.50. Вы можете начать разрабатывать устройства самостоятельно благодаря использованию комплекта разработки MSP-FET430U100D по цене $175, который можно приобрести на сайте TI eStore или у авторизованных дистрибьюторов. Оценочный комплект измерителя расхода EVM430-FR6989 будет доступен в октябре этого года по цене $300.

Читайте также последние новости электроники

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

Исследователи из Швейцарского федерального технологического института (Swiss Federal Institute of Technology, ETH) создали крошечный инфракрасный спектрометр, размеры которого позволяют уместить его на кристалле полупроводникового чипа, и который, тем не менее, «обеспечивает массу интересных возможностей».

Компания Xilinx, один из ведущих производителей чипов программируемой логики (FPGA), побила собственный рекорд, выпустив новый чип под названием Virtex Ultrascale+ VU19P.

Инженеры из Массачусетского технологического института и специалисты известной компании Analog Devices совместными усилиями создали первый полностью программируемый 16-разрядный микропроцессор на углеродных нанотрубках.

Разработчики современных оптических устройств всеми силами пытаются сделать эти устройства все меньшими и меньшими.

Непосвященные люди считают, что электрический ток течет совершенно одинаково через одинаковые компоненты наших электронных устройств.

Ученые-физики из Стэнфордского университета создали устройство, которое можно назвать термином «квантовый микрофон», чувствительность которого достаточно высока для того, чтобы при его помощи можно было измерить параметры отдельных звуковых частиц, называемых фононами.

В этом году компания Asus отмечает свою 30-ю годовщину и, поскольку эта компания в 1989 году начала свою деятельность именно с производства компьютерных материнских плат, она представила свое видение того, какими будут материнские платы следующих поколения спустя некоторое время.

Группа ученых, в которую входили Ральф Меркл (Ralph Merkle) и Роберт Фреитас (Robert Freitas), продемонстрировала, что при помощи нескольких базовых мироэлектромеханических компонентов может быть создана полноценная тьюринговая вычислительная система.

Читайте также  Конденсаторы. кодовая маркировка

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

Книги по электронике

Эта книга является логическим продолжением первой книги издательств «Ремонт и Сервис 21» и «СОЛОН-ПРЕСС» (серия РЕМОНТ, выпуск 93) по теме программного ремонта сотовых телефонов. В этом издании приводятся материалы по инженерному программированию и ремонту более 120 моделей телефонов SAMSUNG и около 100 — MOTOROLA. В книге рассматриваются программные пакеты, которые широко распространены как среди профессионалов, так и начинающих.

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

Компания epson выпустила 16-битный микроконтроллер с ультранизким энергопотреблением

STM32 vs MDR32 – счет не в нашу пользу.

В соответствии с программой импортозамещения, введенной в России с 2014 года, предполагалось по возможности заменить ЭРИ иностранного производства на отечественные аналоги. Выпущенная АО «ПКК Миландр» серия ИМС 1986ВЕ9х – ARM микроконтроллеров на базе ядра Cortex M3 является ближайшим аналогом микроконтроллера STM32F10x европейской фирмы ST Microelectronics, и поэтому должна существовать возможность применить с некоторыми доработками российский аналог там, где уже успешно работает STM32. Именно этой задачей я и занялся, а именно начал внедрять ИМС К1986ВЕ92QI в устройство силовой электроники в качестве управляющего контроллера. Изначально устройство разрабатывалось на микроконтроллере STM32F10x, программное обеспечение было написано на GNU ARM Assembler, так как требовалось большое быстродействие, а встроенный «сишный» компилятор Keil этого не обеспечивал. Из периферийных блоков использовались TIMER, ADC, DMA, UART, NVIC и EXTI. Далее будут рассмотрены все сложности, которые возникли в процессе адаптации устройства к ИМС К1986ВЕ92QI, а также описаны основные отличия периферийных узлов.

Ядро, что у одного, что у другого – Cortex M3, RISC ядро ARM архитектуры, разработанное британской корпорацией ARM Limited. АО «ПКК Миландр» приобрело лицензию на данное ядро в 2008 году, и впоследствии реализовало его в серии микроконтроллеров 1986ВЕ9х. ST Microelectronics выпускает микроконтроллеры на базе Cortex M3 с 2007 года, в том числе серию F1, и является лидером по соотношению цена/качество.

Если в STM32F10x реализовано три вида 16-битных таймеров: самые простые (Basic Timers), таймеры общего назначения (General Purpose Timers) и таймер с расширенными возможностями (Advanced Control Timers), то разработчики АО «ПКК Миландр» пошли иным путём – они сделали три таймера с расширенным функционалом, хотя и назвали их «Таймеры общего назначения». По сравнению с другими периферийными устройствами таймеры в 1986ВЕ9х довольно неплохие. Не получилось реализовать в проекте только синхронный запуск двух таймеров по событию третьего таймера и самостоятельную перезагрузку при захвате фронта для организации циклической работы, так, чтобы отслеживать периодичность фронтов сигнала, и, в случае если фронт не успел, уходить в прерывание счетчика при CNT равном ARR. Вдобавок обнаружилась проблема с прерываниями таймера MDR_TIMER1, но винить в этом только таймер неправильно, поскольку проблема может быть на стороне NVIC, подробнее об этом я напишу ниже. Также к таймерам относятся SysTick и Watchdog, первый входит в состав ядра и является простейшим вычитающим счетчиком, а вторые (IWDG и WWDG) ничем не отличаются от STM32F10x.

АЦП в обоих вариантах сдвоенное и имеет одинаковую скорость преобразования – 512 тысяч выборок в секунду, но по функциональности и удобству отечественному периферийному блоку далеко до иностранного аналога. Возможность запускать преобразование АЦП от внешних событий в STM32F10x позволяет синхронизировать несколько периферийных блоков без отрыва ядра от текущей задачи и производить выборку в нужный момент на кривой измеряемого сигнала. Это во многом облегчает и упрощает работу с STM32 и является его большим плюсом. В 1986ВЕ9х по каким-то причинам это не реализовали. Иностранный аналог имеет возможность объединять измеряемые каналы в группы (инжектированные или регулярные) и измерять их в разных последовательностях, при том, если применять инжектированную группу (в которую входит до 4 каналов), то каждый результат будет находиться в своём регистре. Таким образом, результаты преобразований не перезатираются внутри группы, как это происходит при использовании регулярной группы, где регистр результата один на все каналы. В 1986ВЕ9х сделали подобие регулярной группы, при том, что синхронно разные каналы измерять невозможно. Синхронно можно измерять только одни и те же каналы для увеличения скорости преобразования.

Вот здесь у 1986ВЕ9х начинается “мрак”. Этот блок после многоразового прочтения документации и анализа его работы поверг меня в уныние. Один вопрос гложет меня до сих пор: «Зачем городить такой DMA, если он не может работать без участия ядра?». Из всего описания DMA в документации самое нужное написано в глубине раздела, цитирую: «После выполнения контроллером N передач, контроллер устанавливает значение поля cycle_ctrl в b000, делая тем самым channel_cfg данные “неправильными”. Это позволяет избежать повторения выполненной передачи DMA». Из этого следует, что, перед приходом запроса DMA, например, от любого периферийного блока, коих там не много, cycle_ctrl должен содержать значение «Режим работы при выполнении цикла DMA» не равное b000, а, так как после выполнения предыдущего цикла данные в том месте обнулились, то для нормального функционирования нужно останавливать ядро в текущей задаче и успевать вносить данные (b001 – основной режим, b010 – режим авто-запрос или b011 – режим пинг-понг) в то самое поле cycle_ctrl. Преклоняюсь перед “гениальностью” разработчиков данного DMA! В STM32F10x все просто, доступно и легко, переправляешь данные куда душе угодно по запросам DMA без участия ядра.

Проблем не возникло, все работало, как надо. Это единственный периферийный блок в творении АО «ПКК Миландр», который у меня не вызвал нареканий. Из плюсов можно отметить: у STM32F10x имеется режим SmartCard и поддерживается сеть LIN; у 1986ВЕ9х присутствуют буферы FIFO, как на передачу, так и на приём. В остальном все примерно одинаково, кроме того, что в микроконтроллерах ST Microelectronics число блоков UART от двух до пяти, а в серии 1986ВЕ9х их только два.

NVIC реализован в ядре Cortex M3 и предназначен для организации прерываний, как от внутренних блоков, так и от внешних линий (EXTI). В зависимости от конкретной реализации он может поддерживать до 240 линий запросов прерываний. В микроконтроллерах STM32F10x из 240 задействовано 60 прерываний, а у ИМС 1986ВЕ9х их всего 32. Это явный показатель того, что развитость периферийной инфраструктуры отечественного микроконтроллера отстаёт от зарубежного аналога.

В микроконтроллерах 1986ВЕ9х такого блока в принципе нет, у них четыре линии с NVIC напрямую идут на ножки микроконтроллера, поэтому он может различать только присутствие или отсутствие логического уровня. Если этот уровень установился (логическая ‘1’), то вызывается обработчик прерывания, и если к моменту выхода из обработчика прерывания уровень не изменится (станет логическим ‘0’), то мы тут же опять попадем в тот самый обработчик прерывания. Совсем по-иному сделали в STM32F10x, где прерывания возможны почти с любой ножки, и отслеживаются не уровни, а фронты и/или срезы сигналов. Зачастую в программе нужно отследить изменение сигнала и вызвать при этом обработчик прерывания только один раз, а не так, как нам это предлагает АО «ПКК Миландр». На весь блок EXTI в иностранном аналоге отведено 7 линий в NVIC, поэтому несколько выводов микроконтроллера сгруппированы и прерывания с них попадают в один обработчик.

Микроконтроллеры ST Microelectronics самые распространенные из всех с ядром Cortex M3. Причин этому несколько: недорогие отладочные платы, сами микроконтроллеры дешевые, доступная и понятная документация, и т.д. Основным документом при работе с STM32F10x является RM0008 «Reference manual», где подробно и ясно, хоть и не на родном языке, описаны принципы функционирования и представлены необходимые при программировании данные. Совсем иначе дела обстоят у АО «ПКК Миландр», основным документом является «Миландр. Спецификация на серию 1986ВЕ9x, версия (на момент написания статьи) 3.14.0 от 12.10.2018» и качество его оставляет желать лучшего. Ошибки и опечатки везде, к примеру: основные таймеры сначала были 32-битные, затем нормализовались и стали 16-битными, в описании DMA, где и без того все путанно и туманно, одно и то же фигурирует под разными именами (на рисунке 131 области памяти обозначены как: Control, Destination End Pointer и Source End Pointer в тексте на следующей странице они уже фигурируют под другими именами: channel_cfg, dst_data_end_ptr и src_data_end_ptr соответственно), поэтому разработчик, который собрался применить данный периферийный блок, должен каким-то образом сопоставить эти имена. И так перечислять можно еще долго. В основную документацию для чего-то поместили раздел «Система команд» ассемблера, хотя это относится конкретно к ядру Cortex M3, и абсолютному большинству разработчиков не требуется так, как пишут на «Си». Создается впечатление, что документацию на серию 1986ВЕ9x писали студенты–практиканты, мало чего понимающие в том, что излагают, и проверить их никто не удосужился.

Читайте также  Nodemcu - быстрый старт для любителей arduino

Программаторы и среды разработки

Так как STM32F10x широко распространены, средств программирования и отладки тоже хватает. Сама ST Microelectronics выпускает недорогой ST-Link v2, а также программаторы многих сторонних производителей поддерживают STM32, например J-LINK. Среды разработки так же в достатке: Keil, IAR, CooCox, Eclipse, Atollic, и т.д. ST Microelectronics даже выпустила специализированный софт «STM32CubeMX», который генерирует «сишный» код под конкретную конфигурацию. 1986ВЕ9x присутствуют только в Keil, а программатор в моем случае подошел только отечественный «ChipProg-481» фирмы «Phyton».

Помехоустойчивость и «баги»

В реализуемом устройстве необходимо было производить измерения АЦП в середине импульса таймера (ШИМ), в STM32F10x для этого имеется необходимая инфраструктура, а именно возможность запуска преобразования АЦП по событию обновления счетчика. По причине того, что в 1986ВЕ9x такая инфраструктура отсутствует, пришлось осуществлять запуск преобразования АЦП из прерывания обновления счетчика MDR_TIMER1, вот здесь и обнаружился «баг». Прерывания происходили, как это и требовалось, при каждом обновлении таймера, но также появлялись “блуждающие” прерывания в хаотичном порядке, когда не происходило обновления счетчика. Эти ложные прерывания могли либо в период ШИМ появляться по нескольку раз, либо вообще отсутствовать на протяжении нескольких периодов. Очевидно, что этот «баг» таймера MDR_TIMER1, либо NVIC, или вообще где-то между таймером и NVIC (линии связи). В итоге продолжительных и безрезультатных изысканий решено было прекратить адаптацию 1986ВЕ9x в устройстве и оставить STM32F10x на своем месте, где он безотказно исполняет свои функции и по сей день.

Ведущие фирмы-производители микроконтроллеров для освобождения процессорного времени внедряют разные методы коммуникаций между периферийными блоками: ST Microelectronics связывают блоки отдельными линиями; Microchip сделал специальный блок «EVENT SYSTEM» для коммутирования событий. В отечественных микроконтроллерах 1986ВЕ9x периферийные блоки существуют отдельно друг от друга, имея линии связи только с ядром. Мною было затронуто далеко не всё, что имеется на «борту» серии 1986ВЕ9x, но я уверен, что есть разработчики, которые углубились дальше и нашли больше. О причинах того, почему у АО «ПКК Миландр» такие микроконтроллеры, я могу только догадываться, ведь талантливыми инженерами всегда славилась Родина. Видимо, все они трудятся в другой сфере, либо вообще на другое государство. Ну, а мы имеем то, что имеем, поэтому нам остается только надеяться, верить и ждать, что, все-таки, состояние дел в этой высокотехнологичной области изменится в лучшую сторону.

Автор: Ametrin Создано: 28 октября 2018

Добавить комментарий(Нажмите, чтобы отменить ответ)

Для отправки комментария Вам необходимо авторизоваться

STM32L162 — новые микроконтроллеры с ультранизким энергопотреблением с ядром Cortex-M3

Компания STMicroelectronics расширила свою линейку микроконтроллеров с ультранизким энергопотреблением семейства STM32L, представив серию микроконтроллеров – STM32L162 .

Серия 32-х битных микроконтроллеров STM32L162, это дальнейшее развитие уже хорошо известных разработчикам микроэлектроники более ранней серии микроконтроллеров STM32L151 и STM32L152, являющимися первыми в индустрии микроконтроллерами со сверхнизким энергопотреблением на базе ядра Cortex-M3. Микросхемы STM32L162 выполнены по 130 нм технологическому процессу, что в комбинации с уникальной для STMicroelectronics, оптимизированной энергосберегающей архитектурой позволяет уменьшить энергопотребление.

Серия микроконтроллеров STM32L162 является частью платформы EnergyLite продуктов, обеспечивающих разработчиков электроники с одной стороны высокопроизводительными, с другой стороны низкопотребляющими продуктами, и позволяющей создавать высокоэффективные портативные устройства.

По мимо низкого энергопотребления микроконтроллеры семейства STM32L162 имеют ряд дополнительных особенностей, предоставляющих безопасность данных и устойчивую работу системы, такие как Brown-Out Reset, встроенную Flash-память с поддержкой механизма коррекции ошибок, модуль защиты памяти, биты защиты JTAG. Все эти особенности позволяют использовать микроконтроллеры этого семейства в системах, где требуется высокая безопасность и устойчивость работы. В совокупности со встроенным интерфейсом USB 2.0 и драйвером жидкокристаллического дисплея (ЖКИ), микроконтроллеры семейства STM32L162 являются оптимальным устройством для применения в портативных приборах.

Основные характеристики микроконтроллеров STM32L162:

  • Ядро Cortex-M3 с тактовой частотой до 32 МГц
  • До 384 кБ Flash, до 48 кБ RAM, 12 кБ EEPROM
  • 5 USART, 3/2 SPI/I2S, 2 I2C, USB 2.0 Full-Speed, SDIO интерфейсы
  • Контроллер ЖКИ 4×32, 8×28, 8х40 или 4х44
  • Встроенный температурный датчик
  • Часы реального времени (RTC)
  • 8 16-и битных и 1 32-битный таймер
  • До 40-х каналов 12 битный аналогово-цифровой преобразователь (АЦП)
  • 2 12 битных 2-х канальных цифро-аналоговых преобразователей (ЦАП)
  • 2 аналоговых компаратора
  • Емкостной датчик
  • Единое питание 1.8-3.6 В
  • Корпуса LQFP64, LQFP100, LQFP144, WLCSP64, BGA132

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

Для работы с микроконтроллерами серии STM32L162 компания STMicroelectronics предлагает бюджетные отладочные средства серии Discovery — STM32L-DISCOVERY.

Особенности отладочной платы STM32LDISCOVERY:

  • установленный микроконтроллер STM32L152RBT6 — 32 бит, 128 кБ Flash-памяти программ, 16 кБ RAM, 4 кБ EEPROM, АЦП 12 бит, 2 ЦАП 12 бит, 3 UART, 2 I2C, 2 SPI, 2 компаратора, LCD драйвер, USB 2.0 Full-Speed device, работоспособность до 32 МГц, до 51 входов/выходов, корпус LQFP64
  • встроенный JTAG программатор
  • установленный 8 МГц кварцевый резонатор
  • 24 сегментный ЖКИ
  • Micro-AB USB разъем
  • четыре сенсорные кнопки
  • две пользовательские кнопки
  • два пользовательских светодиода

Доступность:

Образцы микроконтроллеров серии STM32L162 и отладочные платы к ним доступны для заказа.

Ресурсы:

Документация на STM32L162

Описание отладочного средства для STM32L-DISCOVERY

В микроконтроллер Ambiq Apollo2 Blue с ультра-низким энергопотреблением добавлен Bluetooth

Еще в 2015 году компания Ambiq Micro представила свой микроконтроллер Apollo с ультра-низким энергопотреблением с утверждениями, что производительность Cortex-M4 будет на высоком уровне при энергоэффективности как у Cortex-M0+ за счет использовании технологии SPOT (Subthreshold Power Optimized Technology), которая позволяет работать с микроконтроллером при очень низком напряжении (менее 0,5 В). С тех пор компания представила MCU Apollo2, который потребляем менее 10 мкА / МГц, но все же это был микроконтроллер общего назначения. Представляем вашему вниманию Apollo 2 Blue.

Ранее в этом году компания представила новую версию микроконтроллера Apollo 2, в который они добавили Bluetooth-подключение, позволяя использовать Bluetooth решения, которые последние годы используются для принятия платежей. Представляем вашему вниманию Apollo 2 Blue.

Нажмите, чтобы увеличить

Ключевые особенности и технические характеристики Apollo2 Blue:

  • Процессор Arm Cortex-M4 до 48 МГц с FPU, MMU, контроллером пробуждающих прерываний с 32 прерываниями
  • Память с ультра-низким энергопотреблением
    • до 1 Мб флэш-памяти для кода/данных
    • До 256 Кбайт ОЗУ с низким уровнем утечки для кода/данных
    • 16 Кб 1 или 2-канальный ассоциативный кэш
  • Bluetooth 5 с низким энергопотреблением
    • Чувствительность RF – -95 дБм
    • TX: 5 мА при 0 дБм; RX: 3,5 мА
    • Выходная мощность Tx: от -40 дБм до +5 дБм
    • 128-битное шифрование AES
    • Обновления по воздуху (OTA)
    • Совместное существование с другими беспроводными сетями 2,4 ГГц
    • Поддержка профилей Bluetooth SIG
    • Увеличенная скорость передачи данных до 2 Мбит / сек
    • Встроенный RCO 32 кГц
  • Ультраэнергоэффективные интерфейсы питания для датчиков вне кристалла
    • 14-бит, 15-канальный, до 1.2 мс / с ADC
    • Выбираемая точность 8/10/12/14 бит для экономии энергии
    • Компаратор напряжения
    • Датчик температуры с точностью +/- 2ºC
  • Последовательная периферия – 4x I2C / SPI master, 1x I2C / SPI slave, 2x UART, PDM для моно и стерео аудио микрофона, I2S slave для сквозного аудио PDM
  • Конфигурируемый тайминг периферии
    • RTC с обоими источниками 32.768 кГц XTAL и 1.024 кГц RC
    • 8x 16-битные таймеры с с гибкой функциональностью для синхронизации и генерации PWM
    • 32-битный системный таймер с 8 регистрами сравнения для генерации прерываний и 4 регистрами захвата
  • Источники тактовых импульсов
    • 32.768 кГц генератор XTAL
    • Низкочастотный RC генератор – 1.024 кГц
    • Высокочастотный RC генератор – 48 МГц
    • RTC на основе семейства Ambiq AM08X5 / 18X5
  • Ультра-низкий ток питания (при выключенном Bluetooth)
    • Нажмите, чтобы увеличить

      Также компания предлагает для разработки Apollo2 Blue EVB с Arduino разъемами. Процессор Atmel используется для отладки и если вы хотите найти микроконтроллер Apollo2 Blue, то это маленький черный чип в правом верхнем углу. На странице продукта вы можете найти больше деталей о микроконтроллере и комплекте для разработки, включая техническое описание, схемы, разводка печатной платы и руководство по началу работы.

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

      Оценочную плату Ambiq Apollo2 Blue можно приобрести в интернет магазине Fujitse за 70 евро + налоги + доставка, тогда как цена образца для самого чипа составляет 2.98 евро.