Pull to refresh

Реверс-инжиниринг микроконтроллера Atmel Atmega328p

Микроконтроллер ( англ. Micro Controller Unit, MCU)-микросхема, на которой сочетается функции процессора и содержит ОЗУ и ПЗУ на одной системе на чипе. По сути, это однокристальный процессор, на котором размещены все внешние устройства.

Постоянное запоминающее устройство (ПЗУ) — энергонезависимая память, используется для хранения различной информации.

Оперативная память (англ. Random Access Memory, RAM (ОЗУ) —энергозависимая память, в которой во время работы компьютера хранится информация.

Существует несколько разновидностей ПЗУ, предназначенных для различных целей:

  • ROM — (Read-Only Memory, постоянное запоминающее устройство), к примеру, масочное ПЗУ, изготавливается фабричным методом. В дальнейшем нет возможности изменить записанные данные. ROM используется в микроконтроллерах для хранения кода, а также для других целей.

  • PROM — (Programmable Read-Only Memory, программируемое ПЗУ (ППЗУ)) — ПЗУ, однократно программируемое пользователем.

  • EPROM — (Erasable Programmable Read-Only Memory, перепрограммируемое ПЗУ (ПППЗУ)). Например, содержимое микросхемы К573РФ1 стиралось при помощи ультрафиолетовой лампы. Для прохождения ультрафиолетовых лучей к кристаллу в корпусе микросхемы было предусмотрено окошко с кварцевым стеклом.

  • EEPROM — (Electrically Erasable Programmable Read-Only Memory, электрически стираемое перепрограммируемое ПЗУ). Память такого типа может стираться и заполняться данными несколько десятков тысяч раз. Используется в твердотельных накопителях, микроконтроллерах, SPD. Из недостатков – долгое время стирания. Одной из разновидностей EEPROM является флеш-память (Flash Memory).

  • Flash - в переводе с английского «вспышка». Стирание происходит сразу для большого блока ячеек, что позволяет снизить время записи. Иногда выступает в качестве синонима для EEPROM.  

Кроме этого, в составе микроконтроллера чаще всего находятся порты ввода/вывода, таймеры, АЦП, последовательные и параллельные интерфейсы. В некоторых даже можно заметить Wi-Fi-/Bluetooth-модуль и даже поддержку NFC.

Первый патент на микроконтроллер был выдан в 1971 году компании Texas Instruments. Инженеры этой компании предложили размещать на кристалле не только процессор, но и память с устройствами ввода/вывода.

Микроконтроллер Atmel Atmega328p

Параметр

Значение

Тип процессора

8-битный AVR

Флэш-память

32 КБ

SRAM

2 КБ

EEPROM

1 КБ

Количество контактов

28 или 32 контакта:

Максимальная рабочая частота

20 МГц

Внешние прерывания

2

Интерфейс USB

-

Технические характеристики

8-разрядный микроконтроллер Atmel AVR на базе RISC сочетает в себе 32 КБ флэш- памяти ISP с возможностями чтения во время записи, 1 КБ EEPROM , 2 КБ SRAM , 23 линии ввода-вывода общего назначения, 32 рабочих регистра общего назначения , три гибких таймера / счетчики с режимами сравнения, внутренними и внешними прерываниями , последовательным программируемым USART , байтовым 2-проводным последовательным интерфейсом, последовательным портом SPI , 6-канальным 10-битным аналого - цифровым преобразователем (8 каналов в пакетах TQFP и QFN / MLF ) , программируемый сторожевой таймер с внутренним генератором и пять программно выбираемых режимов энергосбережения. Устройство работает в диапазоне 1,8-5,5 вольт. Пропускная способность устройства приближается к 1 MIPS на МГц. 

Микроконтроллер Atmega328p
Микроконтроллер Atmega328p

Микроконтроллер состоит из нескольких вычислительных блоков:

Арифметико-логическое устройство (АЛУ) (англ. arithmetic logic unit, ALU) — блок процессора, который под управлением устройства управления служит для выполнения арифметических и логических преобразований над данными.

 Блок управления процессором (УУ) (control unit, CU) — блок, устройство, компонент аппаратного обеспечения компьютеров. Представляет собой конечный дискретный автомат. Структурно устройство управления состоит из: дешифратора команд (операций), регистра команд, узла формирования (вычисления) текущего исполнительного адреса, счётчика команд. УУ современных процессоров обычно реализуются в виде микропрограммного автомата и в этом случае УУ включает в себя ПЗУ микрокоманд. УУ предназначено для формирования сигналов управления для всех блоков машины.

Сумматорами называют логические устройства, выполняющие арифметические суммирование кодов двоичного числа

Микроконтроллер Atmega328P и Arduino

В классической линейке устройств Arduino в основном применяются микроконтроллеры Atmel AVR. Следующие МК можно встретить на указанных распространённых платах:

  • ATmega2560 (16 МГц, 256к Flash, 8к RAM, 54 порта, из них до 15 с ШИМ и 16 АЦП). Платы Mega.

  • ATmega32U4 (16 МГц, 32к Flash, 2,5к RAM, 20 портов, из них до 7 с ШИМ и 12 АЦП). Платы Leonardo, Micro, Yun.

  • ATmega328 (16 МГц, 32к Flash, 2к RAM, 14 портов, из них до 6 с ШИМ и 8 АЦП). Платы UnoR3, Mini, NanoR2, Pro, Pro mini, различные варианты плат uno и nano, такие как Wifi Uno и nano + nrf42l01

  • ATtiny85 (20Мгц, 8к Flash, 512б RAM, 6 портов, из них 4 ШИМ и 4 аналоговых). Платы Digispark, также часто применяются вне плат.

  • ATmega168(16Мгц, 16к Flash, 1к RAM, порты и распиновка аналогично ATmega328) Платы Uno R1, Uno R2, Pro mini, NanoR1.

Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.