ATtiny85 1001 применение.
- Войдите на сайт для отправки комментариев
Втр, 04/01/2022 - 18:16
Как-то незаслуженно обидели весьма достойный микроконтроллер. Из особенностей наличие умножителя частоты и возможность работы таймера до весьма высоких частот, 100 мегагерц уж точно, что позволяет сделать к примеру частотомер.
Надеюсь в этой теме появятся скетчи ориентированные именно на этот микроконтроллер.
А что, мне он нравится, на нем даччики первой линии оч. хорошо получаются. Всякие уровни, протечки, термостаты и т.д. И жрёть немного.
Жалко, подорожал в 3 раза.
100 мегагерц уж точно
64 максимум
100 мегагерц уж точно
64 максимум
встречал частотомер на 100 мегагерц
А что, мне он нравится, на нем даччики первой линии оч. хорошо получаются. Всякие уровни, протечки, термостаты и т.д. И жрёть немного.
Жалко, подорожал в 3 раза.
я только в начале пути, получил сегодня десяток, залил туда загрузчик от DigiSpark, напрямую с IDE не получилось.
Для заливки загрузчика понадобится bat файл с содержимым:
И прошивка в файле ATtiny85.hex:
Файлы закинуть в каталог с программой IDE, запускать bat от администратора, в качестве программатора ARDUINO AS ISP.
Прошивает почему-то со второго раза, может что с программатором, конденсатор на резет не вешал.
Важно!!!
Установка драйверов возможна только с микроконтроллером в котором зашит только загрузчик, то-есть WINDOWS должна хотя бы раз найти ваше устройство и установить драйвера на выбранный порт USB.
Простой блинк без delay()
Нахрен загрузчик. Скетч - экспорт бинарного файла и программатор это наше всё. Как оказалось бонусом генериться lst файл с отличным листингом.
Не будем о наших и ваших. Люди хотят как проще.
Не будем о наших и ваших. Люди хотят как проще.
При этом для простоты приходится делать ряд важных шагов и при этом не ошибаться )))
Другое дело, что без программатора, хотя бы элементарного на основе ардуины с этими микроконтроллерами ничего не сделаешь.
Первый программатор для них был несколько диодов и резисторов в сом порт компа.
Первый программатор для них был несколько диодов и резисторов в сом порт компа.
Громова? Если он - видел как Натаха из Липецка его ваяла, на ютубе, сейчас она металлом увлечена )))
Тренажёр для изучения телеграфной азбуки, передаёт в средневолновом диапазоне.
Как пример использования умножителя PLL.
Статья на Хабре.
Схема:
Код программы:
Макетная плата:
Компиляция программы:
Для компиляции используйте ATTiny Core от Spence Konde6.
Во вкладке ATtinyCore выберите опцию ATtiny25/45/85 (No bootloader), ведущую в меню Board.
Убедитесь, что опции выставлены как указано ниже (прочие игнорируйте):
Chip: «ATtiny85»
Clock: «8 MHz (internal)»
Выберите Burn Bootloader для установки фьюз-битов в соответствии с этим вариантом частоты.
Затем загрузите программу, используя ISP (внутрисхемное программирование).
В переводе статьи есть ошибки в расчёте частоты излучения, должно быть:
The carrier frequency is:
тини85 это та же атмега8/88, только с меньшим числом ног. Особенностей минимум. Скетчи в Ардуино ИДЕ. Че там осваивать? :)
Я вот все мечтаю начать колхозить мелкие девайсы на стм8, коих у меня целый пакетик :)... но все времени не хватает...
тини85 это та же атмега8/88, только с меньшим числом ног. Особенностей минимум. Скетчи в Ардуино ИДЕ. Че там осваивать? :)
Я вот все мечтаю начать колхозить мелкие девайсы на стм8, коих у меня целый пакетик :)... но все времени не хватает...
в атмеге 8 есть PLL?
в атмеге 8 есть PLL?
не знаю
в атмеге 8 есть PLL?
не знаю
цимес ATtiny в наличии умножителя и высокоскоростного таймера )))
Реле оттайки (ТИМ-1) на ATtiny85:
Можно ли настроить на вывод отрицательных температур?
Готов поспорить, до 1001 применений не доберётся.
Похоже здесь был бы уместен заголовок "ATtiny85 1001 применение по ua6em"
Можно ли настроить на вывод отрицательных температур?
Можно ли настроить на вывод отрицательных температур?
а индикация минуса и знакомест не хватает, можно конечно урезать до одного знака мантиссу но вывод знака минус остаётся под вопросом.
а индикация минуса и знакомест не хватает, можно конечно урезать до одного знака мантиссу но вывод знака минус остаётся под вопросом.
Ужас. Я на 3-х разрядный минус вывожу: -10 -9.9 0 0.5 36.6
Офигенные проблемы.
а индикация минуса и знакомест не хватает, можно конечно урезать до одного знака мантиссу но вывод знака минус остаётся под вопросом.
это потому что в коде не используется PLL и высокоскоростной таймер :)
это потому что в коде не используется PLL и высокоскоростной таймер :)
Как будто без PLL нельзя получить частоты СВ диапазона.)
это потому что в коде не используется PLL и высокоскоростной таймер :)
Как будто без PLL нельзя получить частоты СВ диапазона.)
можно, я сейчас в раздумьях как получить очень точный тайминг, на другой атмелине есть возможность включить часовой кварц для этого
Блинк на первом таймере:
Генератор импульсов: (библиотека здесь)
если значения в enum идут последовательно, необязательно присваивать каждое:
Еще бы калькулятор от Евгения Петровича к ATtiny адаптировать не помешало бы...
Еще бы калькулятор от Евгения Петровича к ATtiny адаптировать не помешало бы...
и что мешает?
У меня такая в пылесосе трудится.
На практике использовал данный МК один раз.
Заказ был на эмулятор датчика температуры, делал i2c slave устройство, вроде претензий от заказчика не было.
ЗЫ:ещё вспомнил для "ненастоящего" немца (или австрийца) управление семафором на макете железной дороги.
Столкнулся с непонятками! Есть простой блинк на ватчдог таймере, на значении 4096 - встряёт в состоянии HIGH, ядро и платка - DigiSpark
Код вот:
Столкнулся с непонятками! Есть простой блинк на ватчдог таймере, на значении 4096 - встряёт в состоянии HIGH, ядро и платка - DigiSpark
Код вот:
Оно вообще зачем ?
Тебе кто то запретил подключать "util/delay.h" ?
Почему тогда он тебе разрешил использовать digitalWrite() ?
Если то теме, то в строке 26 должно быть как минимум(с даташитом сверяться лениво):
WDTCR = (1 << WDIE) | (1<<PRESCALER_4096ms);
Сам же и отвечу, лоханулся со значением, WDP3 он в регистре 5-й бит )))
BLINK на 1 таймере, используется встроенный LED DigiSpark.
Расчет таймеров:
Код программы:
мое сообщение #28 игнорируете?
Ну сказали же, нафига енуму присвоение! Как то по калечному всё.)
Долго я писал.)))
мое сообщение #28 игнорируете?
а #34 как?
а #34 как?
Для себя оставил для наглядности, что именно в регистр засунуть, код же будет по размеру одинаков надеюсь
"Горбатого могила исправит".( Так на ассемблере писать нужно!) А Wdt - это зачем?
Так на ассемблере писать нужно! А Wdt - это зачем?
так оттуда и тянется, 500 байт программы 16 килобайт листинг )))
Это я таймеры изучаю...
PS вообще-то подглядел у ЕвгенийП, а он плохому не научит )))
Задействованный wdt - значить код глючит, зависает а автор кода потерял надежду найти и исправить ошибки )))
Ну не соглашусь, всякие форс мажоры типа Эл магнитных помех никто не исключал, так что wdt пригодится всегда
Задействованный wdt ...
Не, не, не. Я об имени перечисления, которое нигде не используется.)
PS вообще-то подглядел у ЕвгенийП, а он плохому не научит )))
Может он в тот момент не знал, что за ним подглядывают.
Задействованный wdt - значить код глючит, зависает а автор кода потерял надежду найти и исправить ошибки )))
мне тут автор радиолюбительских спутников книжку подписал и я её даже прочитал, так там аж три типа WDT используется, поэтому AO-7 до сих пор еще живой )))
Задействованный wdt ...
Не, не, не. Я об имени перечисления, которое нигде не используется.)
мой косяк )))
мне тут автор радиолюбительских спутников книжку подписал и я её даже прочитал, так там аж три типа WDT используется, поэтому AO-7 до сих пор еще живой )))
В 2002-м воскрес, как я понял? И что работает кто то с ним? Как это выглядит?
мне тут автор радиолюбительских спутников книжку подписал и я её даже прочитал, так там аж три типа WDT используется, поэтому AO-7 до сих пор еще живой )))
В 2002-м воскрес, как я понял? И что работает кто то с ним? Как это выглядит?
отлично работает, у него зона покрытия более 1000км, высоко висит, да и наклон орбиты очень приличный, в высокие широты хорошо заходит... в 11-44 войдёт в зону радиосвязи в 11-57 покинет, там CW, если действовать оперативно пяток связей можно провести )))