Комментарии 23
Лайфхак — раз уж используются структуры доступа к портам, можно использовать OUTTGL, тогда ваш блинк будет в 2 раза короче. Вот так:
PORTB.OUTTGL= (1<<5);
_delay_ms(1000);
Благодаря успеху Arduino UNO в интернете можно найти множество руководств, разъясняющих особенности программирования 8-битных микроконтроллеров ATmega328 и их собратьев вроде ATtiny85.Мануалы ардуинщиков по миганию диодиком и корявые ардуиновские библиотеки — последнее на что стоит смотреть… Должна быть нормальная документация у производителя!
Как по мне, при выборе МК стоит ориентироваться поддержку платформы тулчейнами и объём ерраты (и в особенности её полноту — т.к. у некоторых производителей мало того что ошибка на ошибке, так и вносят их по полтора года).
которые, в сравнении с более старыми 8-битными микроконтроллерами (Micro Controller Unit, MCU) обычно предлагают больше RAM, более высокую производительность, поддержку большего количества периферийных устройствпамяти и периферии просто либо хватает под задачу, либо нет… Само по себе «больше» никаких особых плюсов не даёт. Даже жалко когда 90% ресурсов остаются незадействованными. Важно чтобы работало это всё без сбоев и программировалось без лишнего геморроя…
Планируете ли вы пользоваться новыми TinyAVR в своих проектах?
На близких по возможностях AVR контроллерах делают и разные DIY «компьютеры» и эмуляцию Old-процессоров :)
Для примера:
FIGnition
IDE using MikroForth for the ATMEL AVR Attiny 2313 in 20 Pin DIL
…
Недавно использовал. Понравилась отладка по одному проводу и хорошая стабильность RC генератора, подходящая для UART.
Планируете ли вы пользоваться новыми TinyAVR в своих проектах?
Нет уж, умерла так умерла.
Очередной инновационный отладочный интерфейс, какой по счёту у АВРов?
Источник тактирования там до сих пор только программатором через фьюзы поменять можно или догадались наконец по-человечески систему тактирования сделать?
Даже мелкие msp430 c фрамом уже стали дешевле для "контроллера единственной кнопки/светодиода".
Много программировал на AVR, но часто испытывал боль, то EEPROM повреждается при недостаточно быстром нарастании питания, то частота RC генератора сильно уплывает (не только с темепратурой, а ещё и со временем). Atmel сильно жлобились на переферию, таймеры. В tiny серии i2с это вообще боль. Поглядывал stm8, чуть-чуть пробовал их и очень их хотел, но коммерческие компиляторы под windows меня останавливали. Воровать я их не планировал, а на триалах далеко не уедешь, да и разрабатывать под windows — то ещё удовольствие.
ARMы — выход, я их люблю, но иногда под крохотные устройства хочется крохотные контроллеры.
Когда повился sdcc под stm8 — сразу с AVR ушел бегом. Очередного шанса им не дам :-)
сейчас вроде бы уже stm32 в 8-ми ногом корпусе есть и стоят копейки
и инфроструктура есть под обе платформы (win/linux), все бесплатно, и не нужно вспоминать что такое заблокированный чип фьюзами
Цена в 2 раза ниже: если сравнивать восьминогих, на Mouser сейчас STM32g030j6 0,9€, ATTiny402 - 0,42€. При том, что 4кБ флеша и 256 байт RAM обычно достаточно для их задач.
Низкоуровневое программирование микроконтроллеров tinyAVR 0-series