AVR. Учебный Курс. Вводная. Что такое микроконтроллер.

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

Но, если сильно все упростить, то основной функцией микроконтроллера является «дрыганье ножками». Т.е. у него есть несколько выводов (от 6 до нескольких десятков в зависимости от модели) и на этих выводах он может выставить либо 1 (высокий уровень напряжения, например +5вольт), либо 0 (низкий уровень напряжения, около 0.1 вольта) в зависимости от программного алгоритма зашитого в его память. Также микроконтроллер может определять состояние сигнала на своих ножках (для этого они должны быть настроены на вход) — высокое там напряжение или низкое (ноль или единица). Современные микроконтроллеры также почти поголовно имеют на борту Аналогово Цифровой Преобразователь — это штука подобная вольтметру, позволяет не просто отследить 0 или 1 на входе, а полноценно замерить напряжение от 0 до опорного (обычно опорное равно напряжению питания) и представить его в виде числа от 0 до 1024 (или 255, в зависимости от разрядности АЦП)

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

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

MSC-51
Самое обширное и развитое это MSC-51, старейшее из всех, идущее от intel 8051 и ныне выпускаемое массой фирм. Иногда кратко зовется С51. Это 8-ми разрядная архитектура, отличается от большинства других восьмиразрядников тем, что это CISC архитектура. Т.е. одной командой порой можно совершить довольно сложное действие, но команды выполняются за большое число тактов (обычно за 12 или 24 такта, в зависимости от типа команды), имеют разную длину и их много, на все случаи жизни. Среди контроллеров архитектуры MSC-51 встречаются как динозавры вроде AT89C51, имеющие минимум периферии, крошечную память и неважнецкое быстродействие, так и монстры вроде продукции Silicon Laboratories имеющие на борту весьма мясистый фарш из разнокалиберной периферии, огромные закрома оперативной и постоянной памяти, мощные интерфейсы от простого UART‘a до USB и CAN, а также зверски быстрое ядро, выдающее до 100 миллионов операций в секунду. Что касается лично меня, то я обожаю архитектуру С51 за ее чертовски приятный ассемблер на котором просто кайфово писать. Под эту архитектуру уже написаны гигабайты кода, созданы все мыслимые и немыслимые алгоритмы.

Atmel AVR
Вторым моим любимым семейством является AVR от компании Atmel. Вообще Atmel производит и MSC-51 контроллеры, но все же основной упор они делают на AVR. Эти контроллеры уже имеют 8-ми разрядную RISC архитектуру и выполняют одну команду за один такт, но в отличии от классического RISC ядра имеют весьма развесистую систему команд, впрочем не такую удобную как у С51, за что я их недолюбливаю. Но зато AVR всегда снаряжены как на войну и просто напичканы разной периферией, особенно контроллеры подсемейства ATMega. А еще их очень легко прошивать, для этого не нужны ни специализированные программаторы, ни какое либо другое сложное обрудование. Достаточно лишь пяти проводков и компьютера с LPT портом. Простота освоения позволила этому контроллеру прочно запасть в сердца многих и многих радиолюбителей по всему миру.

Microchip PIC.
Еще один 8-ми разрядный RISC микроконтроллер, отличается весьма извратской системой команд, состоящей всего из пары десятков команд. Каждая команда выполняется за четыре такта. есть ряд достоинств, в первую очередь это низкое энергопотребление, и быстрый старт. В среднем PIC контроллере нет такого количества периферии как в AVR, но зато самих модификаций PIC контроллеров существует такое количество, что всегда можно подобрать себе кристалл с периферией подходящей точно под задачу, не больше не меньше. На PIC‘ax традиционно построены бортовые компьютеры автомобилей, а также многочисленные бытовые сигнализации.

Какое же семейство выбрать? О, это сложный вопрос. На многочисленных форумах и конференциях по сей день идут ожесточенные бои на тему какое семейство лучше, фанаты AVR грызутся с приверженцами MSC-51, попутно не забывая пинать по почкам PIC‘овцев, на что те отвечают тем же.

Ситуация тут как в Starcraft :) Кто круче? Люди? Зерги? Протоссы? Все дело в применении, масштабах задач и массе других параметров. У каждого семейства есть свои достоинства и недостатки. Но лично я бы выбрал AVR и вот по каким причинам:

  • 1. Доступность в России. Эти контроллеры заслуженно популярны и любимы народом, а значит наши торговцы их охотно возят. Впрочем, как и PIC. С MSC-51 ситуация хуже. Морально устаревшие AT89C51 достать не проблема, но кому они нужны? А вот современные силабы это уже эксклюзив.
  • 2. Низкая цена. Вообще низкой ценой в мире славится PIC, но вот ирония — халявы начинаются только если брать его вагонами. На деле же, на реальном прилавке, AVR будет процентов на 30-40 дешевле чем PIC при несколько большем функционале. С MSC-51 ситуация ясна еще по первому пункту. Эксклюзив это не только редко, но и дорого.
  • 3. Очень много периферии сразу. Для серийного устройства это скорей недостаток. Куда лучше иметь только то, что надо в текущей задаче, а остальное чтобы не мешалось и не кушало зря энергию. Этим славится PIC со своим развесистым модельным рядом, где можно найти контроллер в котором будет нужное и не будет ненужного. Но мы то собираемся изучать и делать для себя! Так что нам лучше чтобы все, сразу и про запас. И вот тут AVR на голову выше чем PIC, выкатывая раз за разом все более фаршированные контроллеры. Купил себе какую-нибудь AtMega16A и все, можешь все семейство изучить.
  • 4. Единое ядро. Дело в том, что у всех современных AVR одинаковое ядро с единой системой команд. Есть лишь некоторые различия на уровне периферии (и те незначительные). Т.е. код из какой нибудь крошечной ATTiny13 легко копипастом перетаскивается в ATMega64 и работает почти без переделок. И почти без ограничений наоборот. Правда у старых моделей AVR (всякие AT90S1200) совместимость сверху вниз ограниченная — у них чуть меньше система команд. Но вот вверх на ура. У Микрочипа же существует целая куча семейств. PIC12/16/18 с разной системой команд. 12е семейство это обычно мелочь малоногая (вроде Tiny в AVR), а 18 это уже более серьезные контроллеры (аналог Mega AVR) И если код с 12го можно перетащить на 18, то обратно фиг.
  • 5. Обширная система команд контроллеров AVR. У AVR около 130 команд, а у Microchip PIC всего 35. Казалось бы PIC в выйгрыше — меньше команд, проще изучить. Ну да, именно так и звучит микрочиповский слоган, что то вроде «Всего 35 команд!». Только это на самом деле фигня. Ведь что такое команда процессора? Это инструмент! Вот представь себе два калькулятора — обычный, бухгалтерский и инженерный. Бухгалтерский куда проще изучить чем инженерный. Но вот попробуй посчитать на нем синус? Или логарифм? Нет, можно, не спорю, но сколько нажатий кнопок и промежуточных вычислений это займет? То то же! Куда удобней работать когда у тебя под рукой куча разных действий. Поэтому, чем больше система команд тем лучше.
  • 6. Наличие бесплатных кроссплатформенных компиляторов Си. Конечно, кряк всегда найти можно. Где где, а в нашей стране это проблемой никогда не было. Но зачем что то воровать если есть халявное? ;)
  • 7. Ну и последний аргумент, обычно самый весомый. Наличие того, кто бы научил и подсказал. Помог советом и направил на путь истинный. Я выбрал для себя AVR и на этом сайте (по крайней мере пока) досконально будет разбираться именно это семейство, а значит выбора у тебя особого нет :))))))

Ой, но этих же AVR целая прорва. Какой взять???
Интересный вопрос. Вообще МК лучше выбирать под задачу. Но для изучения лучше хапнуть что то фаршированное.

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

ATmega16А — 16PI

  • AT — сделано в Atmel
  • Mega — вид семейства. Существует еще Tiny и Xmega (новая — фаршу жуть, полный вертолет). Вообще задумывалось, что Тини это, вроде как, малобюджетное с малым количеством фарша и вообще ущербная, а Мега наоборот — все и сразу. В реальности, разница между семействами Тини и Мега по фаршу сейчас минимальная, но в Тини меньше памяти и корпуса у нее бывают с числом выводов от 6 до 20.
  • 16 — количество памяти флеша в килобайтах. Вообще тут не все так просто. Числом памяти является степень двойки. Так что Mega162 это не контроллер со 162КБ флеша, а своеобразная Мега16 модификации2 с памятью 16кб. Или вот Мега88 — не 88кб, а 8кб флеша, а вторая 8 это вроде как намек на то, что это дальнейшее развитие Мега8. Аналогично и Мега48 или Мега168. Тоже самое и семейством Тини. Например, Тини2313 — 2килобайта флеша. А что такое 313? А хрен знает что они имели ввиду :) Или Тини12 — 1кб Флеша. В общем, фишку просек.
  • А — префикс энергопотребления (обычно). Этой буквы может и не быть, но в новых сериях она присутствует почти везде. Например, V и L серии — низковольтные, могут работать от 2,7 вольт. Правда за низковольтность приходится платить меньше частотой. Но оверклокинг возможен и тут, ничто человеческое нам не чуждо :) A и P имеют новые серии AVR с технологией PicoPower т.е. ультраэкономичные. Разницы по фаршу и внутренней структуре с их безиндексовыми моделями нет, тут все различие в работе всяких спящих режимов и энергопотреблении. Т.е. Mega16A легко меняется на Mega16 без А. И ничего больше менять не нужно.
  • 16 — Предельная тактовая частота в мегагерцах. В реальности можно разогнать и до 20 ;)
  • P — тип корпуса. Важная особенность. Дело в том, что далеко не всякий корпус можно запаять в домашних условиях без геморроя. Рекомендую пока обратить внимание на P — DIP корпус. Это громоздкий монстр, но его легко запаять, а, главное, он легко втыкается в специальную панельку и вынимается из нее обратно. Корпуса вида SOIC (индекс S) или TQFP (индекс A) пока лучше отложи в сторонку. Без хорошего опыта пайки и умения вытравить качественную печатную плату к ним лучше не соваться.
  • I — Тип лужения выводов. I — свинцовый припой. U — безсцвиновый. Для тебя никакой совершенно разницы. Бери тот что дешевле.

Рекоменую следующие модели:

  • ATMega16A-16PU — недорогой (около 100-150р), много выводов, много периферии. Доступен в разных корпусах. Прост, под него заточен мой учебный курс и все дальнейшие примеры.
  • ATTiny2313-20SU — идеальный вариант для изготовления всяких часов/будильников и прочей мелкой домашней автоматики. Дешев (рублей 40), компактен. Из минусов — нет АЦП.
  • ATmega48/88/168 любой из этих контроллеров. Компактен (в корпусе tqfp является самым тонким и мелким из AVR), дешев (рублей 100-150), фарширован донельзя.
  • ATmega128 для искушенных. Большой, мощный, дофига памяти. Дорогой (около 400р)

92 thoughts on “AVR. Учебный Курс. Вводная. Что такое микроконтроллер.”

  1. «В среднем PIC контроллере нет такого количества периферии как в AVR»
    Ага-ага, используем сейчас Пики с Ethernet-ом на борту, 80 ног, закупаем по 135 рублей. AVR такие есть?

    1. Конкретно с эзернетом не встречал. По моему это вообще фишка именно пика. Другие до такого не дошли :) Но я же говорил не конретно про наличие чего либо, а в целом по архитектуре.

      А вообще, возьми любую АВРку — так у ней на борту стандартный набор это АЦП, ШИМ, УАРТ, СПИ, и2с, зачастую есть часы, компаратор. Пики они более узкозаточенные.

      Хотя есть АТМЕГА и начиная со 64й на нее можно сделать эзернет программно, библиотека готовая в WinAVR есть. Только PHY подрубить.
      Кстати в том пике PHY внутренняя?

      1. Здравствуйте! не знал куда написать, решил написать сюда) Хотел бы попросить совета. Учусь на тором курсе. Есть вот такой вот стенд:
        http://opensys.com.ua/Stend/Ev8031 с LCD. Поставлена задача реализовать на нем протокол ModBus RTU, чтобы он выступал как мастер и опрашивал какое-то устройство. С микроконтроллерами дела до этого я не имел. Огромное количество информации — не знаю за что хвататся: i8051, uart, сам модбас…
        В голове полная каша. Посоветуйте как правильно построить изучение и на что обратить внимание в первую очередь, какую-небудь литературу конкретную, которая поможет разобратся.
        Потрясающтй сайт! Отличный статьи для начинающих! Спасибо вам за труд!!!

  2. Команда в PIC выполняется за 4 такта! (а не 1)… Периферии, например, в достаточно популярных 16F873 — 876 вполне достаточно в большинстве случаев. Примерно то же, что и в MEGA32, только памяти поменьше. Но ее много и не к чему (если внутрь Бэйсик не пихать). Зато у PIC есть важное отличие от Атмелов — таймер с предделителем с внешнего входа могут считать до 70-80 МГц даже у 16F84 с тактовой 4 Мгц! Удобно для частотомеров. Атмелам до этого ох как далеко…
    А вообще, все микроконтроллеры хороши, надо только оптимально их использовать. Еще в 80х годах я на работе разрабатывал и изготавливал для нужд производства контроллеры сначала на 580ИК80, затем 1816ВЕ35 (MCS 48!), и они прекрасно справлялись с многозадачной работой в режиме реального времени, и ПЗУ 2-4 Кб вполне хватало. (Это вам не VISTA)!

    1. Много периферии важно для новичков. Чтобы купив один кристалл изучить сразу все возможное. За это я и люблю Атмел.

  3. скачал на днях инструкцию на русском на ATmega128 (www.gaw.ru), в архиве весит 2 метра с копейками.

      1. Ну, не микроконтроллер и не процессор, а полноценная система на чипе, внутри есть свои FLASH, SDRAM, EEPROM и даже кэш (это ещё ПРОСТОЙ мобильник). При нехватке внутренних параметров (99% случаев) сверху навешивается доп. память и устройства. Вцелом, мобильник — сложный компьютер с массой интерфейсов. Кстати, китайские подделки содержат уникальные системы на чипе, 70% всей электроники на одном кристалле, там не то что процессор, там видеоускоритель с аппаратнымы кодеками, видеобуферами и выводом прямо на экран, интерфейсы всевозможных карт памяти, сенсорных панелей, матрицы клавиатуры, стереоаудиосистемы и много, много-много чего ещё.

        Страшно? ))

        1. Ну, не микроконтроллер и не процессор, а полноценная система на чипе, внутри есть свои FLASH, SDRAM, EEPROM и даже кэш (это ещё ПРОСТОЙ мобильник). При нехватке внутренних параметров (99% случаев) сверху навешивается доп. память и устройства. Вцелом, мобильник — сложный компьютер с массой интерфейсов. Кстати, китайские подделки содержат уникальные системы на чипе, 70% всей электроники на одном кристалле, там не то что процессор, там видеоускоритель с аппаратнымы кодеками, видеобуферами и выводом прямо на экран, интерфейсы всевозможных карт памяти, сенсорных панелей, матрицы клавиатуры, стереоаудиосистемы и много, много-много чего ещё.

          Небольшое отступление: «ЧТО ТАКОЕ ARM?»

          ARM это:
          A|dvanced (продвинутые)
          R|ISC (Reduced Instruction Set Chip — чипы с уменьшеным числом команд)
          M|achines (устройства, машины)

          Скромное такое название конторы. В наше время расположение транзисторов и т.п. на чипе ПРОГРАММИРУЕТСЯ, то есть вы пишите на специальных языках программирования код, а его КОМПИЛИРУЮТ В АППАРАТНУЮ ЛОГИКУ (полевые транзисторы, конденсаторы, сопротивления…), выполняющую заданные вами алгоритмы. Если накосячите, перекомпилировать уже изготовленные кристаллы… сами понимаете. Потому конторы, которые (якобы) соорудили (написали) структуру ядра процессора (почти?) без ошибок берут БААЛЬШИЕ ДЕНЬГИ за свой труд. При этом им даже не надо делать процессоры самим, продают они КОД («программу»), которую можно «вклеить» в структуру любого ЧУЖОГО чипа.

          Вот так и появилось ядро ARM в 90% всей мобильной электроники.

          Кстати, угадайте, почему после появления ПРОГРАММ для (де-)кодирования медиаформатов (видео, аудио) с открытым исходным кодом на C (C++) довольно быстро появились АППАРАТНЫЕ чипы, реализующие те же функции (см. выше про однокристальные мегамобильники китайские), во всеформатных плеерах китайских, например.

          Вот вы и узнали страшные тайны пиратских микросхем ))

  4. Вот только не понятно одно — микроконтроллер с архитектурой MSC-51, который имеет архитектуру — CISC. Это как?

    И возник вопрос из предыдущего поста — правильно ли я понимаю, что процессор (микропроцессор) — это составная часть микроконтроллера? Т.е. микроконтроллер содержит в себе проц, память, входы/выходы и т.д.?

    1. Архитектура микроконтроллера определяет его систему команд и возможности по мат обработке. Погугли про RISC и CISC архитектуру.

      По сути дела так. МК это проц и периферия в одном флаконе

  5. Автор название у сайта очень хорошее — только нихера не объясняется принцип работы часто. приходится сопоставлять википедию ваш сайт и прочии! Вот что такое микроконтроллер — где ехо схема из чего он делается ? пластик, бамбук, песок?

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

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

      1. Хорошо, значит микроконтроллер это деревяшка с воткнутыми туда кусками металла.

        А как ассемблер его программирует. И с чем общаются куски метталла.

        Та же история с транзистором — где его схема {проводник- диэлектрик — полупроводник}. Каким образом микроконтроллер посылает тысячи сигналов ему на закрытие открытие. как выглядит закрытие открытие

        1. Это черная магия Вуду. Он ему что то нашептывает и бездушное дерево подчиняется.

          «где его схема» в гугле где нибудь. Зачем ему тысячи? Ему и одного хватит.

    2. ДиХальт просто опускает те пункты, которые не понадобяться НА ПРАКТИКЕ (по его мнению). Получив первые результаты (мотивацию) начинающий, по идее, бросится заполнять пробелы самостоятельно. Но — да, пополнять будет не тут. Если угодно, название сайта можете интерпретировать как «несложная электроника», а не как «просто — о электронике».

      Кстати, DI HALT — довольно двусмысленный никнейм. Особо эрудированные могут даже понять в чём двусмысленность ))

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

  6. Еще в 80х годах я на работе разрабатывал и изготавливал для нужд производства контроллеры сначала на 580ИК80, затем 1816ВЕ35 (MCS 48!), и они прекрасно справлялись с многозадачной работой в режиме реального времени, и ПЗУ 2-4 Кб вполне хватало. (Это вам не VISTA)!

    Не новички

    1. И? Мне и сейчас хватает тини2313 с теми же 2кб ПЗУ и той же многозадачной средой.
      И при чем тут виста?

      Собственно что вы этим хотели сказать то?

  7. DI HALT, что ты можешь сказать про контроллеры семейства ADuC, просто в универе микропроцессорные системы изучали на стенде с контроллером из этого семейства?

  8. А можно пару вопросов как новичку задать? :)
    Что такое ARM??? это я так понимаю какие то мощные контроллеры? их только Atmel выпускает, или многие производители?
    В чем разница между скажем 8-ми и 32-х разрядными контроллерами?
    И еще в первом комментарии вы написали что у AVR есть часы, это в смысле такие часы реального времени как DS1307, или какие-то другие? а то я до этого момента о часах AVR не слышал.
    А Вам, уважаемый anai, хочу сказать что Вы зря кидаетесь на автора. Этот сайт лучший из всех, которые я когда-либо встречал т.к. тут можно найти много нужной информации в очень доступном изложении, а если чего-то не нашли в статье, так задайте вопрос в комментарии и делов то! А то ведете себя так, будто с вас 100 баксов за вход взяли или обманули сказав что тут все есть.

    1. ARM это целое семейство. Точнее общее ядро, а выпускают их все кому ни лень. В том числе и Атмел.

      32 разряда упрощает и ускоряет математику, т.к. можно орудовать большими числами за одну операцию.

      Часы в АВР не совсем часы. ПРосто можно запрограммировать один из таймеров (повесив на него часовой кварц на 32768гц) чтобы он тикал один раз в секунду. Все остальное делается программно уже.

      1. Di Halt, я часто всречал фразу, что чтобы сделать часы нужен «часовой» кварц на 32768 Гц. В чём фишка? Почему иеммено 32768?

          1. Хм… Но те, что я встречал они либо 8 либо 16 разрядные… Или в 16 разрядный счётчик предварительно 0x8000 грузить?

  9. Начался у нас предмет «Микропроцессорные системы» и на практике будем иметь дело с PIC.
    Система комманд какае то там ужасная, среда MPLAB 7.42 пробовал, кривая и неочень удобная по крайне мере для меня, по крайне мере по сравнению с AVRStudio! В общем PIC что то мне не нравятся……..

    А у ATMEL вроде есть МК с ядром AVR32 которые типа конкуренты ARM…..
    с ARM насколько сложнее чем с AVR чё там за программатор нужен….ну я не про те модели что со встроенным USB?

    1. Там сложней все это собрать и запустить. Арму нужна внешняя память и куча обвяза. Вот так просто взять и подать питание не прокатит

  10. А ещё на рубеже веков и тысячелетий (в далёких 2000-2001 годах), когда сотовая телефония не особо активно была развита, были популярны схемы «вечных» таксофонных карточек, когда ноги PIC16C84 заводились на контактную площадку карточки и та прикидывалась новой картой на стопицот единиц. Вот тогда я и начал изучать архитектуру PIC. После CISC (я хорошо изучил Z80 и немного x86) язык команд RISC показался мне песней, уродливые костыли CISC стали мне противны. Ну а насчёт обвязки тех или иных МК — спорить не буду, относительно универсальный инструмент — это компьютер, а железки выбираются под задачу.

    1. А я наборот люблю когда одной командой можно горы свернуть. В этом плане дерганая RISC архитектура меня напрягает.

  11. Цитата
    На PIC‘ax традиционно построены бортовые компьютеры автомобилей, а также многочисленные бытовые сигнализации.

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

  12. отличное изложение материала!

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

  13. Цитата:»представить его в виде числа от 0 до 1024″. Я подумал, что правильно — до числа 1023, или я что-то не так посчитал.

  14. Я начинал работать на АСМ для Пиков http://www.microchip.com работал
    в МPLAB. Потом познакомился с OshonSoft ide Это язык бейсик лёгкий
    до невероятности написан доступно. Кроме того там есть и симулятор и много всяких функций. Язык одинаков что для Пик12 ,16,18 и АВР но ессно с маленькими или большими отпичиями.
    Работал на С в CVAVR вроде бы нормально, но глючит этот компилятор…
    Сейчас осваиваю IAR

  15. А микроконтроллеры AVR, а именно МК ATmega16A-AU можно «сжечь своими руками» как полевые транзисторы?

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

  16. Приветствую!
    Как считаешь, хватит ли перечисленных выше Атмелов для создания ацдц источника питания с хорошей дискретизацией ШИМа? Или нужны обособленные процессоры типа DSP?

    ps. Только начал разбираться с цифровым управлением, ранее всё делалось на интегральных аналоговых.

    Спасибо.

    1. От быстродействия зависит. И от того какая обработка требуется. Вообще видел неплохие источники питания с управлением от мега8

  17. Здравствуйте
    Захотелось попробывать что-то замутить, а именно восьми канальный десяти разрядный АЦП с последующей передачей через UART на комп, но после долгих блужданий (был кстати тут http://catalog.gaw.ru/index.php?page=components_list&action=components_list.filter&filter_producer_id=1119&id=1)
    не могу подобрать контроллер.
    Подскажите пожалуйста как и где поискать по параметрам цене и внутреннему фаршу

    Пасибочки

  18. Di Halt, громадное спасибо тебе за курс по АВР. он мне настолько понравился, что я его в полном объеме распечатал, вместе с каментами. кстати, судя по старым комментариям,у тебя сегодня День Рождения. Всего наилучшего тебе и еще раз спасибо за сайт :)

  19. Большое спасибо за статью! И вот почему: тема конечно не «нова», но вот я уже можно сказать старый чел (56лет)столкнувшись с автомобильной «электроникой», заинтерисовался микроконтроллерами и увидел мир другими глазами. По скольку в молодости занимался радиотехникой и приходилось что то творить своими руками, не изобретать, а просто тупо копировать (просто был телемастером). Тут открывается второе дыхание, сколько можно сделать интересных весщей и всего на одной микросхеме. Ну а схемы и прошивки сочинят молодые и умные ребята. Я чайник с вашей помощью поднимусь на очень для себя высокую ступень, ну а на деревянных чайников с деревянными вопросами просто не обращай внимания. Респект и уважуха уже за то, что тему не бросаеш с 2008г. Руками умею делать, тему потихоньку изучу, думаю с появившимися вопросами ВЫ поможите. С уважением Всилий.

  20. Привет
    Хочу замутить себе Trashduino из ][, так как в электронике особо не шарю, не могли бы вы написать модель импульсного стабилизатора, кварца, дросселя и по возможности кондеров, которые исполюзуются на плате? На сайте нигде не нашел, по схеме мало что понял. Спасибо

      1. Там один на 100 и один на 10. Ссылка на скрин платы, можете уточнить 2 детали?
        img703.imageshack.us/img703/5751/85990226.jpg

  21. Коммерческие МК работают от 0 до 70 градусов, а промышленные от — 40 до 85. Интересно за счет чего достигается такая разница в рабочей температуре? p-n переходы делаются из разных материалов в обоих случаях? Разные технологии изготовления?

      1. ХМ….. буквально что ли опускают в среду — 40 и смотрят работает не работает? Как то коряво. При таком отборе сегодня этот мк работает при — 40, а завтра сдохнет.

        1. не знаю, может гонят на повышеной частоте. Но я ни разу не видел, чтобы микруха из коммерческой партии после минус 30 немедленно сдыхала или как то сбоила. Равно как не работала после 70 градусов. Также работает. Но видать производитель гарантий не дает.

  22. Есть вопрос насчет зависимости тактовой частоты от напряжения. скажем, для tiny2313 указано что-то вроде 0-8 MHz @ 2.7-5.5v, 0-16 MHz @ 4.5-5.5v. Значит ли это, что для 12 мегагерц ему в любом случае понадобится минимум 4,5 вольт независимо от настройки источника тактового сигнала? Спасибо заранее.

    1. Скорей всего работать будет, но это внештатный параметр. МОжет сбоить или подглючивать. На 2.7 и 12мгц может даже не заведется.

    1. А — префикс энергопотребления (обычно). Этой буквы может и не быть, но в новых сериях она присутствует почти везде. Например, V и L серии — низковольтные, могут работать от 2,7 вольт. Правда за низковольтность приходится платить меньше частотой. Но оверклокинг возможен и тут, ничто человеческое нам не чуждо :) A и P имеют новые серии AVR с технологией PicoPower т.е. ультраэкономичные. Разницы по фаршу и внутренней структуре с их безиндексовыми моделями нет, тут все различие в работе всяких спящих режимов и энергопотреблении. Т.е. Mega16A легко меняется на Mega16 без А. И ничего больше менять не нужно.

      Вроде тут подробно описано, но понимаю, что смущает разница в цене)

  23. «Рекоменую следующие модели»
    На 2011 год рекомендованные для обучения модели остались все те же?

    1. У AVR семейства особых подвижек нету. Так что вполне себе. Плюс по ним по прежнему лидирующее число документации и примеров. А это важней фич и наворотов.

  24. Подскажите, пожалуйста, что не так.
    Ситуация такая: Использую контроллер ATMega16A-16PU. Если какой нибудь порт настроен на выход (например С), то происходит такая вещь: на ножке под нагрузкой (резистор и диод) напряжение 5В, на свободных ножках почему-то 1.7, при этом если на свободную ножку поставить нагрузку, то она выдает 5В.
    До этого пользовался ATMega8535-16PU и такого не наблюдалось.
    Не кричите на меня, пожалуйста, я новичок. :)

    1. На порту С сидит ЖТАГ интерфейс и по дефолту он включен. Выключи его (фузами или программно, через бит JTD) и будет тебе счастье.

      1. А если такая штука происходит например на порте D?
        Я если честно с D не проверял еще, но на всякий случай узнать интересно. Что это может быть? Заводской брак?

        1. Вот если с D такое происходит то либо косяк проца (маловероятно), либо криво софт инициализировал. Но с Ц точно жтаг. Его на 8535 не было, а на М16 и М32 он уже есть.

  25. Здравствуйте! не знал куда написать, решил написать сюда) Хотел бы попросить совета. Учусь на тором курсе. Есть вот такой вот стенд:
    http://opensys.com.ua/Stend/Ev8031 с LCD. Поставлена задача реализовать на нем протокол ModBus RTU, чтобы он выступал как мастер и опрашивал какое-то устройство. С микроконтроллерами дела до этого я не имел. Огромное количество информации — не знаю за что хвататся: i8051, uart, сам модбас…
    В голове полная каша. Посоветуйте как правильно построить изучение и на что обратить внимание в первую очередь, какую-небудь литературу конкретную, которая поможет разобратся.
    Потрясающтй сайт! Отличный статьи для начинающих! Спасибо вам за труд!!!

Добавить комментарий

Ваш e-mail не будет опубликован.

Перед отправкой формы:
Human test by Not Captcha