Atmega 328 инструкция на русском

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

ATmega328P — микроконтроллер группы AVR

Устройство atmega328p имеет 28 контактов. Его знает большинство владельцев конструктора Arduino, как главный элемент электронного комплекта. Но на самом деле, функционал устройства намного шире, чем применение в этом конструкторе. И это подтверждается в atmega328p datasheet.

Микрочип ATmega328P

Семейство микроконтроллеров AVR, куда входит atmega328p, сегодня широко применяется при конструировании электроники разного уровня. Среди них не только микроконтроллер ATmega328P, но и схожий по характеристикам 8-контактный ATtiny45, имеющий чуть меньше функций.

Микроконтроллер также является основой Arduino Nano — маленькой отладочной платы, очень распространённой в любительской среде программистов. Это устройство — компактное по размеру, но по характеристикам не уступающее всем известной Arduino Uno. Она запросто включается в проекты, где параметры очень важны.

Распиновка atmega328p

Как правило, программирование указанных устройств ведется с помощью SPI — последовательного периферийного интерфейса. Через шину данных идет ряд сигналов:

  • MOSI — вход поступления данных;
  • MISO — выход ее распространения;
  • SCK — синхронизирующий вход.

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

Распиновка ATmega328P

Как выбрать физический программатор под ATmega328P

Для указанного микроконтроллера есть множество подходящий программаторов. Один из них производится той же фирмой, Atmel и разрабатывался профессионалами. Он называется «Atmel-ICE».

По мнению радиолюбителей, это лучший программатор для прошивки AVR и схожих микросхем. Его можно приобрести в интернет-магазинах наподобие AliExpress, по стоимости от 5 тысяч рублей. Устройство выглядит так:

Atmel-ICE

К сожалению, такая версия не по карману простым любителям электроники. Рациональнее — остановить выбор на usb — программаторе AVR Pocket Programmer. Он стоит намного дешевше профессионального Atmel-ICE. На некоторых сайтах его можно приобрести даже за 200 р, правда, без проверки.

При отсутствии возможности купить простой программатор, можно изготовить его собственноручно. Основу такой схемы составляет чип ATtiny2313. Внешними элементами в ней являются:

  1. Резисторы.
  2. Светодиоды.
  3. Стабилитроны.

Конструкция самодельного устройства — проста и доступна. Желательна буферизация сигнальных линий, но она не обязательна. Для нее в схеме должен находиться буфер. К примеру, его роль может сыграть устройство 74AC125. Оно же входит и в фирменную версию. Вместо него можно применить транзистор.

Схема 1

Программатор не функционирует без usb-драйвера. Поэтому, радиолюбители обзаводятся универсальным инсталлятором для Windows (7 и более высоких версий), который помогает устанавливать общие драйвера. Установка драйвера в ОС желательна до того, как физическая схема atmega328p подключится к компьютеру.

img

Среди часто используемых программаторов — stk500 atmega328p.

Как подключать и программировать микроконтроллер

Устройства группы AVR программируют с помощью интерфейса SPI, сигнальным прохождением сквозь 6 участкоа:

  • электропитание;
  • «земля»;
  • сброс;
  • получение данных;
  • передача;
  • синхронизирование.

Чтобы все перечисленные сигналы перемещались через устройства, нужен 1 из 2 стандартных разъемов, с 6 или 10 контактами. Программаторная atmega328p плата соединяется с ними с помощью шлейфа-кабеля. Ее заводской вариант укомплектован всеми возможными дополнениями.

Схема 2

Для работы вместе с программным инструментом используются 2 вида контактных разъемов SPI.

Фирменная плата оборудована переключателем режимов электропитания. При его помещении в положение Power Target, она получает от usb напряжение 5 В. В противном случае, то есть, режиме No Power на контакте нет питания. Второй вариант применяется, чтобы программировать чипы с невысоким напряжением, от 1,8 до 3,3 В.

В каждый контроллер atmega328p для avrdude встраивается технология bootloader atmega328p. Она считается самым рациональным и правильным вариантом программирования. Так как специализированные программные адаптеры и набор знаний — не обязательны, необходимо подключение классического кабеля от ПК к плате и активацию программы.

При предварительной переконфигурации atmega328p nano или обычной, старт микроконтроллера идёт со специализированого адреса, где, как правило, располагается atmega328p old bootloader. Это является условием запуска, определяемым состоянием перемычки извне, которая подключается к ножке atmega328p для Ардуино.

Использование утилиты AVRDUDE

Рассмотрим инструмент для строки команд в системе Windows. Для его применения нужно нажать всего 2 клавиши: Пуск, а затем, выполнить. После этого выясните уровень готовности утилиты следующей командой:avrdude -c usbtiny -p atmega328p.

Эта комбинация помогает выяснить, подключен ли микроконтроллерный программатор к разъему usb. Чипы из других серий, соответственно, проверяются другими командами.

Если программатор подключен правильно, утилита выведет на экран следующее (см. Рисунок):

Скрин 1

Если микроконтроллер изготавливается по стандартам, в нем присутствуют идентификаторы. Он определяется при первом запуске утилиты. AVRDUDE в ходе проверки сканирует идентификатор чипа.

Микросхемные идентификаторы имеют разный вид, согласно типу AVR. В частности, идентификация ATmega328P выглядит как 0x1E950F. Эти символы выводятся в специальное окно. После проверки работоспособности схемы, идет следующий шаг — чтение и запись программного кода посредством утилиты.

Участок памяти чипа, как правило, прошиваемый, является энергозависимой областью, местом для хранения программ (Flash). Прошивка atmega328p производится с помощью комбинации: avrdude c usbtiny p atmega328p U flash:w:test.hex. Имя файла здесь дано только как пример.

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

Скрин2

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

img

Символ U в команде AVRDUDE для atmega328р — отвечает за просмотр и запись. Им владелец демонстрирует использование atmega328p памяти flash. Эта же опция применяется, чтобы читать информацию в памяти AVR. Приведем пример: в файле test.hex ее можно считать по команде avrdude c usbtiny p atmega328p U flash:r:test.hex:r.

Добавочный символ w указывает на запись, затем, через знак “:” идет имя и местонахождение документа, который и записывается в память.

Работа инструмента возможна лишь с теми документами, у которых есть расширение hex.

Отличия ATmega328 от ATmega328P и ATmega328PU

Обычному пользователю сложно понять, почему маркировка кристаллов отличается, и какой выбрать. Попробуем разобраться:

  1. Для использования в обычных сферах между первыми двумя вариантами — разница небольшая, поэтому возможна взаимозаменяемость.
  2. Энергопотребление ATmega328P — существенно ниже, чем Atmega328. Это описано в параметрических таблицах даташит. О чем это говорит? О том, что при разработке первого варианта применялся более точный технический процесс. Как правило, стоимость этих чипов — выше. У микроконтроллеров категории AVR с низким энергопотреблением, согласно классификации производителя, есть отметка PicoPower. Получается, что для батарейных устройств ATmega328P — выгоднее. В них должны быть использованы контролирующие режимы для уменьшение потребления энергии.
  3. У рассматриваемых вариантов — разные сигнатуры чипов. Поэтому, при использовании программ для их чтения (по аналогии с утилитой avrdude) можно увидеть сообщения об ошибке atmega328p при неправильном указании типа микроконтроллера.
  4. Только Atmega328P может быть оснащен корпусом TQFP32, но не TQFP328. Это зависит от большей толщины кристалла, из-за которой он просто не влезает в данный корпус.
  5. В Atmega328 отсутствует фьюз, блокирующий детектор низкого уровня питания. Во втором варианте данный фьюз присутствует, за счет чего дополнительно снижается потребление энергии и происходит отключение BOD. Наличие такого фьюза возможно только у версий группы picoPower. Их обозначение заканчивается символами 48PA, 88PA, 168 PA, 328 P. То же самое касается фьюзов BODS, BODSE.
  6. Система команд, которые относятся к инструкциям перехода, тоже пусть незначительно, но отличается. При компиляции чипа программы в обоих вариантах — работоспособны.
  7. Буквы PU означают вид кристального корпуса. Это -DIP28 из пластика. В него легко помещается ATmega328, вот и дополняется таким суффиксом. Также варианты корпусов обозначаются буквенными сочетаниям AU, MU.

Можно изготовить Ардуино на основе atmega328p mini. Этот вариант — более простой, чем uno, так как там нет участка USB-to-Serial. Как мы знаем, atmega328p pro mini — это, как правило, вариант atmega328p au. Но для некоторых устройств этот вариант — слишком мал, и туда больше подходит PU.

На основе микроконтроллеров создаётся множество устройств, в том числе, atmega328p тестер-транзистор и контроллер atmega328p nano 3.0.

Led-матрица на основе ATmega328p (самодельный Arduino)

Этот прибор может украсить полку любого пользователя и радиолюбителя.

Составляющие элементы

Сначала нужно собрать все необходимые детали. Нам понадобится:

  1. 7 резисторов с сопротивлением 150 Ом.
  2. 5 конденсаторов (50 В, 1 мкФ ).
  3. Резонатор из кварца (16 МГЦ).
  4. Разъём-гребенка с 18 контактами.
  5. Регистор сдвига с DIP-корпусом.
  6. Микросхемная панель 74ch595 с 16 ножками.
  7. 35 световых диодов (3 В).
  8. Непосредственно микроконтроллер в корпусе DIP.
  9. Плата для монтажа 5*7.

Обзаведитесь флюсом, припоем и паяльником, оптимальными проводами, например, МГТФ.

Регистр сдвига

Принцип действия микросхемы 74ch595 — довольно сложен для понимания. Ее основное предназначение — увеличение числа пинов.

74ch595

В схеме есть несколько основных регулирующих контактов: вывода (DS), определения напряжения на выводе (SH), записи состояния в DC, открытия и закрытия микросхемы путем установки контактов в нужное положение (ST).

Последнее, что нужно узнать, — это код для функционирования микросхемы.

Как подготовить матрицу

Иногда светодиодам не хватает места на плате, и тогда нужна обточка мелкой окантовки. Делайте ее аккуратнее, так как световые диоды — довольно хрупкие элементы.

Не забудьте о конденсаторах! При их отсутствии световые диоды погаснут, что помешает оптимизации устройства.

Резисторов, как уже было указано, в конструкции — 7, но видно только 6, так как 1 расположен напрямую под микросхемой.

Вместо генератора с частотой 16 МГц можно использовать имеющий 24 МГц, для ускорения работы. Но такую корректировку можно сделать только в готовом устройстве. Дело в том, что прошивка ATmega328p на генераторе с большей частотой — невозможна.

Расположение светодиодов таково:»+» к 74ch595, «-» — ATmega328p.

img

После запайки всех составляющих можно перейти к припаиванию проводов. Соедините все контакты со световыми диодами, элементы питания — с генератором, световые диоды — с микросхемой 74ch595.

Конечно, не прошитое устройство мгновенно не заработает, однако, можно попробовать воспользоваться классическим blink Arduino. При определённых условиях — может сработать. При мигании света в 1-м ряду можно считать, что эксперимент удался.

Для возможности влияния микроконтроллера на контакты, нужна их инициализация. В противном случае, актуально было бы использование массива и цикла для сокращения функционального кода.

В устройстве обязательно должна быть динамическая память, при отсутствии которой оно просто зависнет.

Как выбрать источник электропитания

Этот момент нужно учесть в первую очередь. Например, выбрать в качестве электроисточника ноут или персональный компьютер — не лучшая идея. Конечно, кое-как при таких пульсациях конструкция какое-то время поработает, но стабильности не ждите.

Конечно, слабая работа прибора, созданного на микроконтроллере, может объясняться неправильным прошивочным кодом, проблемой с контактами на плате. Но если вы меняете источник питания, и работа возобновляется, дело в нем.

Не все сетевые варианты здесь подходит, гораздо выгоднее — использование автономного питания. Например, подойдут и литий-ионные аккумуляторы для питания мобильников.

А поскольку, согласно технической инструкции, чтобы контроллер ATmega328p при 16 МГц, нужно напряжение около 5 В, здесь не обойтись без модуля преобразователя, который повышает напряжение.

ATMEGA328 Микроконтроллер 8 Справочное руководство пользователя

ATMEGA328 Справочное руководство пользователя Микроконтроллер 8

ATMEGA328P-AU

Справочное руководство пользователя

68 Страницы
ATMEL

RISC Microcontroller, 8Bit, FLASH, AVR RISC CPU, 20MHz, CMOS, PQFP32, 7 X 7MM, 1MM HEIGHT, 0.8MM PITCH, GREEN, PLASTIC, MS-026ABA, TQFP-32

ATMEGA328P-MU

Справочное руководство пользователя

185 Страницы
ATMEL

RISC Microcontroller, 8Bit, FLASH, AVR RISC CPU, 20MHz, CMOS, PQCC32, 5 X 5MM, 1MM HEIGHT, 0.5MM PITCH, GREEN, PLASTIC, MO-220VHHD-2, MLF-32

ATMEGA328P-PU

Справочное руководство пользователя

185 Страницы
ATMEL

8Bit Microcontroller with 4/8/16/32K Bytes In-System Programmable Flash, No. of I/O»s: 23, Program Memory Size: 32KB, EEPROM Memory Size :1.024KB, RAM Memory Size: 2KB, CPU Speed: 20MHz, PDIP-28

ATMEGA328-AU

Справочное руководство пользователя

68 Страницы
ATMEL

RISC Microcontroller, 8Bit, FLASH, AVR RISC CPU, 20MHz, CMOS, PQFP32, 7 X 7MM, 1MM HEIGHT, 0.8MM PITCH, GREEN, PLASTIC, MS-026ABA, TQFP-32

ATMEGA328-PU

Справочное руководство пользователя

68 Страницы
ATMEL

MCU 8Bit ATmega AVR RISC 32KB Flash 2.5V/3.3V/5V 28Pin PDIP

ATMEGA328P-15AZ

Справочное руководство пользователя

185 Страницы
ATMEL

MCU 8Bit ATmega AVR RISC 32KB Flash 3.3V/5V 32Pin TQFP

ATMEGA328P-XMINI

Справочное руководство пользователя

20 Страницы
ATMEL

ATmega328P Microcontroller Evaluation Kit 8MHz/16MHz CPU

ATMEGA328PB-XMINI

Справочное руководство пользователя

21 Страницы
ATMEL

Dev.kit: AVR; ATMEGA328PB; In the set: prototype board; USB

Еще ATMEGA328 Справочное руководство пользователя >

Поиск в формате PDF Даташит

Поиск

100 миллионов листов данных в формате PDF, обновляйте более 5000 файлов PDF в день.

Introduction: Getting Started With the ATMega328P

In the Internet of Things movement, people across the globe are connecting their stuff – TVs, pets, even houseplants — to the internet and transmitting all sorts of data.

If you’re going to be a part of that movement, or want to dabble in creative prototyping on a budget, it’s important to get to know our little friend:

The ATMega.

The real benefit of using this microcontroller is that it’s only $4 US, whereas many other micro-controllers are 10X that price. It can also be easily programmed in the universal programming language, C++. The ATMega is also equipped with a decent amount of memory for any project.

Photo by Will Carlson.

Step 1: Application for the ATMega

Applications for the ATMega continue to grow across the global tech sphere. Today, it’s mostly used in simple machines to receive, interpret, and output information. You may have seen the ATMega used in small machines like RC cars and robots. It can make them autonomous and allow these devices to get from point A to point B on their own.Thus, for its size and its cost, this is a powerful little device. Jaycon Systems is here to equip you with the know-how to put it to use!

For our demo, we’ll use the basic 5V power supply created by founder and friend, Jay. Above you can see a picture of the circuit.

Step 2: Materials

Step 3: Set-up

The ATMega328P is a microcontroller with 23 IO pins, two 8-bit internal clocks, and 32kB of flash memory.
To begin, notice the notch that indicates the direction of the chip — and the dot that indicates Pin 1. All pins that follow suit are in regular numerical order. If you are having trouble with the layout, check out the ATMega328P Datasheet for more information regarding the connections, and the ATMega’s abilities.

Step 4: Set-up — Continued

Add a wire from Power to Pin 7 (Power) and a wire from Pin 8 to Ground.

Then, add the 0.1µF Ceramic Capacitor to Pin 7 and Ground.

Step 5: Set-up — Continued

Add a LED to the first available row next to Pin 1 that is not already being used by the ATMega.

Add a 330 Ohm Resistor from Pin 1 to Power. Pin 1 is the reset pin.

Then, add another 330 Ohm Resistor from Pin 4 to the row that the LED is connected to.
You have now powered the LED.

Note: The power applied from the Resistor to Pin 1 controls what “LOW” should be so the ATMega doesn’t constantly reset itself. The LED also needs the resistor so the ATMega doesn’t kill the LED.

Step 6: Set-up — Continued

The ATMega’s clock is slow and unreliable because it’s not constant.

Let’s add a crystal clock that will speed it up and make the ATMega more reliable.

Add the Quartz crystal clock to Pins 9 and 10. Then, add a 0.1 µF 50V Ceramic Capacitor from Pin 9 to Ground, and another one from Pin 10 to Ground.

(Note: It’s important to not power the ATMega with the clock already installed unless it has been flashed first.)

Step 7: Set-up — Continued

You now have a working circuit, and need the programmer.

Solder the programming adapter together and place it on the board.

Make sure that you place parts in the correct direction, and be careful handling hot tools.

Step 8: Set-up — Continued

The next step is to wire the programming adapter.
You can take any path to wire it in, as long as you use the correct pins.

Optional: If you are going to power your ATMega with the programming adapter, then wire from the “GND” and “+5V” pins on the adapter, across to the power rails.

Here is the Pin map for wiring the rest of the adapter: 17 to MOSI; RST to 1; 19 to SCK; and 18 to MISO.

The USBTiny has a small switch on it labeled “NO POWER” and “POWER TARGET”.
To power the ATMega from the USBTiny, set it to “POWER TARGET”.
Not interested? Simply set it to “NO POWER” to avoid unintentional destruction.

Step 9: Test the Set-up

Now that we have the board completely built, let’s program it so we can make the LED blink.
Once it blinks, you know that you have properly built the board.

Ready for the next steps?
First, we need to make the ATMega use the clock that was just installed.
Download and install WinAVR from this page.

WinAVR is a full suite with a compiler, programmer, debugger, and more!

Use these for the USBTiny. It will include Programmer’s Notepad, which is what we are going to use to program the ATMega, the AVRDude, and will burn fuses and act as a backup for programming the ATMega.

Find “Run” on your computer, type in “cmd” and click “OK”.

Type “avrdude -c usbtiny -p m328p -B 25 -U lfuse:w:0xFF:m -U hfuse:w:0xDE:m -U efuse:w:0x05:m”

-C identifies the programmer “usbtiny”

-P identifies the chip being programed “m328p” (short for ATMega328p)

-B sets the clock rate. We are setting it to 25 because the current clock is much slower than the clock on the programmer.

-U Is a memory operation, lfuse selects the low fuse, w tells the program to write it, and the hex code (0x##) is the fuse value.

This is repeated for the high fuse and extended fuse.

Step 10: Understanding Hex Codes

Hex codes may look intimidating, but they are really just counting, using an extended list from 0–15, starting with 0–9, and then continuing with a-f (filling the 10–15 places). The 0x in front of each code is how the software knows that it is reading a new value, because it never uses “0x”.

Step 11: Understanding Hex Codes — Continued

What happens if you want to count a number bigger than 15?
Hex, like normal math, just counts up, rounding back to 1 followed by a 0; so 10 means 16, 11 means 17, and so on, like normal counting, but with more digits.

So 0xd3 just says 211, and if you want to say 75, just write 0x4b.

Step 12: Understanding Hex Codes — Continued

This sets the necessary fuses the chip needs for the clock without killing itself. Once it is done, we are going to use Programmer’s Notepad to allow you to do a lot more with the chip than what you can do using Arduino.

Once the fuses have been burned, download and install WinAVR from this page. WinAVR is a full suite with a compiler, programmer, debugger, and more! We will use these for the USBTiny. It will include Programmer’s Notepad, which is what we are going to use to program the ATMega.

Step 13: Code to Blink the LED

Now we are going to create a .c file, which will contain the code that will blink the LED, and a makefile to specify what microcontroller we are using among other things.

Open Programmers Notepad and type in the following code:

#include <avr/io.h> // This contains the definitions of the terms used
#include <util/delay.h> // This contains the definition of delay function
 
void main()
{
DDRD = 0b00000100; // Port D2 (Pin 4 in the ATmega) made output 
PORTD = 0b00000000; // Turn LED off
 
while(1)
{
PORTD = 0b00000100; //Turn LED on
_delay_ms(200); // delay of 200 millisecond
PORTD = 0b00000000; //Turn LED off
_delay_ms(200); // delay of 200 millisecond
}
}

Now save the file as led.c (you can choose a different name if you want as long as it has the .c extension).

It is recommended to create a new folder to save all your WinAVR projects.

For example, we created a folder in the desktop called AVR. The led.c file is then saved inside a folder called LED_blink within the AVR folder.

Step 14: Create the Makefile

The next step is to create the makefile.

Open Mfile and follow these steps:

1. Click MakeFile -> Enable Editing of Makefile. This will allow you to modify the text within the Makefile.

2. Click MakeFile -> Main file name. This will open a small window in which you need to type the name of the file you created using Programmers Notepad without the .c extension. In this example we simply typed led and then clicked OK.

3. Since we are using a 16MHZ Quartz Crystal Clock we need to specify the processor frequency. This is done by changing F_CPU = 8000000 to F_CPU = 16000000 (we are only changing the last F_CPU that does not have a “#.” Leave the other ones as they are).

4. Click MakeFile -> MCU type -> ATMega -> atmega328p. This specifies the microcontroller that we are using.

5. Click MakeFile -> Port -> USB.

6. Scroll to the section” Programming Options (avrdude)” and change AVRDUDE_PROGRAMMER to USBtiny.

7. Save the file in the same folder where you saved the led.c file (DesktopAVRLED_Blink). Make sure you don’t change the name of the file (Makefile). Leave it as it is.

Step 15: Make Our LED Blink

Now we can upload the code to make our LED blink. Open the led.c file and do the following:

1.Click Tools -> Make All

2.Click Tools -> Make Clean

3.Click Tools -> Program

You can now disconnect the AVR ICSP Programming Adapter and use the 5V power supply. Your LED should be blinking now, like in the video above.

The command “make all” compiles and checks all the software from the two tabs, while “program” programs the ATMega with the newly compiled software. “Make clean” removes all previously created temporary files. It gets you ready for an entire new compile. This is nice because it allows you to compile the software once, and then program multiple chips, one after the other, without going through the whole process again! Trust me, you will be thankful once you start making bigger programs.

Step 16: Explaining the Code

#include <avr/io.h> declares the appropriate Input/Output definitions. For instance, including this header file allows us to use “DDRD” to set port D as an output.

#include <util/delay.h> declares the basic busy-wait functions. This allows us to use the function _delay_ms() to create a delay in millisecond. The argument of the function states the number of milliseconds that we want to wait.

You may notice a semicolon (;) after every line of code. The semicolon tells the program that this is the end of the command. The reason you need this is because when the program reads it, it doesn’t see multiple lines from when you hit “Enter” or “Space”. Instead, it sees it all as one continuous, massive line of code, so it needs the semicolon to know when to start interpreting a different command.

“while(1)” is a simple way of making a continuous loop. The “while” command repeats everything inside the “{ }” immediately after it as long as the statement in the “( )” is true. Because it has been set to “1”, with no real variables or math, the statement will always be true.

The phrase “PORTD = 0b000000100;” translates into “Turn on Port D, number 2”, which corresponds to pin 4 of our microcontroller as seen in the picture above.

Each bit number represents a pin in a port. As you can see Port D has 8 pins: D0 -D7. So saying “PORTD = 0b00000100” is really this “PORTD = 0bD7D6D5D4D3D2D1D0.” Placing a one in one of the port’s pins drives the pin high, while placing a zero drives the pin low.

Step 17: In Conclusion…..

You may need something smaller, or need something to handle more data; otherwise, the Mega can do anything that your average project would require. It’s rare that anything will overpower the ATMega.

For micro projects, or wearable electronics, turn to the AT Tiny.

If you have any questions about this tutorial, don’t hesitate to post a comment, shoot us an email, or post it in our forum!

When you’re ready to start your project, check Jaycon Systems online store for your component needs. While you’re on our website, check out the other great tutorials we have available, and, if you have not already, the other Instructables on our profile.

Thanks for reading!

Let us know what you create!

ATmega48A/PA/88A/PA/168A/PA/328/P

Особенности

  • Высокая производительность, низкое энергопотребление
  • Улучшенная RISC-Архитектура

— 131 мощная команда — большинство которых выполняется за один такт ЦПУ

— 32 x 8 регистра общего назначения

— Полностью статическая операция

— Производительность до 20 МИЛЛИОНОВ КОМАНД В СЕКУНДУ на 20 МГЦ ЦПУ

— Внутрикристальный 2-цикловый множитель

  • Энергонезависимая память данных и программ

— 4/8/16/32 кБ внутрисистемной энергонезависимой ФЛЭШ-памяти программ

— 256/512/512/1 кБ EEPROM ПЗУ

— Количество циклов запись/стирание: 10,000 Flash/100,000 EEPROM

— Хранение данных: 20 лет при температуре 85 °C/100 лет при температуре 25 °C

— Дополнительный загрузочный раздел независимыми блокировочными битами

• В системе программирования внутренних загрузочных программ

• Истинность Read-While-Write операции

— Программная блокировка для обеспечения безопасности

  • Поддержка библиотеки Atmel® QTouch®

— Емкостные сенсорные кнопки, слайдеры и колеса прокрутки

— Технологии QTouch и QMatrix®

— До 64 сенсорных канала

  • Периферийные характеристики

— Два 8-битных Таймера/Счетчика с Отдельным Предделителем частоты и Режимом сравнения

— Один 16-битный Таймер/Счетчик с Отдельным Предделителем частоты и Режимом сравнения и Режимом захвата

— Счетчик реального времени с отдельным генератором

— Шесть ШИМ-каналов

— 8-канальный 10разрядный АЦП в корпусах TQFP и QFN/MLF

• Измерение температуры

— 6-канальный 10разрядный АЦП в корпусе PDIP

• Измерение температуры

— Программируемый последовательный интерфейс USART

— Последовательный интерфейс  SPI Master/Slave

— Байтно-ориентированный последовательный интерфейс (совместим с I2C Philips)

— Программируемый Сторожевой Таймер со встроенным Генератором

— Встроенный аналоговый компаратор

— Прерывание и пробуждение по изменению на выводах

  • Дополнительные характеристики микроконтроллера

— Схема сброса при подаче питания и программируемое обнаружение провалов по напряжению

— Внутренний калиброванный генератор

— Шесть режимов сна: холостой ходснижение шумов АЦП, экономии энергии, выключение питания, режим ожидания и расширенный режим ожидания

  • Ввод/вывод и типы корпусов

— 23 программируемые линии ввода/вывода

— Корпус PDIP 28 выводов, корпус TQFP 32 вывода, корпус QFN/MLF с 28 и 32 выводами

  • Рабочее напряжение:

— от 1.8 до 5.5 В

  • Температурный диапазон:

-от -40°C до 85°C

  • Производительность:

— 0 — 4 МГц при 1.8 — 5.5 В, 0 — 10 МГц  при 2.7 — 5.5 В, 0 — 20 МГц при 4.5 — 5.5 В

  • Потребляемый ток при 1 МГц, 1.8 В, 25 °C

— Активный режим: 0.2 мА

— Режим отключения: 0.1 мкА

— Режим энергосбережения: 0.75 мкА (Включая 32 кГц RTC)

Купить ATmega328 на Алиэкспресс

Купить ATmega328 на Алиэкспресс

Скачать полную техническую документацию к ATmega328

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Группа компонентов

AVR

Основные параметры

ЦПУ: Ядро

AVR

ЦПУ: F,МГц

от 0 до 20

Память: Flash,КБайт

32

Память: RAM,КБайт

2

Память: EEPROM,КБайт

1

I/O (макс.),шт.

23

Таймеры: 8-бит,шт

2

Таймеры: 16-бит,шт

1

Таймеры: Каналов ШИМ,шт

6

Таймеры: RTC

Да

Интерфейсы: UART,шт

1

Интерфейсы: SPI,шт

1

Интерфейсы: I2C,шт

1

Аналоговые входы: Разрядов АЦП,бит

10

Аналоговые входы: Каналов АЦП,шт

8

Аналоговые входы: Быстродействие АЦП,kSPS

76.9

Аналоговые входы: Аналоговый компаратор,шт

2

VCC

от 1.8 до 5.5

ICC,мА

40

TA,°C

от -40 до 85

Корпус

PDIP-28

MLF-32

TQFP-32


Datasheet

ATmega48P/V, ATmega88P/V, ATmega168P/V, ATmega328P/V (4.2 Мб), 18.10.2007


Производитель


Где купить

Дистрибуторы

Дилеры

Где купить ещё

Понравилась статья? Поделить с друзьями:
  • Atlanta dainty мультиварка инструкция по применению
  • Atlant холодильники инструкция по применению
  • Atlant холодильник 2 компрессора инструкция
  • Atlant хм 6023 031 инструкция
  • Atlant хм 4208 000 инструкция