Введение в архитектуру микроконтроллера LPC2148 на базе ARM7

Попробуйте наш инструмент устранения неполадок





ARM (Advanced RISC Machine) выпустила несколько процессоров с разными функциями, а также с разными ядрами для самых разных приложений. Первая архитектура ARM имела 26-битные процессоры, но теперь она достигла 64-битных процессоров. Общее расширение продуктов ARM не может быть отнесено к какой-либо конкретной информации. Но продукты ARM можно понять по их архитектуре. На рынке доступны стандартные процессоры серии ARM, начиная с ARM7 и заканчивая ARM11. Эти процессоры имеют несколько функций, таких как кэш, жестко связанная память данных, MPU, MMU и т. Д. Некоторые из широко известных серий процессоров ARM - это ARM926EJ-S, ARM7TDMI и ARM11 MPCore. Эта статья специально предназначена для обзора архитектуры микроконтроллера LPC2148 на базе ARM7, который даст вам краткую информацию о микроконтроллер архитектура.

Архитектура микроконтроллера LPC2148 на базе ARM7

ARM7 - это 32-разрядная универсальная микропроцессор , и он предлагает некоторые функции, такие как низкое энергопотребление и высокую производительность. Архитектура ARM зависит от принципы RISC . Соответствующий механизм декодирования, а также набор RISC-инструкций намного проще, если сравнить с микропрограммный CISC -Сложный набор команд компьютеров.




Метод конвейера используется для обработки всех блоков в архитектуре. Обычно выполняется один набор инструкций, затем транслируется его потомок, & a 3rd-инструкция получается из памяти.

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



Архитектура микроконтроллера на базе ARM7 (LPC2148)

Архитектура микроконтроллера на базе ARM7 (LPC2148)

Источники прерывания

Каждое периферийное устройство состоит из одной линии прерывания, связанной с VIC (векторный контроллер прерываний), хотя внутри оно может иметь различные флаги прерывания. Отдельные флаги прерывания также могут обозначать один или несколько ресурсов прерывания.


Встроенная флэш-память программ

Микроконтроллер LPC2141 / 42/44/46/48 включает в себя флеш-память размером 32 килобайта, 128 килобайт, 256 килобайт соответственно. Эта флэш-память может использоваться как для хранения данных, так и для кода. Программирование флэш-памяти может быть выполнено в системе через последовательный порт.

Приложение программы также может стираться во время работы приложения, что обеспечивает гибкость улучшений встроенного ПО на полях хранения данных и т. Д. Из-за выбора архитектурного решения для встроенного загрузчика доступная память для микроконтроллеров LPC2141 / 42 / 44/46/48 - это 32 килобайта, килобайта, 128 килобайт, 256 килобайт и 500 килобайт. Флэш-память этих микроконтроллеров предлагает 1000000 стирания за цикл и сохранение данных в течение многих лет.

Блок Pin Connect

Этот блок позволяет выбранным контактам микроконтроллера LPC2148 на базе ARM7 выполнять несколько функций. Мультиплексоры может управляться регистрами конфигурации для обеспечения связи между выводом, а также периферийными устройствами на кристалле.

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

После перестановки все контакты портов (порт 0 и порт 1) упорядочиваются как i / p в соответствии с заданными исключениями. Если отладка разрешена

Если отладка разрешена, контакты JTAG угадают функциональность JTAG. Если трассировка разрешена, то выводы трассировки угадают функциональность трассировки. Контакты, подключенные к контактам I2C0 и I2C1, представляют собой открытый сток.

GPIO - параллельный ввод / вывод общего назначения

Регистры GPIO управляют выводами устройства, которые не связаны с конкретной периферийной функцией. Контакты устройства могут быть расположены как i / p [s или o / ps. Отдельные регистры позволяют одновременно очищать любое количество опознавательных знаков. Можно считать значение выходного регистра и текущее состояние контактов порта. Эти микроконтроллеры начинают ускоренную работу по сравнению с устройствами LPC200.

Регистры ввода-вывода общего назначения перемещаются на шину процессора, используемую для определения наиболее вероятного времени ввода-вывода.

  • Эти регистры являются адресуемыми байтами.
  • Общая стоимость порта может быть
  • Полное значение порта можно записать в единственной инструкции

10-битный АЦП (аналого-цифровой преобразователь)

Микроконтроллеры типа LPC2141 или 42 включают два Преобразователи АЦП , и это только 10-битные, имеют один, а LPC2144 / 46/48 имеют два АЦП, и это только 10-битные АЦП прямого приближения. Хотя ADC0 включает 6 каналов, а ADC1 - 8 каналов. Таким образом, количество доступных I / ps АЦП для LPC2141 или 42 составляет 6 и 14 для LPC2141 или 42.

10-битный ЦАП (цифро-аналоговый преобразователь)

ЦАП позволяет этим микроконтроллерам производить изменяемый аналоговый сигнал / выход, а VREFэто максимальный результат цифровой в аналоговый Напряжение.

Контроллер устройства-USB 2.0

Универсальная последовательная шина состоит из 4-х проводов и обеспечивает связь между рядом периферийных устройств и хостов. Этот контроллер обеспечивает пропускную способность USB для подключения устройств с использованием протокола на основе токена.

Шина поддерживает отключение горячего подключения и динамический сбор устройств. Все коммуникации запускаются через хост-контроллер. Эти микроконтроллеры разработаны с универсальным контроллером последовательной шины, который позволяет заменять данные со скоростью 12 Мбит / с на хост-контроллер USB.

UART

Эти микроконтроллеры включают в себя два UART для стандартных линий передачи и приема данных. В отличие от более ранних микроконтроллеров (LPC2000), UART в микроконтроллерах LPC2141 / LPC2142 / LPC2144 / LPC2146 / LPC2148 инициируют генератор частичной скорости передачи, используемый для обоих UART, что позволяет этим типам микроконтроллеров достигать типичных скоростей передачи, таких как 115200 на каждой частоте кристалла выше 2 МГц. . Кроме того, функции управления, такие как CTS / RTS, полностью выполняются аппаратно.

Контроллер последовательного ввода / вывода шины I2C

Каждый микроконтроллер из LPC2141 / LPC2142 / LPC2144 / LPC2146 / LPC2148 включает два I2C контроллеры шины, и это двунаправленное. Управление между ИС может быть выполнено с помощью двух проводов, а именно SCL и SDA. Здесь SDA и SCL - это линия последовательных часов и линия последовательных данных.

Каждый аппарат идентифицируется индивидуальным адресом. Здесь передатчики и приемники могут работать в двух режимах, например, в режиме ведущего / ведомого. Это шина с несколькими мастерами, и ею могут управлять один или несколько подключенных к ней мастеров шины. Эти микроконтроллеры поддерживают скорость передачи данных до 400 кбит / с.

Контроллер последовательного ввода / вывода SPI

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

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

Контроллер последовательного ввода / вывода SSP

Эти микроконтроллеры содержат один SSP, и этот контроллер может обрабатывать SPI, шину Microwire или 4-проводную SSI. Он может связываться с шиной нескольких мастеров, а также подчиненных

Но просто конкретный ведущий, так же как и ведомый, может взаимодействовать по шине в течение указанной передачи данных. Этот микроконтроллер поддерживает полнодуплексную передачу 4–16-битных кадров данных, используемых для потока данных от ведущего-ведомого, а также от ведомого-ведущего.

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

Таймеры и счетчики предназначены для подсчета циклов PCLK (тактовая частота периферийных устройств) и, при необходимости, создания прерываний на основе регистров с 4 совпадениями.

И он включает четыре захвата i / ps, чтобы уловить значение таймера при изменении сигналов i / p. Для выполнения конкретного захвата можно выбрать несколько контактов. Эти микроконтроллеры могут вычислять внешние события на входах захвата, если наименьший внешний импульс эквивалентен. При таком расположении незанятые линии захвата могут быть выбраны как обычные i / ps захвата таймера.

Сторожевой таймер

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

RTC-часы реального времени

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

Контроль мощности

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

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

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

ШИМ-модулятор ширины импульса

ШИМ основаны на обычном блоке таймера и также обладают всеми функциями, хотя простая функция широтно-импульсного модулятора закреплена за микроконтроллерами, такими как LPC2141 / 42/44/46/48.

Таймер предназначен для расчета циклов PCLK (периферийных часов) и, при необходимости, создания прерываний при возникновении определенных значений таймера на основе 7-ми совпадающих регистров, а функция ШИМ также зависит от событий совпадающих регистров.

Возможность индивидуального управления увеличивающимися и уменьшающимися положениями границ позволяет использовать широтно-импульсную модуляцию для нескольких приложений. Например, в типичном многофазном управлении двигателем используются 3 неперекрывающихся выхода ШИМ путем раздельного управления шириной каждого импульса, а также положением.

Автобус ВПБ

Делитель VPB разрешает связь между CCLK (тактовая частота процессора) и PCLK (тактовая частота, используемая периферийными устройствами). Этот разделитель используется для двух целей. Первое использование - снабжение периферийных устройств предпочтительным PCLK с использованием шины VPB, чтобы они могли работать на выбранной скорости процессора ARM. Для этого можно уменьшить тактовую частоту процессора с 1⁄2 до 1⁄4.

Поскольку эта шина должна работать точно при включении питания, а состояние по умолчанию при RST (сброс) - это работа шины на 1/4 тактовой частоты процессора. Во-вторых, это позволяет экономить электроэнергию, когда приложению не требуются периферийные устройства для работы с полной частотой процессора. Поскольку делитель VPB связан с выходом ФАПЧ, он остается активным в течение всего режима ожидания.

Эмуляция и отладка

Микроконтроллер (LPC2141 / 42/44/46/48) поддерживает эмуляцию и отладку через последовательный порт JTAG. Порт трассировки позволяет отслеживать выполнение программы. Функции трассировки и концепции отладки объединены с портом 1 и GPIO.

Безопасность кода

Функция защиты кода этих микроконтроллеров LPC2141 / 42/44/46/48 позволяет функции контролировать, можно ли ее защитить или отладить от проверки.

Таким образом, речь идет об архитектуре микроконтроллера LPC2148 на базе ARM7. Наконец, из вышеприведенной статьи мы можем сделать вывод, что ARM - это архитектура, используемая во многих процессорах, а также микроконтроллерах. Вот вам вопрос, какова архитектура процессора ARM?