Atmega8 распиновка – Даташит на русском Atmega8 | Практическая электроника

Даташит на русском Atmega8 | Практическая электроника

Что такое даташит

Даташит – это техническое описание на какой-либо радиокомпонент. Где его найти? Ну, конечно же, в интернете! Так так почти вся радиоэлектронная продукция выпускается “за бугром”, то и описание на них, соответственно, “забугорское”, а точнее, на английском языке. Те, кто хорошо дружит с разговорным английским, не факт, что сможет прочитать технические термины в даташитах.

Даташит на английском на Atmega8

Давайте попробуем пролить свет истины на основные характеристики МК ATmegа8. Для этого качаем даташит. В нашей статье мы будем рассматривать только основные сведения нашего подопечного.

Вот что мы видим на первой странице даташита:

 

Даташит на русском  Atmega8

Запоминаем правило: в фирменном описании нет ни одного лишнего слова! (иногда информации не хватает, но это уже другой случай)

Features. Переводится как “функции”. В среде электронщиков просто “фичи”.

– High Performance, Low Power AVR® 8-Bit Microcontroller

Высокопроизводительный, потребляющий мало энергии, 8-битный микроконтроллер.

Понимаем как рекламу, единственно полезное то, что данный микроконтроллер — 8 битный.

– Advanced RISC Architecture

Расширенная RISC архитектура.

RISC и CISC — технологии построения процессорных систем. Но нам это не важно, по крайней мере, пока.

– 130 Powerful Instructions – Most Single Clock Cycle Execution

130 команд, большинство из них выполняются за один цикл.

А вот это уже интереснее! Во-первых, такое большое количество команд (например, у микроконтроллеров PIC всего 35 команд) уже подразумевает ориентацию этого МК под языки высокого уровня. Во-вторых, узнаем, что одна команда выполняется за один такт генератора. Т.е., при тактовой частоте 1 МГц одна команда будет выполняться 1 микросекунду (1 мкс, одну миллионную часть секунды — 10^-6). А при 10 МГц — в десять раз быстрее, т.е., 0,1 мкс.

– 32 x 8 General Purpose Working Registers

32 восьмибитных регистра общего пользования.

Про регистры поговорим позднее, просто запомним, что большое количество регистров — весьма неплохо, ведь регистр — это ячейка памяти в самом МК. А чем больше такой памяти – тем «шустрее» работает МК!

Объединив эти данные с количеством поддерживаемых микроконтроллером команд, в очередной раз убеждаемся в изначальной ориентации данного МК под высокоуровневые языки вроде Си, Паскаля и других.

– Fully Static Operation

Полностью статическая структура.

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

(Также нелишним будет напомнить о том, что потребляемая мощность большинства типов МК напрямую зависит от тактовой частоты: чем выше тактовая частота, тем больше он  потребляет)

– Up to 16 MIPS Throughput at 16 MHz

До 16 миллионов выполняемых команд при тактовой частоте 16 МГц.

За одну секунду при тактовой частоте 16 МГц может быть выполнено до 16 000 000 команд! Следовательно, одна однобайтовая команда может быть выполнена за 0,07 мкс. Весьма недурно для маленькой микросхемы.

С учетом предыдущего пункта понимаем, как работает на частотах от 0 Гц до 16 МГц.

– On-chip 2-cycle Multiplier

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

Ну, это хорошо. Даже очень. Но мы пока не будет вгрызаться в эти нюансы…

– High Endurance Non-volatile Memory segments

Надежная энергонезависимая память, построенная в виде нескольких сегментов.

Вспоминаем типы памяти: EEPROM и FLASH.

– 8KBytes of In-System Self-programmable Flash program memory

– 8 Кбайт встроенной в МК памяти. Память выполнена по технологии Flash. В самом МК имеется встроенный программатор.

Этот объем весьма хорош! Для обучения (да и не только) — с запасом. А наличие встроенного программатора этой памяти, позволяет загружать данные в память, используя простой внешний программатор (в простейшем случае это пять проводков, которыми микроконтроллер подключают к

LPT порту компьютера).

– 256 Bytes EEPROM

В МК имеется 256 байт энергонезависимой памяти EEPROM.

Следовательно, можно сохранить еще дополнительную информацию, которую можно изменять программой МК, без внешнего программатора.

– 1024 Bytes Internal SRAM

В МК имеется 1024 байт оперативной памяти (ОЗУ/RAM).

Также весьма приятный объем

– Write/Erase cyles: 10,000 Flash/100,000 EEPROM

Память Flash выдерживает 10 000 циклов записи/стирания, а память EEPROM — до 100 000

Проще говоря, программу в МК можно изменять до 10 000 раз, а свои данные в 10 раз больше.

– Data retention: 20 years at 85°C/100 years at 25°C

Сохранность данных в памяти МК — до 20 лет при температуре хранения 85°C, и 100 лет — при температуре 20°C.

Если ваши внуки и правнуки включат вашу «мигалку» или музыкальную шкатулку, то они смогут насладиться их работой ))

– Optional Boot Code Section with Independent Lock Bits

– Programming Lock for Software Security

МК имеет несколько областей памяти (не уточняем каких), которые можно защитить от прочтения установкой специальных бит защиты.

Ну, тут всё понятно: свои труды вы можете защитить от вычитывания программы из памяти МК.

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

– Two 8-bit Timer/Counters

– One 16-bit Timer/Counter

В МК имеется два таймера/счетчика: 8 и 16 бит.

– Three PWM Channels

Три канала ШИМ

– 8-channel ADC in TQFP and QFN/MLF package

Eight Channels 10-bit Accuracy

– 6-channel ADC in PDIP package

Six Channels 10-bit Accuracy

В составе МК есть несколько каналов АЦП: 6 – для корпуса PDIP и 8 – для корпуса QFN/MLF. Разрядность АЦП — 10 бит.

– Byte-oriented Two-wire Serial Interface

– Programmable Serial USART

В данном МК реализован аппаратный двухпроводный интерфейс связи USART, байт ориентированный и программируемый — имеется возможность настройки параметров интерфейса.

Master/Slave SPI Serial Interface

Реализован SPI интерфейс связи, режимы Мастер/Подчиненный.

– Programmable Watchdog Timer with Separate On-chip Oscillator

Сторожевой таймер с собственным автономным генератором.

– On-chip Analog Comparator

Аналоговый компаратор.

– Power-on Reset and Programmable Brown-out Detection

Реализованы режимы контроля напряжения питания и защита работы МК при плохом питании (гарантирует увеличение надёжности работы всей системы).

– Internal Calibrated RC Oscillator

Встроенный калиброванный RC-генератор (можно запустить МК без внешних элементов).

– External and Internal Interrupt Sources

Реализовано несколько типов внешних и внутренних прерываний.

– Five Sleep Modes

Пять режимов «сна» (уменьшение энергопотребления МК за счет отключения некоторых внутренних узлов или специальных методов замедления их работы)

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

– 28-pin PDIP, 32-lead TQFP, 28-pad QFN/MLF and 32-pad QFN/MLF

Указаны типы корпусов, в которых выпускается данный микроконтроллер. Видим «28 DIP» — это хорошо! Не надо покупать специализированные дорогостоящие панели и мучиться с тоненькими и часто расположенными выводами на корпусе МК.

Temperature Range:

 -40°C to 85°C

Рабочая температура: -40°C … +85°C

Очень важный параметр! Бывают модели микроконтроллеров, которые работоспособны только при положительных температурах окружающего воздуха.

(Был у меня горький опыт, когда в устройстве был применен именно такой «теплолюбивый» микроконтроллер. А устройство поместили на улицу… И каждую зиму «благодарные» пользователи моего устройства «хвалили» меня за «замерзание» микроконтроллера, которое проявлялось в виде полного его зависания)

Напряжение питания и тактовая частота

– 2.7 – 5.5V for ATmega8L

– 4.5 – 5.5V for ATmega8

Имеется две модификации данного МК: одна работоспособна при широком диапазоне питающих напряжение, вторая — в узком.

ATmega8L: 0 – 8 MHz @ 2.7 – 5.5V

ATmega8: 0 – 16 MHz @ 4.5 – 5.5V

Максимальная тактовая частота:

– Atmega8L: 0 – 8 МГц при напряжении питания 2,7 – 5,5 вольт

– Atmega8: 0 – 16 МГц при напряжении питания 4,5 – 5,5 вольт.

И что мы видим? А то, что модификация МК, работоспособная в широком диапазоне питающих напряжений, не может быть тактируема частотами выше 8 МГц. Следовательно, и ее вычислительные возможности будут ниже.

Power Consumption at 4 Mhz, 3V, 25°C

– Active: 3.6 mA

– Idle Mode: 1.0 mA

– Power-down Mode: 0.5 µA

Потребляемая мощность:

– при работе на частоте 4 МГц и напряжении питания 3 вольта потребляемый ток: 3,6 миллиампер,

– в различных режимах энергосбережения потребляемый ток: от 1 миллиампер до 0,5 микроампера

Распиновка Atmega8

На следующей странице публикуется расположение выводов данного микроконтроллера при использовании разных типов корпусов:

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

Внимание!

Обратите внимание на такой факт: микросхема микроконтроллера может иметь (и имеет в данной модели) несколько выводов для подключения источника питания. То есть имеется несколько выводов для подключения «земли» — «общего провода», и несколько выводов для подачи положительного напряжения.

Изготовители микроконтроллеров рекомендуют подключать соответствующие выводы вместе, т.е., минус подавать

на все выводы, помеченные как Gnd (Ground — Земля), плюс — на все выводы помеченные как Vcc.

При этом через одинаковые выводы МК не должны протекать токи, так как внутри корпуса МК они соединены тонкими проводниками! То есть при подключении нагрузки эти выводы не должны рассматриваться как «перемычки».

Блочная диаграмма

Листаем описание далее, видим главу «Overview» (Обзор).

В ней имеется раздел «Block Diagram» (Устройство). На рисунке показаны устройства, входящие в состав данного микроконтроллера.

Генератор тактовой частоты

Но самым важным для нас в настоящее время является блок «Oscillator Circuits/Clock Generation» (Схема генератора/Генератор тактовой частоты).

В программе часто возникает необходимость сделать временную задержку в ее выполнении — паузу. А точную паузу можно организовать только методом подсчета времени. Время считаем исходя из количества тактов генератора микроконтроллера.

Да и не лишним будет заранее просчитать: успеет ли МК выполнить тот или иной фрагмент программы за отведенное для этого время.

В даташите ищем соответствующую главу: «System Clock and Clock Options» (Тактовый генератор и его параметры). В ней видим раздел «Clock Sources» (Источники тактового сигнала), в котором имеется таблица с перечнем видов тактовых сигналов. В этом разделе указано, что данный МК имеет встроенный тактовый RC-генератор. В разделе «Default Clock Source» имеется указание о том, что МК продается уже настроенным для использования встроенного RC-генератора. При этом тактовая частота МК — 1 МГц.

Из раздела «Calibrated Internal RC Oscillator» (Калиброванный RC-генератор) узнаем, что встроенный RC-генератор имеет температурный дрейф в пределах 7,3 — 8,1 МГц. Может возникнуть вопрос: если частота встроенного тактового генератора 7,3 — 8,1 МГц, то как была получена частота 1 МГц? Дело в том, что тактовый сигнал попадает в схемы микроконтроллера через

программируемый делитель частоты (Об это рассказано в разделе «System Clock Prescaler»).

В данном микроконтроллере он имеет несколько коэффициентов деления: 1, 2, 4 и 8. При выборе первого мы получим частоту самого тактового генератора, при включении последнего — в 8 раз меньше, т.е., 8/8=1 МГц. С учетом вышесказанного получаем, что тактовая частота данного МК при включенном делителе с коэффициентом 8 будет в пределах от 7,3/8 = 0,9125 МГц (9125 КГц) до 8,1/8 = 1,0125 МГц.

Обратите внимание на один ну очень важный факт: стабильность частоты дана при температуре МК 25 градусов по шкале Цельсия. Вспомним, что внутренний генератор выполнен по RC схеме. А емкость конденсатора очень зависит от температуры!

Конденсаторы по питанию

Перед тем, как подать на микроконтроллер питающее напряжение, выполним правило, которое обязательно для всех цифровых микросхем: в непосредственной близости от выводов питания микросхемы должен быть керамический конденсатор емкостью 0,06 — 0,22 мкф. Обычно устанавливают конденсатор 0,1 мкф.

Его часто называют блокировочным конденсатором.

В схему необходимо установить и электролитический конденсатор емкостью 4-10 мкф. Он также является блокировочным фильтром, но на менее высоких частотах. Такой конденсатор можно устанавливать один для нескольких микросхем. Обычно на 2-3 корпуса микросхем.

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

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

Конденсатор для постоянного тока является изолятором. Но при установке конденсатора в цепи с непостоянным током он делается сопротивлением. Чем выше частота, тем меньшее сопротивление оказывает конденсатор. Следовательно, блокировочный конденсатор с малой емкостью пропускает через себя (шунтирует) высокочастотные сигналы (десятки и сотни Герц), а конденсатор с бОльшей емкостью — низкочастотные. Об этом я писал еще в статье Конденсатор в цепи постоянного и переменного тока

Выводы

микроконтроллер AVR ATmega-8 при поставке с завода работает на тактовой частоте 0,91—1,1 МГц;

напряжение питания должно быть в пределах 4,5 — 5,5 Вольт. Мы будем использовать микросхемы с питающим напряжением 5 Вольт, поэтому и МК будет питаться этим же напряжением. (Хотя работоспособность сохранится при напряжении питания 2,7 Вольт для обычных, не низковольтных моделей МК)

www.ruselectronic.com

Arduino ATtmega8: плата, характеристики, распиновка

Микроконтроллеры – отличная основа для большого количества устройств. По сути своей они напоминают компьютер: постоянная память; оперативная память; вычислительное ядро; тактовая частота.

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

Родилась Arduino ATmega8, на основе которой можно собрать очень удобное и простое устройство.

Arduino NG - вариант платы Arduino на микроконтроллере ATmega8

С этими платами от Ардуино вы получаете целый ряд преимуществ:

  • готовая разведенная печатная плата со всеми необходимыми компонентами и разъёмами;
  • микроконтроллеры Atmega;
  • возможность программировать без программаторов – через ЮСБ порт;
  • питание от любого источника 5-20 вольт;
  • простой язык программирования и возможность использования чистой C AVR без переделок платы и прошивки.

Характеристики чипа

  • Частота ATmega8: 0-16 МГц
  • Напряжение ATmega8: 5 В
  • Частота ATmega8L: 0-8 МГц
  • Частоат ATmega8A: 0-16 МГц

В реальности почти все микроконтроллеры при рабочем напряжении в 5 вольт работают с частотой 16 мегагерц, если участвует внешний кварцевый резонатор. Если брать внутренний генератор, то частоты составят: 8, 4, 2 и 1 МГц.

Распиновка Arduino ATmega8

Ниже приводим распиновку атмега8, которую можно также найти на официальном сайте производителя:

Добавление устройств АТмега

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

Вносим следующие изменения в файл hardware/arduino/boards.txt:

atmega8o.name=ATmega8 (optiboot 16MHz ext)
atmega8o.upload.protocol=arduino
atmega8o.upload.maximum_size=7680
atmega8o.upload.speed=115200
atmega8o.bootloader.low_fuses=0xbf
atmega8o.bootloader.high_fuses=0xdc
atmega8o.bootloader.path=optiboot50
atmega8o.bootloader.file=optiboot_atmega8.hex
atmega8o.bootloader.unlock_bits=0x3F
atmega8o.bootloader.lock_bits=0x0F
atmega8o.build.mcu=atmega8
atmega8o.build.f_cpu=16000000L
atmega8o.build.core=arduino:arduino
atmega8o.build.variant=arduino:standard

##############################################################

a8_8MHz.name=ATmega8 (optiboot 8 MHz int)
a8_8MHz.upload.protocol=arduino
a8_8MHz.upload.maximum_size=7680
a8_8MHz.upload.speed=115200
a8_8MHz.bootloader.low_fuses=0xa4
a8_8MHz.bootloader.high_fuses=0xdc
a8_8MHz.bootloader.path=optiboot
a8_8MHz.bootloader.file=a8_8MHz_a4_dc.hex
a8_8MHz.build.mcu=atmega8
a8_8MHz.build.f_cpu=8000000L
a8_8MHz.build.core=arduino
a8_8MHz.build.variant=standard

##############################################################

a8_1MHz.name=ATmega8 (optiboot 1 MHz int) 
a8_1MHz.upload.protocol=arduino 
a8_1MHz.upload.maximum_size=7680 
a8_1MHz.upload.speed=9600 
a8_1MHz.bootloader.low_fuses=0xa1 
a8_1MHz.bootloader.high_fuses=0xdc 
a8_1MHz.bootloader.path=optiboot 
a8_1MHz.bootloader.file=a8_1MHz_a1_dc.hex 
a8_1MHz.build.mcu=atmega8
a8_1MHz.build.f_cpu=1000000L 
a8_1MHz.build.core=arduino 
a8_1MHz.build.variant=standard

##############################################################

a8noboot_8MHz.name=ATmega8 (no boot 8 MHz int)
a8noboot_8MHz.upload.maximum_size=8192
a8noboot_8MHz.bootloader.low_fuses=0xa4
a8noboot_8MHz.bootloader.high_fuses=0xdc
a8noboot_8MHz.build.mcu=atmega8
a8noboot_8MHz.build.f_cpu=8000000L
a8noboot_8MHz.build.core=arduino
a8noboot_8MHz.build.variant=standard

Таким образом, если мы перейдем в меню Сервис → Плата, то увидим устройства:

  • ATmega8 (optiboot 16MHz ext)
  • ATmega8 (optiboot 8 MHz int)
  • ATmega8 (optiboot 1 MHz int)
  • ATmega8 (no boot 8 MHz int)

Платы Arduino

Ардуино продаётся во множестве вариантов; главное, что объединяет платы, – это концепция готового изделия. Вам не нужно травить плату и паять все её компоненты, вы получаете готовое к работе изделие. Можно собирать любые устройства, не используя паяльник. Все соединения в базовом варианте выполняются с помощью макетной платы и перемычек.

Сердце платы – микроконтроллер семейства AVR. Изначально был применён микроконтроллер atmega8, но его возможности не безграничны, и плата подвергалась модернизации и изменениям. Стандартная плата, которая наиболее распространена у любителей – это плата версии UNO, существует много её вариаций, а её размеры сравнимы с кредитной карточкой.

Плата Arduino Nano –  полный аналог большего собрата, но в гораздо меньших размерах, версия arduino atmega168 была самой популярной и недорогой, но её сменила другая модель – arduino atmega328, стоимость которой аналогична, а возможности больше.

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

Клеммная колодка – отличный способ сделать надёжное разъёмное соединение и быстро выполнить изменения в схеме прототипов ваших устройств. Для тех, кому не хватает стандартных разъёмов, есть более крупные и мощные платы, например, на atmega2560, у которой доступно полсотни портов для работы с периферией.

На фото изображена плата Arduino Mega 2560. На её основе можно собрать довольно сложного робота, систему умного дома или 3d-принтер на ардуино.

Не стоит думать, что младшие версии слабы, например, микроконтроллер atmega328, на котором построены модели Uno, nano, mini и другие, имеет вдвое больше памяти по сравнению с 168 моделью – 2 кб ОЗУ и 32 кб Flash памяти. Это позволяет записывать более сложные программы в память микроконтроллера.

Проекты на основе Arduino ATmega

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

Пример 1

Можно сделать тестер с 11 функциями на микроконтроллере atmega32.

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

  1. Прозвонка цепи с возможностью измерять падение напряжения на переходе диода.
  2. Омметр.
  3. Измеритель ёмкости.
  4. Измерение активного сопротивления конденсатора или ESR.
  5. Определение индуктивности.
  6. Возможность счёта импульсов.
  7. Измерение частоты – пригодится в диагностике, например, для проверки ШИМ источника питания.
  8. Генератор импульсов – тоже полезен в ремонте.
  9. Логический анализатор позволит просмотреть содержимое пачек цифровых сигналов.
  10. Тестер стабилитронов.

Пример 2

Для радиолюбителей будет полезно иметь качественное оборудование, но станция стоит дорого. Есть возможность собрать паяльную станцию своими руками, для этого нужна плата Arduino, имеющая в своем составе микроконтроллер atmega328.

Пример 3

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

Для этого вам понадобится:

  1. Arduino uno или atmega
  2. Tft дисплей 5 дюйма.
  3. Небольшой набор обвязки.

Или его упрощенный аналог на плате Nano и дисплее от nokia 5110.

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

Пример 4

Бывает, что управляемые модули удалены друг от друга или возможностей одной ардуино не хватает – тогда можно собрать целую микроконтроллерную систему. Чтобы обеспечить связь двух микроконтроллеров стоит использовать стандарт RS 485.

На фото приведен пример реализации такой системы и ввода данных с клавиатуры.

Цветомузыка на микроконтроллере Arduino ATmega8

Для школьной дискотеки можно собрать ЦМУ на 6 каналов.

Транзисторы VT1-VT6 нужно подобрать с учетом мощности ваших светодиодов. Это силовые компоненты – они нужны, потому что мощности микроконтроллера не хватит, чтобы запустить мощные лампы или светодиоды.

Если вы хотите коммутировать сетевое напряжение и собрать цветомузыку на лампах накаливания, вместо них нужно установить симисторы и драйвер. Дополнить каждый канал ЦМУ вот такой конструкцией:

Ардуино своими руками

Atmega2560 – хоть и мощный и продвинутый контроллер, но проще и быстрее собрать первую плату на atmega8 или 168.

Левая часть схемы – это модуль связи по USB, иначе говоря, USB-UART/TTL конвертер. Его, вместе с обвязкой, можно выбросить из схемы, для экономии места, собрать на отдельной плате и подключать только для прошивки. Он нужен для преобразования уровней сигнала.

DA1 – это стабилизатор напряжения L7805. В качестве основы можно использовать целый ряд avr микросхем, которые вы найдете, например, серии, arduino atmega32 или собрать arduino atmega16. Для этого нужно использовать разные загрузчики, но для каждого из МК нужно найти свой.

Можно поступить еще проще, и собрать всё на беспаечной макетной плате, как это показано здесь, на примере 328-й атмеги.

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

arduinoplus.ru

Распиновки и описание процессоров ATmega установленных на ардуино и не только (+схемы пинмапинга )

Особенности

По datasheet (описанию), все контроллеры Atmega обладают следующими особенностями:

  • Низкомощным высокопроизводительным 8-зарядным микроконтроллером типа AVR (причем, и у моделей класса Atmega168 20au, и Atmega168 20au).
  • Усовершенствованной архитектурой типа RISC (плата всегда ей соответствует).
  • Микроконтроллером. Datasheet (описание) говорит, что их 135 у каждой модели.
  • Платой и распиновкой, которые обеспечивают выполнение практически всех инструкций в течение 1 цикла.
  • Каждый микроконтроллер серии, от самых первых, например, Atmegar3, до наиболее современных (Atmega328 или Atmega2561 rev3), характеризуется полностью статическими темпами работы.
  • Огромной производительностью, как утверждает datasheet (описание). При частоте в 16 мегагерц производительность будет равняться 16 миллионам операций за 1 секунду.
Контроллер Atmega2560
  • Встроенным 2-тактным устройством для умножения.
  • Платой и распиновкой, позволяющими содержание опционального сектора для загрузки с раздельными защитными битами.
  • Внутрисистемно программируемой флеш-памятью. Согласно информации из datasheet (описанию), ее объем может равняться 64, 128 или 256 килобайтам.
  • Износостойкостью памяти, составляющей 10 000 циклов типа «запись/уничтожение».
  • Возможностью платы самопрограммироваться любой другой программой, которая находится в загрузочном секторе.
  • Способностью микропроцессора поддерживать режим чтения во время записи.
  • Ёмкостью внешнего пространства для программирования одного микропроцессора — 64 килобайта.
  • Микрочипом, позволяющим пользователю самостоятельно программировать его защиту (актуально для всех версий: от первых, например, Atmegar3, до современных: Atmega328 или Atmega2561 rev3).

Купить на алиэкспресс http://ali.pub/1t11be  

Наименование модели: ATMEGA8-16PI  

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

Описание: Микроконтроллеры (MCU) AVR 8K FLASH 512B EE 1K SRAM ADC

Купить на алиэкспресс Attiny  http://ali.pub/1t11gn  

Справочная информация:
Буква V в названии микросхемы означает пониженное напряжение питания;
Буква A - микросхема имеет расширенный диапазон питания от 1.8 до 5.5 Вольт;
Буква P - PicoPower - пониженное потребление;

В столбце АЦП первое число суммы равно количеству несимметричных входов, второе - количеству дифференциальных пар. Если число только одно, значит, микросхема не поддерживает дифференциальные входы АЦП

Купить на алиэкспресс Atmega 2560 http://ali.pub/1t11li  

Atmega2560, как и все его аналоги: Atmega2560 rev3, Atmega2560 16au, Atmega320 «Про Мини», Atmegach440g, Atmegach440g Pro Mini, Atmega640 Pro Mini, Atmega168 20au, Atmega328, Atmega2560 16au Pro Mini, Atmegar3 Pro Mini, Atmega168 20au «Про Мини» представляет собой 8-разрядный микроконтроллер низкой мощности, изготовленный на базе ядра типа AVR с архитектурой типа RISC. Он способен выполнять большое количество различных инструкций одновременно.


Купить на алиэкспресс atmega32u4   http://ali.pub/1t11pl  

                               

  • Высокопроизводительный, малопотребляющий 8-битный микроконтроллер семейства AVR
  • Передовая RISC архитектура
    • 135 инструкций, большинство выполняется за один такт
    • 32х8 регистров общего назначения
    • Полностью статический режим работы
    • Производительность до 16 MIPS (млн. операций в секунду) при тактовой частоте ядра 16 МГц
    • Встроенный двухтактный умножитель
  • Энергонезависимая память программ и память данных
    • 32 КБайт самопрограммируемой в системе FLASH памяти
      • 100000 циклов записи/стирания
    • Встроенный загрузчик программ с независимыми битами защиты
      • Загрузчик активируется после команды сброса
      • Возможен режим чтения во время записи
      • Все микроконтроллеры поставляются с "прошитым" USB загрузчиком
    • 2.5 КБайт внутренней SRAM данных
    • 1 КБайт внутренней EEPROM
      • 100000 циклов записи/стирания
    • Программная защита от считывания
  • JTAG интерфейс (совместимый с IEEE 1149.1)
    • Сканирование периферии в соответствии стандарту JTAG
    • Расширенный режим отладки
    • Поддерживает программирование FLASH, EEPROM и битов защиты
  • Высокоскоростной/низкоскоростной модуль USB 2.0 с функцией прерывания по окончании передачи
    • Полностью соответствует спецификации Универсальной последовательной Шины версии 2.0
    • Поддерживает скорость передачи данных 1.5 Мбит/с и 12 Мбит/с
    • Шесть программируемых оконечных точек на вход или выход с возможность передачи сигнала прерывания, групповой и изохронной передачи данных
    • Конфигурируемый размер оконечных точек до 256 Байт в режиме сдвоенного банка
    • 832 Байта полностью независимой USB DPRAM для распределения оконечных точек
    • Сигналы прерывания для останова/возобновления работы
    • Возможность сброса ЦПУ по сигналу сброса USB шины
    • Соединение/разъединение с USB шиной по запросу микроконтроллера
  • Периферия
    • Встроенный PLL для USB и высокоскоростного таймера: рабочая частота от 32 МГц до 96 МГц
    • Два 8-битных таймера/счетчика с независимым предделителем и режимом сравнения
    • Два 16-битных таймера/счетчика с независимым предделителем и режимом сравнения и захвата
    • Один 10-битный высокоскоростной таймер/счетчик с PLL (64 МГц) и режимом сравнения
    • Четыре 8-битных канала ШИМ
    • Четыре канала ШИМ с программируемым разрешением от 2 до 16 бит
    • Шесть каналов ШИМ для высокоскоростной работы с программируемым разрешением от 2 до 11 бит
    • 12-канальный, 10-битный АЦП
    • Программируемый последовательный USART
    • Последовательный интерфейс SPI с режимами ведущий/ведомый
    • Последовательный интерфейс I2C
    • Программируемый сторожевой таймер с независимым встроенным генератором
    • Встроенный аналоговый компаратор
    • Встроенный датчик температуры
  • Особенности микроконтроллера
    • Сброс по включению питания и функция определения провалов напряжения питания
    • Встроенный калиброванный генератор на 8 МГц
    • Встроенный предделитель тактов и переключатель источника тактового сигнала (внутренний RC / внешний генератор) в безостановочном режиме (on-the-fly)
    • Внешние и внутренние источники прерываний
    • Шесть энергосберегающих режимов ожидание: Idle, ADC Noise Reduction, Power-save, Power-down, Standby и Extended Standby
  • Линии ввода/вывода и типы корпуса
    • Все линии ввода/вывода совместимы с CMOS и LVTTL уровнями сигнала
    • 26 линий ввода/вывода
    • 44-выводной корпус TQFP 10х10 мм
    • 44-выводной корпус QFN 7х7 мм
  • Диапазон напряжения питания 2.7...5.5 Вольта
  • Рабочий диапазон температур -40°C...+85°C
  • Максимальная тактовая частота
    • 8 МГц при напряжении питания 2.7 Вольта
    • 16 МГц при напряжении питания 5.5 Вольта

Купить на алиэкспресс ATmega328P  http://ali.pub/1t11tv  

  •                                                                                                                ATmega328P
  • ПроизводительAtmel
    СерияAVR® ATmega
    ПроцессорAVR
    Размер ядра8-Bit
    Скорость20MHz
    Тип подключенияI²C, SPI, UART/USART
    ПереферияBrown-out Detect/Reset, POR, PWM, WDT
    Число вводов/выводов23
    Размер программируемой памяти32KB (32K x 8)
    Тип программируемой памятиFLASH
    EEPROM Size1K x 8
    Размер памяти2K x 8
    Напряжение источника (Vcc/Vdd)1.8 V ~ 5.5 V
    Преобразователь данныхA/D 6x10b
    Тип осцилятораInternal
    Рабочая температура-40°C ~ 85°C
    Корпус28-DIP

Похожие статьи

Как выиграть спор на Алиэкспресс. Причины и советы.

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

Простейший трекер для домашней солнечной электростанции

Трекер повышает КПД солнечных панелей

Как известно, солнечные панели имеют максимальный КПД в том случае, когда они расположены перпендикулярно падающим на них солнечным лучам. Но солнце перемещается по небосводу и стационарно установленные панели из-за этого теряют часть своей эффективности. Чтобы повысить их эффективность, используют трекеры — специальные устройства, которые поворачивают панели «вслед» за солнцем:

Распиновка самых популярных плат ардуино Arduino board pinmaping

В посте собраны практически все платы ардуино с распиновкой в хорошем качестве !

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

Ардуино может использоваться для разработки интерактивных систем, управляемых различными датчиками и переключателями. Такие системы, в свою очередь, могут управлять работой различных индикаторов, двигателей и других устройств. Проекты Ардуино могут быть как самостоятельными, так и взаимодействовать с программным обеспечением, работающем на персональном компьютере (например, приложениями Flash, Processing, MaxMSP). Любую плату Ардуино можно собрать вручную или же купить готовое устройство; среда разработки для программирования такой платы имеет открытый исходный код и полностью бесплатна.

Язык программирования Ардуино является реализацией похожей аппаратной платформы "Wiring", основанной на среде программирования мультимедиа "Processing".


Теги: ATTINY, Atmega2560 rev3, Atmega2560 16au, Atmega320 «Про Мини», Atmegach440g, Atmegach440g Pro Mini, Atmega640 Pro Mini, Atmega168 20au, Atmega328, Atmega2560 16au Pro Mini, Atmegar3 Pro Mini, Atmega168 20au, процессоры, описание, распиновки, даташит, набор, денис, гиик, китайчик, клуб, ардуино, клуб_ардуино, обзоры, алиэкспресс, denis_geek, denis, geek, chinagreat, club_arduino, arduino, club, aliexpress, денис гиик, denis geek, club arduino, electronica52, electronica52.in.ua,

www.electronica52.in.ua

Arduino на ATmega8, ATmega48, ATmega88, ATmega168

 Добрый день. С появлением arduino робототехника, автоматика и другие радио изделия стали нам более доступными. Раньше представить было трудно что с такой простотой можно писать прошивки для микроконтроллеров, с появлением arduino заниматься робототехникой могут даже детишки. Простота платформы arduino позволяет забыть о побитовых операциях и регистрах avr которые использовались повсеместно. Но так как платформа универсальная то и микроконтроллер тоже выбран универсальный. Например в arduino uno предусмотрен atmel atmega328p что даволи излишне для простой обработки нажатий на кнопки, а если делать сразу партию устройств то придется заплатить за незадействованную мощь.

 Но так как arduino ide свободно распространяемая, любой без труда может написать дополнения и библиотеки, зачастую они могут быть очень полезными. В данной статье пойдет речь о библиотеке плат на основе ATmega8, ATmega48, ATmega88, ATmega168 под названием Mini Core. Данная библиотека позволят писать скетчи arduino под более слабые микроконтроллеры чем atmega328p, а это позволяет удешевить стоимость устройства за счет рационального использования мощности. 

 Почему именно эти микроконтроллеры:

  1. Данные микроконтроллеры с теми же выводами и архитектурой и имеют минимальные отличия от atmega328p(заменяемые)
  2. Они дешевые и популярные(некоторые дешевле доллара)
  3. Они все имеют DIP и TQFP корпуса

Данная библиотека поддерживает все индексы микросхемы кроме PB (т.е. A, P, PA), например не стоит использовать ATMEGA168PB-AU.

 

Микросхемы по характеристикам:

 Atmeg328atmega168atmega88atmega48atmega8
Flash32 кб16 кб8 кб4 кб8 кб
ОЗУ2 кб1 кб1 кб512 б1 кб
ПЗУ1 кб512 б512 б256 б512 б
Каналы ШИМ66663
Пора от теории перейти к практике установим Mini Core, для установки понадобиться Arduino IDE версии 1.6.4 и выше. Если у вас нет Arduino или она старше качаем ее с оф. Сайта.

1. Для установки делаем следующее:

2. Запускаем Arduino IDE

3. Откройте меню « Файл» ⇒ «Настройки» .

В пункте "Дополнительные ссылки для Менеджера плат" нужно вставить следующее:

4. После вышеупомянутых операций закрываем настройки и переходим в меню Откройте меню « Инструменты» ⇒ «Плата:"........."» ⇒  « Менеджер плат...».

5. В менеджере плат выбираем нашу библеотеку и нажимем установка:

Примечание . Если вы используете Arduino IDE 1.6.6, вам может потребоваться закрыть диспетчер плат, а затем снова открыть его.

 

  После установки в меню « Инструменты» ⇒ «Плата:"........."» появятся варианты плат с нашими микроконтроллерами. 

 

 Самый удобный вариант для использование  данных микроконтроллеров это взять arduino uno с микросхемой в корпусе dip и заменить на нужную. Также можно собрать плату с несложной обвязкой: 

 

 

 Для тех кому нужна распиновка микросхем фото ниже:

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

 

Настройки тактовой частоты:

  • 16 МГц внешний генератор (по умолчанию)
  • 20 МГц внешний генератор
  • 18.432 Mhz внешний генератор *
  • 12 МГц внешний генератор
  • 8 МГц внешний генератор
  • 8 МГц внутренний генератор **
  • 1 МГц встроенный генератор

* - частота 18.432 не рекомендуется использовать в скетчах где нужно измерить точное время, но хорошо подойдет для работы с com-портом.

** - внутренний генератор 8МГц сам по себе не точный и частота может меняться от температуры окружающей среды и рабочего напряжения.

 

Параметры контроля питания:

Atmega 328Atmega 168Atmega 88Atmega 48Atmega 8
4.3 В4.3 В4.3 В4.3 В4.0 В
2.7 В2.7 В2.7 В2.7 В2.7 В
1.8 В1.8 В1.8 В1.8 В-
ОтключеноОтключеноОтключеноОтключеноОтключено

 

 

Сайт проекта на github.

radio-blogs.ru

Как загрузить скетч в Atmega8A-PU с помощью USBasp

Сегодня я расскажу Вам как загрузить скетч в Atmega8A-PU с помощью программатора USBasp S51&AVR и среды разработки Arduino IDE. Это способ загрузки очень удобен и не требует много сил, а в итоге у нас получится минимальное arduino на микроконтроллере Atmega8A-PU. Для работы нам потребуется только программатор USBasp S51&AVR и микроконтроллер Atmega8A-PU который после прошивки будет работать на частоте 8 MHz. Более подробно смотрите на видео.

Для начала рассмотрим сам контроллер Atmega8A-PU.

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

  • Серия процессора: ATMEGA8x
  • Тактовая частота максимальная: 16 МГц
  • Разрядность АЦП: 10 бит
  • Встроенный в чип АЦП: да
  • Шина данных: 8 битШирина: 7.5 мм
  • Размер ОЗУ: 1 Кб
  • Размер ПЗУ данных: 512 B
  • Размер памяти программ: 8 Кб
  • Тип памяти программ: Flash
  • Доступные аналоговые/цифровые каналы: 6
  • Интерфейс: SPI, TWI, USART
  • Количество линий ввода/вывода: 23
  • Количество таймеров: 3
  • Ядро: AVR
  • RoHS: да
  • Диапазон напряжения питания: 2.7 В … 5.5 В
  • Рабочий диапазон температрур: – 40 C … + 85 C
  • Тип корпуса: PDIP-28
  • Ширина: 7.5 мм
  • Длина: 34.8 мм
  • Высота: 4.57 мм

Где купить Atmega8A-PU

Заказать микроконтроллер Atmega8a-PU

Блок схема микроконтроллера Atmega8A-PU:

блок схема микроконтроллера Atmega8A

Arduino pinout (распиновка) микроконтроллера Atmega8A-PU:

Распиновка Atmega8A-PU

Если вы хотите узнать больше информации о контроллере Atmega8A-PU , скачайте даташит на Atmega8A

После небольшого знакомства с Atmega8A-PU я думаю можно приступить к настройке Arduino IDE и заливке скетча в наш контроллер.

Для начала установите Arduino IDE как указано в нашей статье Установка Arduino IDE на компьютер с ОС Windows и подключите программатор USBasp и установите драйвера как указано в статье Подключение программатора USBasp S51&AVR.

Теперь ищем в Windows папку установки Arduino IDE  под названием arduino, полный путь к папке у меня C:\Program Files\Arduino\hardware\arduino но у Вас он может отличатся.

В этой папке мы ищем текстовый файл boards.txt и открываем его с помощью любого текстового редактора ( я использую Notepad++)

Текстовый файл boards.txt

После этого копируем текст

############################################################## atmega8noxtalfast.name=ATmega8(A) (8MHz int. RC osc, short bootloader delay, 38400 baud rate) atmega8noxtalfast.upload.protocol=arduino atmega8noxtalfast.upload.maximum_size=7168 atmega8noxtalfast.upload.speed=38400 atmega8noxtalfast.bootloader.low_fuses=0xe4 atmega8noxtalfast.bootloader.high_fuses=0xc2 atmega8noxtalfast.bootloader.path=atmega8a atmega8noxtalfast.bootloader.file=ATmegaBOOT.hex atmega8noxtalfast.bootloader.unlock_bits=0x3F atmega8noxtalfast.bootloader.lock_bits=0x0F atmega8noxtalfast.build.mcu=atmega8 atmega8noxtalfast.build.f_cpu=8000000L atmega8noxtalfast.build.core=arduino:arduino atmega8noxtalfast.build.variant=arduino:standard ############################################################## atmega8optiboot.name=ATmega8(A) (16Mhz XTAL, optiboot) atmega8optiboot.upload.protocol=arduino atmega8optiboot.upload.maximum_size=7680 atmega8optiboot.upload.speed=115200 atmega8optiboot.bootloader.low_fuses=0xBF atmega8optiboot.bootloader.high_fuses=0xCC atmega8optiboot.bootloader.path=optiboot atmega8optiboot.bootloader.file=optiboot_atmega8.hex atmega8optiboot.bootloader.unlock_bits=0x3F atmega8optiboot.bootloader.lock_bits=0x0F atmega8optiboot.build.mcu=atmega8 atmega8optiboot.build.f_cpu=16000000L atmega8optiboot.build.core=arduino:arduino atmega8optiboot.build.variant=arduino:standard

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

##############################################################

 

atmega8noxtalfast.name=ATmega8(A) (8MHz int. RC osc, short bootloader delay, 38400 baud rate)

 

atmega8noxtalfast.upload.protocol=arduino

atmega8noxtalfast.upload.maximum_size=7168

atmega8noxtalfast.upload.speed=38400

 

atmega8noxtalfast.bootloader.low_fuses=0xe4

atmega8noxtalfast.bootloader.high_fuses=0xc2

atmega8noxtalfast.bootloader.path=atmega8a

atmega8noxtalfast.bootloader.file=ATmegaBOOT.hex

atmega8noxtalfast.bootloader.unlock_bits=0x3F

atmega8noxtalfast.bootloader.lock_bits=0x0F

 

atmega8noxtalfast.build.mcu=atmega8

atmega8noxtalfast.build.f_cpu=8000000L

atmega8noxtalfast.build.core=arduino:arduino

atmega8noxtalfast.build.variant=arduino:standard

 

 

##############################################################

atmega8optiboot.name=ATmega8(A) (16Mhz XTAL, optiboot)

 

atmega8optiboot.upload.protocol=arduino

atmega8optiboot.upload.maximum_size=7680

atmega8optiboot.upload.speed=115200

 

atmega8optiboot.bootloader.low_fuses=0xBF

atmega8optiboot.bootloader.high_fuses=0xCC

atmega8optiboot.bootloader.path=optiboot

atmega8optiboot.bootloader.file=optiboot_atmega8.hex

atmega8optiboot.bootloader.unlock_bits=0x3F

atmega8optiboot.bootloader.lock_bits=0x0F

 

atmega8optiboot.build.mcu=atmega8

atmega8optiboot.build.f_cpu=16000000L

atmega8optiboot.build.core=arduino:arduino

atmega8optiboot.build.variant=arduino:standard

вставляем в конец нашего текстового файла boards.txt, сохраняем документ и перезапускаем Arduino IDE. В окне с доступными платами у нас должны появится две новые записи ( на фото обведено красным )

Наша Arduino IDE теперь успешно настроена для заливки скетчей в микроконтроллеры Atmega8A.

  1. Первый режим программирует наш контроллер для работы от встроенного кварца, частота работы 8 MHz
  2. Второй режим программирует наш контроллер для работы от внешнего кварца, частота работы 16 MHz (для работы подключаем кварц на 16 MHz к ножкам XTAL1 и XTAL2)

Теперь переходим к подключению нашего микроконтроллера к программатору.

Для удобства я сделал небольшую плату для прошивки микроконтроллеров Atmega8A и Attiny13a,

где можно просто вставить нужный контроллер подключить кабель и прошивать скетчи

Все смотрится примерно так

А для Вас рекомендую подключать USBasp программатор к Atmega8A-PU по схеме на картинке

Подключение USBasp к atmega8A-PU

Схема подключения контактов

  • USBasp +5v  к контроллеру VCC (pin7)
  • USBasp – GND к контроллеру GND (pin8)
  • USBasp – RST к контроллеру RST (pin1)
  • USBasp – SCK к контроллеру SCK (pin19)
  • USBasp – MISO к контроллеру MISO (pin18)
  • USBasp – MOSI к контроллеру MOSI (pin17)

После подключения переходим снова к Arduino IDE в котором будем использовать режим программирования микроконтроллера  без внешнего кварца  ATmega8(A) (8MHz int. RC osc, short bootloader delay, 38400 baud rate)

потом устанавливаем Serial Port, у меня как на фото

и выбираем программатор

после чего открываем из примеров скетч Blink, наводим курсор мышки на стрелочку для заливки скетча в плату ( на фото белая стрелка ) и жмем на клавиатуре Shift – у нас должна появится надпись Upload Using Programmer и жмем по стрелке для заливки скетча в наш контроллер  Atmega 8A-Pu

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

После чего подключаем Анод (+) светодиода к 19 ноге, а минус к GND, подаем питание к нашему микроконтроллеру и светодиод должен моргать с интервалом в 1 секунду

Поздравляю теперь вы знаете как загрузить скетч в Atmega8A-PU

arduino-project.net

atmega8 и новый atmega8a pu микроконтроллер datasheet схемы

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

Характеристики микроконтроллера ATMEGA8

EEPROM 8 Кб
Аналоговые входы (АЦП) 4
Входное напряжение (предельное) 5,5 Вольт
Входное напряжение (рекомендуемое) 4,5-5 Вольт
ОЗУ 256 байт
Тактовая частота 20 МГц
Flash-память 8кБ

Микроконтроллер atmega8 имеет два полноценных портов с разрядностью 8 бит в отличии от ATtiny2313, младшего брата.
Наличие в atmega8 аналогово-цифрового преобразователя, дающего возможность измерять такие параметры как напряжение, ток, емкость что позволяет разработать полноценный мультиметр на базе этого микроконтроллера. Так же atmega8 имеет порт UART для приема и передачи данных TTL уровня.
Порт для работы по протоколу TWI(возможность реализовать программный I2C).
По I2C к ATmega8 можно подключить целый спектр устройств:
- внешнюю EEPROM память серии 24cXX,
- ЖКИ индикаторы и графические дисплеи,
- регуляторы громкости, сопротивления,
и многое другое.

Пример конфигурирования фьюз битов atmega8.

Схемы на atmega8

Примечание:
Если количество выводов микроконтроллера устраивает, но требуется больший объем памяти программ, рекомендую использовать микроконтроллеры ATmega16, ATmega32 или ATmega328.


Цоколевка микроконтроллера AtMega8.

Внешний вид микроконтроллера в корпусе DIP 28

ATmega8 Datasheet скачать - заводская документация на микроконтроллер ATmega8 от фирмы Atmel

avrlab.com

Схема USB программатора на Atmega8 своими руками

Данная схема USB программатора, построенного на микроконтроллере  Atmega8,  довольно проста в изготовлении, ее можно собрать своими руками буквально за один вечер.

Фактически это AVR-910 популярной схемы Prottoss-a. USB программатор надежен и имеет в своем арсенале функцию, позволяющая восстанавливать микроконтроллеры с неверно установленными фьюзами.

Следует отметить, что для прошивки самого микроконтроллера Atmega8 программатора понадобится простой LPT-программатор.

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

Итак, у нас все детали схемы припаяны без ошибок и коротких замыканий, плата очищена от остатков флюса. Теперь переводим переключатель SA2 в положение «МОД», подсоединяем наше устройство к простому LPT-программатору и включаем питание.

Теперь необходимо занести программу  в память Atmega8. В качестве программного обеспечения можно применить Uniprof или Code Vision AVR. Перед программированием необходимо выставить следующие фьюзы (для Uniprof):

По завершению прошивки Atmega8, переводим переключатель SA2 в положение «НОРМ», подсоединяем программатора к USB разъему компьютера. Если все шаги выполнены  верно, то компьютер должен без проблем обнаружить новое подключенное устройство.

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

Поговорим о программном обеспечении которое необходимо для работы с данным программатором. Он поддерживает такие оболочки как:  AVR Prog, AVR Studio, ChipBlasterAVR  и, конечно же,  Code Vision AVR.

Достаточно удобной программой, я считаю, является Code Vision AVR, пример работы, которой подробно написано здесь.

 Для справки, приведем типовую распиновку USB:

Список необходимых деталей:

  • Atmega8 — 1 шт.
  • Кварц 12МГц — 1 шт.
  • Диод 1N4007 – 2 шт.
  • Светодиод — 3 шт.
  • Резисторы: 68 Ом — 2 шт., 330 Ом — 8 шт., 1,5 Ом — 1 шт., 100 Ом -1 шт., 1,5 кОм -1 шт., 10 кОм -1 шт., 1 мОм -1 шт.
  • Конденсаторы:  0,1мк — 3 шт., 22мк х 10В — 1 шт., 22p — 2 шт. 

Скачать прошивку, драйвера и печатную плату (853,5 Kb, скачано: 17 801)

Источник: http://www.tehnari.ru/f115/t71649/

www.joyta.ru

Оставить комментарий

avatar
  Подписаться  
Уведомление о