Электронный термостат на микроконтроллере Attiny2313. Схема и описание
Электронный термостат на микроконтроллере является весьма полезным устройством в подсобном хозяйстве. При помощи термостата в зимнее время возможно установить плюсовую температуру в кессоне, а летом наилучший температурный режим в теплице. Не лишним будет термостат и в организации отопления загородного дома.
Описание устройства
Этот электронный термостат на микроконтроллере достаточно прост и не требует много радиокомпонентов. Основа его — микроконтроллер Attiny2313, функция которого — опрос датчика температуры DS18B20, управление исполнительным устройством и вывод информации на экран трехразрядного светодиодного индикатора с общим анодом. Диапазон поддерживаемой температуры термостата можно уставить в диапазоне от 0 до 99,9 градуса.
Переключатель SA4 предназначен для переключения режима управления исполнительным устройством. В одном положении переключателя SA4, при повышении температуры выше заданного порога, включается исполнительное устройство, например, вентилятор для охлаждения, а при снижении температуры отключается.
В дежурном режиме на светодиодном индикаторе отображается фактическая температура. Шаг отображения температуры составляет 0,1 градуса, а при температурах ниже минус 9,9 градуса с шагом в 1 градус, так как первый разряд индикатора отображает знак минус.
Порядок управления электронным термостатом
Как уже было сказано выше, кнопка SA4 предназначена для выбора типа режима управления исполнительным устройством (режим нагрева или охлаждения) Для того чтобы узнать текущую поддерживаемую температуру, необходимо нажать кнопку SA3. Кнопки SA1 и SA2 предназначены для изменения температуры и ее записи в память микроконтроллера Attiny2313.
Для изменения значения порога термостата нужно нажать и удерживать кнопку SA3 и одновременно при помощи кнопок SA1 и SA2 увеличивать или уменьшать значение температуры. Теперь чтобы микроконтроллер записал в память данное значение нужно отпустить кнопку SA3, а затем одновременно нажать на SA1 и SA2.
Блок коммутации нагрузкой собран на оптопаре VD1 и симисторе VS1. Питание схемы осуществляется от маломощного трансформатора (ток вторичной обмотки около 0,15А), напряжение, с вторичной обмотки которого выпрямляется диодами VD1 и VD2 и стабилизируется микросхемы 78L05.
При программировании микроконтроллера Attiny2313 программатором необходимо выставить фьюзы следующим образом:
- CKSEL0=0
- CKSEL2=0
- CKSEL3=0
- SUT0=0
- SUT1=0
Скачать прошивку (1,1 MiB, скачано: 4 003)
Тестер транзисторов / ESR-метр / генератор
Многофункциональный прибор для проверки транзисторов, диодов, тиристоров…
Источник: Радиоконструктор, 7/2012
Очередной термостат на Tiny2313 и DS18B20
РадиоКот >Схемы >Цифровые устройства >Бытовая техника >Очередной термостат на Tiny2313 и DS18B20
Категорически приветствую всех Котов, а заодно и поздравлю с Новым 2017 годом.
Также хочу выразить благодарность котам за постоянную помощь в реализации идей: ARV, Z_h_e, Albert_V, pyzhman, Kavka, oleg110592 и другим, кого не упомянул…
Наконец-то и я решил опубликовать на любимом сайте свое творение, долго не решался, но подобных термостатов было собрано уже штук 6 и все исправно трудятся в течение года. Все они включают/выключают различные вентиляторы для охлаждения при достижении «верхней» температуры.
Собственно о чем речь. Заказали мне как-то изобрести простенький термостат (даже проще — термометр) и собрал я его ради интереса из того, что было под руками, а также в учебных целях (распотрошить протокол 1-Wire).
Термостат очень простой и представляет из себя устройство с семисегментным четырехразрядным индикатором. Собран на микроконтроллере ATTiny2313. Подключается к нему всего один внешний датчик DS18B20. Двумя кнопками настраивается температура верхнего порога (во всем диапазоне температур работы датчика от -55 до +125 градусов Цельсия), при нажатии на любую кнопку пропадает значок градуса в правом разряде, через некоторое время (ориентировочно 30 секунд) термостат переходит в режим контроля температуры, а значение выставленного порога сохраняется в памяти EEPROM.
В режиме контроля температуры отображается значок градуса в правом разряде индикатора. При достижении установленной температуры включается нагрузка (см. схему там транзистор с открытым коллектором) и на индикаторе в правом разряде еще появляется десятичная точка (символизирует о работе нагрузки). Когда температура упадет на пару градусов — нагрузка отключается. Вот и все!
Описаний протокола 1-Wire в сети очень много, поэтому в него уже углубляться не буду, скажу лишь одно для начинающих, что всегда старайтесь разбить большую задачу на много маленьких. Так и в программировании, не пытайтесь освоить все сразу (в том числе и из описания этого протокола, как и любого другого), разбивайте на блоки. Общение микроконтроллера с датчиком это не все сразу. Это какие-то команды и ответы на них. А команды — это байты циферок (как и ответы). А байты уже состоят из битов! Так вот! Минимальная единица информации — бит — вот с чего надо начинать в изучении и написании своей библиотеки. Все задержки/интервалы начинаете с битов чтения и записи. А если смогли записать/считать один бит, то потом уже оформляете дальше чтение и запись целого байта. А потом уже просто все — передаете команду, а подпрограммы все выполняют. ))) Надеюсь, поможет.
И сейчас меня может начнут пинать, но я все равно сделал по своему. Если внимательно изучите исходник (а он на ассемблере с комментариями), то увидите, что у меня нет определения адреса датчика, как и нет подсчетов контрольных сумм. Поэтому и датчик в моем термостате всего один. В любом случае, исходный код свободный и открытый, так что для усовершенствования годится — дерзайте, исправляйте и цепляйте кучу датчиков. ))) А можем и вместе покумекать, тогда вопросы на форум, будут интересные идеи — доработаем.
Итак, вот схема (сильно не серчайте, устройство было вообще без схемы, а схема уже потом создавалась, как модель в Протеусе, тем более по своей природе коты ленивы и я тоже):
Транзистор на схеме любой. На плате разведен под корпус типа SOT-23, т.е. маленький поверхностный. Рекомендую туда поставить вообще какой-нибудь полевой типа IRLML0030. Все силовые цепи по моей задумке внешние и управляются через реле.
Кстати, в архивах есть и модель Протеуса, где можно все понажимать (не забудьте указать микроконтроллеру файл с прошивкой).
Сначала, конечно делаем ЛУТ и травим. (Рисунок платы в СпринтЛайауте прилагается)
Для эксперимента я на первый образец ставил стабилизатор типа 78L05, но его мало, т.к. индикаторы довольно много жрут. Почему и советую поставить помощнее. Слева на плате видны штырьки — это для подключения питания и нагрузки. Справа три штырька для подключения самого датчика температуры, а снизу для подключения кнопок! (всегда сверяйтесь со схемой). Также на фотографии видны провода — это припаян программатор, в конце, конечно, все они убираются.
Прошитый термостат сразу начинает показывать температуру окружающей среды. Внимание, если датчик не подключен, то он всегда будет показывать -1 градус Цельсия (по умолчанию). ))))
Давайте теперь запихаем это чудо-юдо в какой-нибудь корпус! Ведь, хоть какое-то устройство у Кота должно быть в корпусе. )
Переднее дымчатое стекло взял от какого-то принтера сломанного.
Малость шлифанем и чуток заполируем.
Ну и покрасим подходящей краской из баллона, предварительно заклеив переднюю панель малярным скотчем.
Готово! Результат см. выше.
Если кто-то захочет поменять разводку платы — пожалуйста, тогда можно применить микроконтроллер в любом корпусе. Индикатор, который использовал я называется KEM5461AG (общий катод). Были и зеленого и красного и желтого цвета. Соответственно программа под них и создавалась. У кого будут другие индикаторы по разводке ног и по общим анодам — плату и прошивку правьте сами. Тем более, я даже призываю к этому. Не следует тупо повторять конструкцию — это не по-кошачьи. Резисторы в анодах индикатора на свое усмотрение, у меня стоят 100 Ом (кстати, на схеме они не показаны, а на плате есть). Индикация динамическая, поэтому 100 Ом в самый раз. Резистор в базе транзистора тоже зависит от того транзистора, который вы будете использовать. Для биполярного пойдет в районе 1 кОм или больше. Для полевого в районе 200 Ом. И еще рекомендую базу (затвор) притянуть к земле каким-нибудь резистором в районе 10 кОм (на схеме и плате его нет).
Если у вас получилась длинная линия до датчика температуры и термометр плохо работает, попробуйте уменьшить сопротивление R1.
Надеюсь кому-нибудь да пригодится в образовательных целях.
Все вопросы как всегда в форум.
Файлы:
Клеим стеклышко
Плата
Архив с прошивкой и исходником
Все вопросы в Форум.
Как вам эта статья? | Заработало ли это устройство у вас? |
Улучшенный термостат Хардлока 2.0 — d.lab
Статья названа в честь человека придумавшего этот термостат — hardlock.org.ua. Термостат предназначен для измерения и поддержания заданной температуры. При понижении температуры ниже заданного уровня термостат включается и при достижении заданного уровня – выключается.
Это вторая версия устройства и от первой она отличается только печатной платой, типом применяемый деталей и видом готового устройства. Настолько мне понравилось устройство, что я теперь все термостаты делаю только такие. Готовую печатку с трансформатором я засунул в коробку для автоматических выключателей. Очень удобно — даже крышечка тонированная есть. По совету автора в схему добавлены компоненты для защиты от статического электричества. Данная схема у меня стабильно работала с кабелем датчика длинной 15м, без намека на сбои.
Схема терморегулятора выполнена на микроконтроллере ATtiny2313 и питается от встроенного понижающего трансформатора. В качестве выносного датчика температуры применен цифровой датчик DS18B20 питающийся от схемы терморегулятора. Нагрузка коммутируется слаботочным реле. Если нужно значительно увеличить мощность нагрузки (более 1кВт) рекомендую применять дополнительный электрический контактор.
Основные особенности терморегулятора:
— измерение температуры от -55°С до +125°С, с шагом 0,1°С;
— установка температуры от -55°С до +124°С, с шагом 0,1°С;
— установка величины гистерезиса с шагом 0,1°С;
— повышенная помехоустойчивость;
— сохранение заданных настроек в энергонезависимой памяти.
Как видите устройство обладает всеми функциями которые должны быть в терморегуляторе. При этом, благодаря применению МК, схема очень проста и надежна.
После включения терморегулятора в сеть он сразу показывает «0.0» и тестирует датчик. И если все нормально, через секунду, выводит на индикатор фактическое значение температуры в формате «00.0». Если выявляется неисправность в цепи датчика то показания на дисплей выводиться «0.0», но терморегулятор не останавливается. После устранения неисправности датчика терморегулятор возобновляет работу. Когда нагрузка включена в первом сегменте индикатора светится точка «.00.0», когда выключена – нет. В этом же сегменте выводится знак «-00.0» при отрицательном значении температуры.
Кнопками «+» и «–» устанавливают температуру включения нагрузки. При нажатии на одну из этих кнопок на индикаторе, в первом сегменте, отобразится символ подчёркивания «_00.0». Теперь кнопками можно регулировать температуру. Длительное удержание кнопки приводит к ускоренному перебору значений. Если ни одна из кнопок не нажата в течении 5-ти секунд терморегулятор возвращается в обычный режим.
Для изменения величины гистерезиса нужно одновременно нажать на две кнопки «+» и «–». На индикаторе в первом сегменте будет отображаться знак «d00.0». Теперь кнопками можно регулировать величину гистерезиса. Длительное удержание одной из кнопок нажатой приводит к ускоренному перебору значений. Через 5 секунд после последнего нажатия на любую кнопку терморегулятор сохраняет настройки в память и возвращается в обычный режим.
Печатка и прошивка
Микроконтроллеры и Технологии — Термостат на ATtiny13
Дата публикации: .
Цель этого проекта — разработать устройство, которое считывает температуру с помощью внешнего датчика, и в зависимости от этих значений выходное реле будет менять свое состояние. Преимущество этого термостата заключается в его гибкости установки температур, при которых реле может быть включено или выключено. Это позволяет использовать различные режимы гистерезиса.
В этом термостате используется 2-х разрядный семисегментный индикатор с общим анодом, который отображает текущую температуру во время нормальной работы. Если необходимо изменить одну из температур (Ton — температура, при которой выход включен, Toff — температура, при которой выход выключен), для этого используются 2 кнопки. Кнопка SW2 служит для переключения режима (-> Ton -> Toff -> Т(текущее значение) ->). Кнопка SW1 функционирует в режимах настройки температуры, Ton и Toff. После нажатия на кнопку значение дисплея всегда увеличивается на единицу. Если значение достигает 99, нумерация начинается снова с нуля. После переключения (кнопка SW2) в следующее состояние последнее отображаемое значение сохраняется во внутренней памяти EEPROM.
Реальное использование, для которого эта схема была спроектирована — включение/выключение циркуляционного насоса центрального отопления. В этом случае Ton > Toff, насос выключается, насос включается если текущая температура меньше Toff. Если температура превышает значение, установленное в T, насос включается и работает до тех пор, пока текущая температура не достигнет T. Включение выхода указывается путем включения десятичной точки на индикаторе устройства.
Описание конструкции
Основной частью термостата является микроконтроллер Atmel ATtiny13. Мотивацией для использования этого чипа была его низкая цена. Все линии ввода/вывода используются для удовлетворения всех требований (отображение, программирование и управление выходом). В этом случае вывод RESET устанавливается как выход для управления выходным реле. Недостатком является то, что в этом режиме невозможно использовать обычные ISP программаторы, после включения бита RSTDISBL микроконтроллер программируется только в режиме HVSP. Также необходимо установить биты конфигурации контроллера для тактирования от внутреннего генератора частотой 1,2МГц. ATtiny13 и 74HC164 используются в SMD корпусах, другие компоненты имеют общий дизайн. Разъем программирования ISP, так и HVSP уже установлены на печатной плате.
В качестве температурного датчика используется KTY81-210, на печатной плате предусмотрен разъем для его подключения, ожидается, что датчик будет установлен на измеряемом объекте. В этом случае датчик необходимо поместить в металлическую трубку и залить эпоксидным клеем, затем трубка может быть непосредственно присоединена к точке измерения. Измерение температуры аппроксимируется линейной функцией, аналого-цифровое преобразование 8 бит.
Технические данные
Напряжение питания: 7 — 17В;
Точность измерения: 1°C;
Диапазон измерения: 0 — 99°C.
Печатная плата
Архив для статьи «Термостат на ATtiny13» | |
Описание:
Исходный код(Ассемблер), файл прошивки микроконтроллера, макет печатной платы Eagle |
|
Размер файла: 101.61 KB Количество загрузок: 509 | Скачать |
Электронный термостат на микроконтроллере | Датчики температуры
Простой универсальный термостат на микроконтроллере PIC16F628A и датчике DS18B20
Термометр позволяет измерять температуру в диапазоне от -55 до +125 градусов, а также осуществлять функции термостата во всем диапазоне температур, с гистерезисом +/- 1 градус. Т.е. реле будет включено при температуре на 1 градус ниже заданной и выключено, при температуре на 1 градус выше заданной. Кроме того, я постарался сделать его максимально универсальным, поэтому здесь размещено две схемы, одна под индикатор с общим анодом (ОА), другая под индикатор с общим катодом (ОК). Также есть возможность применять датчики DS18B20 и DS18S20.
Управление осуществляется 2-мя кнопками. при нажатии на любую — дисплей индицирует заданную температуру (показания мигают). Далее кнопками +1 или -1 изменяют в ту или иную сторону порог темростата. Если кнопки не нажимать, то через несколько секунд термометр выйдет из режима установок, внесенные изменения будут сохранены в энергонезависимой памяти EEPROM, мигание прекратиться и дисплей будет отображать текущую температуру.
В термостате применен 3-х разрядный светодиодный индикатор с общим анодом (или общим катодом). Индикация температуры осуществляется так: температура ниже -9 градусов, отображается знак минус и 2 цифры. От -9 до +99 добавляется символ градуса в 3-м знакоместе, при плюсовой температуре знак + естественно не отображается. Температура выше 100 градусов также отображается без символа градуса. В качестве датчика температуры использован ходовой, можно сказать классический датчик — DS18B20 или DS18S20 (DS1820). Хоть термостат и может работать на температурах до 125 градусов, длительная эксплуатация его в таких режимах не рекомендуется, датчик долго не проживет. Оптимальная макс.температура 80. 90 градусов.
На схеме указан стабилизатор 78L05, схема с ним вполне работает, но микросхема греется. Для большей надежности все же лучше применить более мощный стабилизатор 7805.
Естественно, что под каждый из типов индикации и вариант датчика идет своя прошивка. Т.е. всего имеется четыре разных прошивки.
- Под ОК, с датчиком DS18B20
- Под ОА, с датчиком DS18B20
- Под ОК, с датчиком DS18S20
- Под ОA, с датчиком DS18S20
Заказать: Ваша страна:
Электронный термостат на основе МК
Механический термостат в течение долгого времени использовался в промышленности, бытовой технике и многих других устройствах для измерения и контроля температуры определенных процессов. В качестве датчика обычно использовался биметаллический датчик, который сделан из двух разных металлов, расширяющихся с разной скоростью при нагреве. Эти две металлические полоски соединены вместе, и когда температура повышается, они расширяются, и замыкают цепь.
При понижении температуры они остынут и вернутся к своей первоначальной позиции, разомкнув цепь. Изменяя расстояние между этими двумя полосками можно управлять температурой, при которой они замкнут цепь. До недавнего времени механический термостат широко использовался из-за его низкой стоимости по сравнению с электронным. Использование электронного термостата становятся все более популярными в настоящее время, так как стоимость полупроводников продолжает падать по мере развития технологий. Электронный контроль температуры является более простым и надежным чем механический.
Параметры этого микроконтроллера:
256 байт флэш памяти и 16 байт статического ОЗУ.
Рабочее напряжение от 2,0 В до 5,5 В постоянного тока.
3 порта ввода-вывода.
1 аналоговый компаратор.
Максимально допустимый ток на портах ввода-вывода 25 мА.
Электронный термостат на микроконтроллере Attiny2313. Схема и описание
Электронный термостат на микроконтроллере является весьма полезным устройством в подсобном хозяйстве. При помощи термостата в зимнее время возможно установить плюсовую температуру в кессоне, а летом наилучший температурный режим в теплице. Не лишним будет термостат и в организации отопления загородного дома.
Описание устройства
Этот электронный термостат на микроконтроллере достаточно прост и не требует много радиокомпонентов. Основа его — микроконтроллер Attiny2313. функция которого — опрос датчика температуры DS18B20, управление исполнительным устройством и вывод информации на экран трехразрядного светодиодного индикатора с общим анодом. Диапазон поддерживаемой температуры термостата можно уставить в диапазоне от 0 до 99,9 градуса.
Переключатель SA4 предназначен для переключения режима управления исполнительным устройством. В одном положении переключателя SA4, при повышении температуры выше заданного порога, включается исполнительное устройство, например, вентилятор для охлаждения, а при снижении температуры отключается. В другом же положении SA4, при понижении фактической температуры ниже установленного значения, включается обогреватель для поддержания температуры, при повышении же температуры нагреватель отключается.
В дежурном режиме на светодиодном индикаторе отображается фактическая температура. Шаг отображения температуры составляет 0,1 градуса, а при температурах ниже минус 9,9 градуса с шагом в 1 градус, так как первый разряд индикатора отображает знак минус.
Порядок управления электронным термостатом
Как уже было сказано выше, кнопка SA4 предназначена для выбора типа режима управления исполнительным устройством (режим нагрева или охлаждения) Для того чтобы узнать текущую поддерживаемую температуру, необходимо нажать кнопку SA3. Кнопки SA1 и SA2 предназначены для изменения температуры и ее записи в память микроконтроллера Attiny2313.
Для изменения значения порога термостата нужно нажать и удерживать кнопку SA3 и одновременно при помощи кнопок SA1 и SA2 увеличивать или уменьшать значение температуры. Теперь чтобы микроконтроллер записал в память данное значение нужно отпустить кнопку SA3, а затем одновременно нажать на SA1 и SA2.
Блок коммутации нагрузкой собран на оптопаре VD1 и симисторе VS1. Питание схемы осуществляется от маломощного трансформатора (ток вторичной обмотки около 0,15А), напряжение, с вторичной обмотки которого выпрямляется диодами VD1 и VD2 и стабилизируется микросхемы 78L05.
При программировании микроконтроллера Attiny2313 программатором необходимо выставить фьюзы следующим образом:
- CKSEL0=0
- CKSEL2=0
- CKSEL3=0
- SUT0=0
- SUT1=0
Скачать прошивку (скачено: 969)
Источник: Радиоконструктор, 7/2012
Двухканальный термостат на ATmega8 DS18B20 | Мир микроконтроллеров
Возможности термостата:Каналы идентичны, каждый канал может работать в следующих режимах:
1. Поддержание определенной температуры
2. Поддержание температуры в определенных границах (положительной, отрицательной, смешанной для режимов «нагрев» и «охлаждение»)
3. Однократный нагрев до определенной температуры, однократное охлаждение до определенной температуры (запуск режима осуществляется вручную)
4. Автоматический выбор режимов «Нагрев» или «Охлаждение»
Программа уже очень давно выложена на сайте, все проблемы, выявленные в ее работе, устранены (делал для себя, работой доволен)
Диапазон установки температур включения и выключения нагрузки:
— положительная — до +99ºС
— отрицательная — до -50ºС
Шаг установки температуры — 1 градус
Включение нагрузки происходит высоким уровнем с вывода порта микроконтроллера, выключение — низким уровнем.
Двухканальный термометр с диапазоном измерения текущей температуры от -55ºС до +125ºС с разрешающей способностью:
— положительные температуры до 99ºС — 0,1 градуса, свыше 99 градусов — до одного градуса
— отрицательные температуры до -9,9ºС — 0,1 градуса, ниже -9,9 градуса — до одного градуса
Период измерений температуры — около 1 сек.
Устройство управляется тремя кнопками
Отключение канала производится путем записи нулевых установок включения и выключения канала
Питание устройства осуществляется от стабилизированного источника напряжением 5 вольт
При возникновении ошибки в работе с датчиком соответствующий номер ошибки выводится на индикатор, а нагрузка отключается:
Еr.1 — нет высокого уровня на линии DQ
Er.2 — нет импульса присутствия от датчика
Er.3 — не восстановлен высокий уровень на линии DQ после импульса присутствия
К сожалению, из-за необходимости организации динамической индикации шести разрядов индикаторов, не удалось решить проблему с проверкой кода CRC.
В случае зависания программы сработает сторожевой таймер и микроконтроллер будет перезагружен. Перезагрузка не повлияет на работу устройства, за исключением — будут отключены нагрузки при использовании режима однократного нагрева/охлаждения
Алгоритм установки термостатов:
— выставляется температура включения нагрузки
— выставляется температура выключения нагрузки
— и все
Термо оборудование на микроконтроллерах
Многоканальный USB-Термометр (ATmega8, C)
27-10-2011
Когда то давно я написал статью о том, как сделать USB Термометр и разместил ее на двух сайтах. Девайс очень простой, но спустя пару дней,…
Просмотров: 5092
Термометр на TC77 (PIC16F628, C)
11-10-2010
Такой термометр подходит для большинства потребностей измерения температуры в быту. Но не смотря на то, что он очень прост и дешев,…
Просмотров: 3868
Уменьшение шума от кулеров, с выводом температур на LCD (ATmega8, C)
28-08-2010
Устройство создано для уменьшения шума от кулеров компьютера и контроле температур в системном блоке на LCD дисплее. Включает в себя…
Просмотров: 3893
USB Термометр (ATmega8, C)
10-03-2010
В качестве микроконтроллера, был выбран ATmega8 (такие, как ATtiny8/48 не захотел использовать по причине их дискретности в некоторых городах)….
Просмотров: 6606
Термостат на ATtiny2313 и DS18B20 (ATtiny2313, C)
13-01-2010
Данная конструкция стала прямым продолжением конструкции «Термометр на ATtiny2313 и DS18B20». Как там упоминалось, хотелось…
Просмотров: 9530
Улучшенный термостат на ATtiny2313 и DS18B20 (ATtiny2313, C)
13-01-2010
По многочисленным просьбам дорабатываю конструкцию «Термостат на ATtiny2313 и DS18B20». Теперь умеет:
Измерение температуры от -55°С до…
Просмотров: 25997
Термометр на ATtiny2313 и DS18B20 (ATtiny2313, C)
12-01-2010
В Интернете есть куча схем термометров на AVR, но как всегда хочется чего-то своего.. Да и мозги размять тоже следует. Этот термометр был…
Просмотров: 13822
Цифровой термометр на DS18B20 (ATmega8, C)
18-10-2009
Цифровой термометр предназначен для измерения температуры с точностью до одной десятой доли градуса Цельсия*.
Цифровой термометр…
Просмотров: 5747
Регулятор оборотов 12V вентилятора на DS18B20 (ATtiny13, C)
01-07-2009
Взял все вентиляторы из своего компа и попробовал при каком напряжении они стартуют. Получилась довольно печальная картина: некоторые…
Просмотров: 12076
Многофункциональные часы-термостат с дистанционным управлением (ATmega8)
08-03-2009
Возникла у меня потребность в настольных часах-термометре, чтобы помимо времени можно было узнать температуру на улице и в доме. В…
Просмотров: 4388
Термометр на PIC (PIC16F628A)
29-10-2008
Ниже представлена схема простого термометра на PIC’е. Индикатор (в моём случае BA56-12SRWA) используется с общим анодом.
Датчик температуры…
Просмотров: 10012
Термометр — меньше не бывает (ATmega8)
18-05-2008
Предлагается схема на микроконтроллере ATMega8 для измерения температуры в диапазоне от −55° C до +127° C с точностью не хуже +-0,5° C. В…
Просмотров: 6420
Аппаратно-программный комплекс многоточечного мониторинга температуры (PIC16F84A, asm)
19-04-2008
Цель проекта — разработка системы многоточечного мониторинга температуры, причем наблюдение за температурой должно быть доступным…
Просмотров: 3420
Цифровой термометр с выводом показаний на компьютер (PIC16F84A, asm)
19-04-2008
В качестве датчика температуры используется микросхема цифрового термометра DS18S20, который опрашивается контроллером на основе PIC16F84A….
Просмотров: 5188
Термометр с ЖКИ и датчиком DS18B20 (ATtiny15)
01-03-2008
В технической литературе и в Интернете можно найти множество описаний и схем цифровых термометров. В большинстве конструкций…
Просмотров: 4094
Термостат (AT90S2313, C)
15-02-2008
Прибор был создан по просьбе одного знакомого для контроля температуры в комнате — включения отопителя / вентилятора при достижении…
Просмотров: 4324
Термостат на DS18B20 и ATmega8 (ATmega8, C)
27-01-2008
В схеме, можно применять светодиодные семисегментные индикаторы с общим катодом или анодом (2 прошивки).
Датчик температуры DS18B20….
Просмотров: 15168
Простой термометр на DS18B20 (ATtiny2313, C)
26-01-2008
Это простой термометр на основе термо датчика DS18B20 и мк ATtiny2313 (или AT90S2313) выводящий информацию на 7-сегментный ЖКИ – модуль на основе…
Просмотров: 8039
Термометр с функцией таймера или управления термостатом (PIC16F84A, asm)
22-01-2008
Описания различных электронных цифровых термометров неоднократно публиковались на страницах журнала «Радио». Как правило, они…
Просмотров: 4474
Двухканальный термометр-термостат (АТ89С2051, asm)
20-01-2008
В последнее время в радиолюбительской литературе опубликовано много описаний различных конструкций на микроконтроллерах, чаще всего…
Просмотров: 6071
Термореле с цифровым датчиком температуры (PIC16F84A)
18-11-2007
Термодатчики повсеместно используются в различных областях электроники. Это термометры, пожарные датчики сигнализации, мониторинг…
Просмотров: 3741
headrotor / attiny-thermostat: код AVR-GCC для использования датчика температуры TC74 с микроконтроллером Atmel ATTiny
GitHub — headrotor / attiny-thermostat: код AVR-GCC для использования датчика температуры TC74 с микроконтроллером Atmel ATTinyФайлы
Постоянная ссылка Не удалось загрузить последнюю информацию о фиксации.Тип
Имя
Последнее сообщение фиксации
Время фиксации
Это код AVR-GCC для EMSL Art. Контроллер изменен на термостатическое управление выходным реле.Датчик температуры TC74 включает реле, когда температура поднимается выше заданного значения. В реле может быть подключено в нормальном режиме для обогревателей или в нормальном выключенном режиме. режим для кулеров или вентиляторов.
Предназначен для использования с релейной платой Art Controller от EMSL
The Art ControllerТребуется датчик температуры TC74, подключенный следующим образом:
| Vdd | PB3 | | — | — | — | SCK | PB2 | | GND | PB1 | | ПДД | PB0 |
PD1 — это выход TX UART, используемый для отладки.Не закрывайте Выключатель X60 или выключатель X10!
Этот код был адаптирован из EMSL Art Controller код и включает код bit-bang I2C на основе этого блога сообщение «Рауль»
Более подробную информацию об оборудовании можно найти в этом сообщении в блоге на сайте rotormind.com
основной файл находится на arttherm.c
Около
Код AVR-GCC для использования датчика температуры TC74 с микроконтроллером Atmel ATTiny
ресурсов
Вы не можете выполнить это действие в настоящее время.Вы вошли в систему с другой вкладкой или окном. Перезагрузите, чтобы обновить сеанс. Вы вышли из системы на другой вкладке или в другом окне. Перезагрузите, чтобы обновить сеанс.Мирли — Электроника и программирование
11 октября 2011 г. Измерительные схемы Это 2-канальный термометр, который может измерять температуру от -50,0 до +99,9 градусов Цельсия. Схема подготовлена для измерения температуры внутри и снаружи, но ее также можно использовать в других приложениях.После изменения исходного кода его можно использовать как простой термостат или более сложный регулятор температуры. Устройство построено на базе популярного цифрового датчика температуры DS18B20 и микроконтроллера ATTiny2313 . Благодаря этому универсальный мини-термометр намного проще в изготовлении и намного меньше по размеру. Все его части разместили под светодиодным дисплеем. Project — лучшая версия этого устройства (только польская версия). Практически каждый элемент был заменен на SMD и компонентов.Таким образом, схема намного меньше. Его можно использовать как небольшой модуль термометра или простой термостат. Небольшие размеры позволяют использовать крышку меньшего размера (чуть больше дисплея). В базовой версии мини-термометр может измерять температуру по двум каналам. Мини-термометр имеет два датчика на независимых соединениях 1-Wire . Для переключения между двумя температурами можно использовать две кнопки.Этот проект был опубликован в Elektronika dla Wszystkich 08/2011 (польский журнал для любителей электроники) и доступен как AVT2985
Как это работает ?:
На рисунке 1 представлена схема мини-термометра.Основная часть этого проекта — микроконтроллер U1 (ATTINY2313). Он работает с внутренним генератором, без внутреннего делителя частоты. В результате тактовая частота была установлена на 8 МГц. Кварцевого резонатора нет, поэтому размер печатной платы меньше, а вывод XTAL можно использовать в качестве входного порта PA0. Этот вход подключен напрямую к переключателю S2 . Микроконтроллер должен: считывать результаты измерения температуры с двух датчиков, вычислять значения, подходящие для светодиодного дисплея, считывать состояние кнопок S1 и S2 .Конденсатор С1 (100 нФ) размещен рядом с микроконтроллером и отвечает за фильтрацию питающего напряжения. Такая же задача у конденсаторов C2 (10uF) и C3 (10uF), которые необходимы для правильной работы регулятора напряжения U3 (78L05).Рисунок 1: Схема термометра
Этот проект очень прост, потому что в качестве датчика температуры используется DS18B20 . Этот датчик представляет собой 12-битный цифровой термометр, который может работать в диапазоне от -55 до 125 градусов Цельсия.Время, необходимое для преобразования температуры, составляет менее 750 мс. Считывание температуры полностью цифровое, а для связи с микроконтроллером используется шина 1-Wire . Для отображения температуры используется трехзначный дисплей LED с внутренне подключенными сегментами, адаптированный для мультиплексирования. Благодаря этому конструкция печатной платы намного проще. В этом случае использование отдельных дисплеев LED делает невозможным изготовление односторонней печатной платы. Резисторы R4-R11 (330) ограничивают ток светодиодного дисплея до максимального значения в районе 10-12 мА (на один сегмент).Однако средний ток будет меньше из-за мультиплексирования. Для управления анодами светодиодного дисплея используются три популярных транзистора T1-T3 (BC857). Их токи ограничиваются резисторами R1-R3 (3к3). Включение последовательных цифр на дисплее осуществляется циклической установкой низкого состояния на базе одного из транзисторов T1-T3 . При этом в порту B микроконтроллера должно быть установлено значение закодированной цифры. Важным компонентом является разъем GP1 , который также является местом, где могут быть подключены датчики и управляющий выход (в случае термостата).Разъем Goldpin не нужен, как видно на фотографиях — провода можно припаять прямо к плате. В случае термометра управляющий выход перейдет в низкое состояние при отрицательной температуре. Просто подключите светодиодный диод с последовательным резистором 470R между управляющим выходом и + 5В, чтобы сигнализировать знак «-».Строительство:
Вид на печатную плату снизу можно увидеть здесь. Рисунок в зеркальном отображении доступен здесь. Плата выполнена односторонней, и практически все элементы SMD.Исключение составляют светодиодный дисплей, кнопки и разъемы. Монтаж несложный, но требует небольшого мастерства в пайке SMD-компонентов. Рисунок здесь будет очень полезен для пайки печатной платы (с нижней стороны). Для монтажа на верхней стороне печатной платы очень полезно будет схематическое изображение, доступное здесь.Вначале хорошо припаять все SMD-элементы, потому что с другой стороны нет выступающих частей и монтаж проще. Следует отметить, что GND проходит в одном месте через кнопку (кнопка имеет 2 пары закороченных выводов).Если возникнет необходимость отказаться от кнопок вместо переключателя S1 , перемычку необходимо припаять. Недостатком небольших печатных плат является отсутствие разъема для программирования, поэтому при необходимости изменения программы потребуется припаять провода к выводам микроконтроллера. Разъем питания, как и в случае с GP1 , можно заменить проводами, припаянными непосредственно к плате. Распиновка GP1 показана на рисунке 2.
Рисунок 2: Описание разъема
Контакты 1 и 2 этого разъема следующие: питание и земля.Управляющий выход (OUT) доступен на контакте 3. Каждый из датчиков должен быть подключен тремя проводами: питание, земля и данные. Контакт данных первого датчика должен быть подключен к контакту 5, а второй датчик — к контакту 6 разъема GP1 . Термометр может питаться напряжением в диапазоне 7-12 В от регулятора напряжения 78L05 . Ничто не мешает пропустить регулятор напряжения и подключить напряжение питания 5 В непосредственно к цепи.Программирование:
Программа, управляющая работой термометра, была написана на известной программе BASCOM AVR .Он занимает около 70% доступной памяти микроконтроллера и может быть успешно скомпилирован в демонстрационной версии BASCOM AVR . Программа не сложная, вкратце выглядит так: все время процессор работает в бесконечном цикле, ожидая установки одного из временных флагов (прерывание Timer0). Каждые 4 мс вызывается процедура мультиплексирования светодиодного дисплея, которая своевременно переходит к показанию температуры (чтобы дисплей не мигал). Процедура обработки прерывания Timer0 показана ниже:
Przerwanie0:
Таймер0 = 131
Установить F4ms
Инкр Дзил (1)
Если Dziel (1) = 25, то
Дзил (1) = 0
Установите F100ms
Инкр Дзил (2)
Если Dziel (2) = 10, то
Дзил (2) = 0
Установите F1s
Конец, если
Конец, если
Возвращение
В начале Timer0 загружается до значения 131, что дает прерывание после подсчета 125 импульсов (256–131).Таймер работает с аппаратным делителем 256, поэтому тактовая частота 8 МГц дает прерывание каждые 4 мс. Сразу после прерывания устанавливается флаг F4ms. Переменные Dziel (1) и Dziel (2) работают как делители частоты. Первый из них отвечает за деление частоты на 25 и установку флага F100ms. Вторая переменная дает дополнительный делитель частоты на 10 и устанавливает флаг F1s каждые 1 с.Основной цикл показан ниже:
Делать
Если F4ms = 1, то
Сброс F4ms 'co 4 мс
Wysw = T
Gosub Wyswietl_zmierz
Конец, если
Если F100ms = 1, то
Сброс F100ms 'co 100ms
Если Pind.2 = 0 Тогда Канал = 1
Если Pina.0 = 0, то Kanal = 0
Конец, если
Петля
Конец
Работа термометра очень проста и зависит только от флагов: F4ms и F100ms. Большую часть времени процессор вращается в бесконечном цикле, ожидая установки одного из флагов. Каждые 4 мс выполняется процедура отображения и процедура считывания температуры, а каждые 100 мс состояние кнопок обновляется. В базовой версии программы реализовано простое чтение с клавиатуры (прямое считывание состояния входных контактов).Нажатие S1 переключает термометр на считывание второго датчика, а при нажатии S2 схема переходит к считыванию первого датчика.Процедура отображения и измерения температуры показаны ниже:
Wyswietl_zmierz:
Incr Mux
Если Mux = 5, то Mux = 0
Portd.3 = не минус
Для I = от 1 до 3
Wysw_pomoc = Wysw Mod 10
Ww = Wysw_pomoc
W (i) = Поиск (ww, Tabela)
Wysw = Wysw / 10
Далее я
Если W (3) = 40, то W (3) = 255 'wygaszenie zera wiodącego
Выбрать Case Mux
Случай 0:
Portb = W (3)
Сбросить Portd.6
Дело 1:
Установите Portd.6
Portb = W (2) и & B11011111
Сбросить Portd.5
Случай 2:
Установите Portd.5
Portb = W (1)
Сбросить Portd.4
Случай 3:
Установите Portd.4
Portb = 255
Госуб Темп
Случай 4:
Конец Выбрать
Возвращение
Табела:
Данные 40, 235, 50, 162, 225, 164, 36, 234, 32, 160
Процедура состоит из 5 шагов в зависимости от состояния переменной Mux. Он принимает значения от 0 до 4 и циклически изменяется при следующем вызове процедуры. Управляющий выход (Portd.3) устанавливается на отрицательное значение переменной минус. Он отвечает за отображение отрицательных температур и низкого состояния, таким образом, порт появляется, когда измеренная температура отрицательна. Затем в цикле for переменная Wysw, содержащая отображаемое значение, делится на три отдельные цифры. Затем они преобразуются в коды светодиодных дисплеев с помощью команды «Поиск» (с использованием таблицы преобразования). Эта процедура дает массив W (n) с закодированными значениями, где n = 1 … 3 индексирует символы для отображения.Остальная часть процедуры зависит от переменной Mux. Для значений 0–2 отображается одна из 3 цифр. В этот момент отключается анод, соответствующий предыдущей цифре, PortB устанавливается на кодированное значение следующей цифры, а анод, соответствующий следующей цифре, включается. Исключением является цифра W (2), где дополнительная операция (And & B11011111) предусматривает добавление десятичной точки после второго символа. Для Mux = 3 вызывается процедура измерения температуры, а состояние Mux = 4 является фазой ожидания измерения температуры.
Процедура измерения температуры показана ниже:
Темп:
Если F1s = 1, то
Сбросить F1
1ресет Пинд, Канал
1wwrite & HCC, 1, Пинд, Канал
1wwrite & HBE, 1, Пинд, Канал
T = 1wread (2, Pind, Kanal):
Минус = T.15
Т = Абс (т)
Т = Т * 10
Т = Т / 16
1ресет Пинд, Канал
1wwrite & HCC, 1, Пинд, Канал
1wwrite & h54, 1, Пинд, Канал
Конец, если
Возвращение
Эта процедура вызывается каждые 20 мсек, но измерения температуры происходят каждые 1 с после обнаружения высокого состояния флага F1s.Это простая версия шины 1-Wire, сконфигурированная для связи с одним устройством. Все команды 1-Wire вызываются с параметром Kanal, который отвечает за выбор правильной шины для считывания температуры (или pind.1 pind.0). После сброса отправляются команда пропуска ПЗУ и команда чтения DS18B20 регистров. Затем два байта считываются и сохраняются в переменной T (целое число). Знак температуры считывается и выполняет несложные вычисления. В результате переменная T принимает форму температуры в градусах, умноженной на 10 (например,13 означает 1,3 градуса). В конце процедуры отправляется команда преобразования температуры, которая всегда предоставляет фактическое значение температуры в регистрах DS18B20 .Схема может быть преобразована в термостат без особых усилий. Мы отказываемся от двухканального измерения температуры и отрицательных температур. Для управления выходом (Portd.3) можно подключить оптотриак и симистор (для приемников переменного тока). Приемник постоянного тока может управляться MOSFET-транзистором, подключенным к управляющему выходу.В основном цикле вам нужно будет внести изменения, показанные ниже:
Если F4ms = 1, то
Сбросить F4ms
Если Ust = 0, то Wysw = T, иначе Wysw = Tu
Gosub Wyswietl_zmierz
Конец, если
Если F100ms = 1, то
Сбросить F100ms
Если Pind.2 = 0, то
Incr Tu
Autoret = 20
Конец, если
Если Pina.0 = 0, то
Decr Tu
Autoret = 20
Конец, если
Если Autoret> 0, то
Усть = 1
Decr Autoret
Еще
Усть = 0
Конец, если
H = Вт + 10
L = Вт - 10
Если T> H, установите Portd.3
Если T, то сбросьте Portd.3
Конец, если
Этот код должен объявить переменные Tu, H и L как Integer, Ust как Bit и Autoret как Byte. Кроме того, переменной Tu необходимо начальное значение, потому что это температурный параметр для термостата. При измерении и отображении температуры следует удалить строку, отвечающую за сигнализацию отрицательных температур. Portd.3 теперь используется как управляющий выход. Это решение не идеально, нет ограничений на значения настроек и невозможно сохранить настройки в EEPROM, но во многих ситуациях работает очень хорошо.Предохранители микроконтроллера должны быть настроены на работу с внутренним RC-генератором с частотой 8 МГц, что на практике приравнивается к отключению только аппаратного делителя (бит CKDIV). Настройки Fusebits представлены ниже:Фото:
Список деталей:
Разъемы и механические | ||||
1 | зас | AB AB | ||
1 | GP1 | AB AB | ||
2 | S1 S2 | AB AB | ||
Резисторы | ||||
3 | 3k3 | R1 R2 R3 | AB AB | |
2 | 4,7 тыс. | R12 R13 | AB AB | |
8 | 330 | R4 R5 R6 R7 R8 R9 R10 R11 | AB AB | |
Конденсаторы | ||||
1 | 100 нФ | C1 | AB AB | |
2 | 10 мкФ | C2 C3 | AB AB | |
Полупроводники | ||||
3 | BC857 | Т1 Т2 Т3 | AB AB | |
1 | 78L05 | U3 | AB AB | |
1 | ATTINY2313 | U1 | AB AB | |
1 | AT5636BMR-B | W1 | AB AB |
Вложения:
Дизайн печатной платы: | ||
AB AB AB | Доска (нижняя сторона, термотрансферный метод) | 10.7 кБ |
AB AB AB | Плата (нижняя, зеркальная) | 10,7 кБ |
AB AB AB | Плата (нижняя сторона, несколько на странице, термотрансферный метод) | 157,0 kB |
AB AB AB | Крепление (верхняя сторона) | 8,7 кБ |
AB AB AB | Крепление (нижняя сторона) | 13,7 кБ |
AB AB AB | Слой описания (верхний слой) | 53.3 кБ |
AB AB AB | Слой описания (нижний слой) | 100,5 КБ |
Документация: | ||
AB AB AB | Схема термометра | 117,4 kB |
Программирование: | ||
AB AB AB | Исходный код термометра (BASCOM-AVR) | 3,1 kB |
AB AB AB | Исходный код термостата (BASCOM-AVR) | 3.4 кБ |
AB AB AB | Выходной файл термометра (BIN BASCOM-AVR) | 1,4 kB |
AB AB AB | Выходной файл термостата (BIN BASCOM-AVR) | 1,6 кБ |
AB AB AB | Выходной файл термостата (HEX) | 4,6 кБ |
AB AB AB | Выходной файл термометра (HEX) | 4,1 kB |
AB AB AB | Конфигурация битов предохранителей (обжиговой мат) | 12.5 кБ |
Вопросы и комментарии:
Пожалуйста, включите JavaScript, чтобы просматривать комментарии от Disqus. комментарии предоставленыШИМ-контроллер вентилятора на базе ATtiny85, зависящий от температуры
Это замена моего ШИМ-контроллера 555 на основе таймера. для регулирования скорости вентилятора 12 В. Небольшое количество деталей, работа в зависимости от температуры, включая останов вентилятор, и пространство для творческих улучшений делает его гораздо лучшей альтернативой. На С другой стороны, вам нужно иметь возможность программировать микроконтроллер Atmel ATTiny.
Оборудование
Железо очень простое. На схему поступает 12В от JP2, а это используется непосредственно как мощность вентилятора. R1, D2, C2 образуют грубый регулятор мощности для микроконтроллера. Q1 используется в качестве переключателя на стороне низкого давления для управления вентилятором. с ШИМ 32 кГц здесь будут работать полевые транзисторы типа BS170 или 2N7000.
Микроконтроллер (я использовал Attiny85, но Attiny45 тоже подойдет) внутренний датчик температуры не очень точен, поэтому вы может потребоваться его калибровка — для этого прошивка выводит значение АЦП на JP4 в последовательном формате со скоростью 38400 бит / с, 8 бит, без четности.Внутренний 8 МГц часы на грани допустимого для последовательной связи, поэтому вы можете получить некоторые неработающие символы, но значение обновляется примерно раз в секунду и вы, вероятно, добьетесь хороших результатов.
JP3 — это разъем для программирования, и вам не нужно его включать плату, если вы можете запрограммировать микроконтроллер каким-либо другим способом.
Поскольку датчик температуры встроен в микроконтроллер AVR, вы необходимо разместить весь модуль контроллера в точке, где температура нужно измерить.При небольшом количестве деталей вся вещь должна легко помещается на макетной плате размером 20×20 мм, если не использовать последовательное программирование разъем, и вы можете подключить его к проводам вентилятора.
Программное обеспечение
Весь код C ++ доступен на GitHub в моем tiny_pwm репозиторий. Я также сделал шестнадцатеричные файлы доступными, если вы не хотите создавать код самостоятельно, но имейте в виду что вам придется перестроить, если вы хотите откалибровать показания температуры. Для сборки вам понадобятся работающие make, avr-g ++ и avrdude.
Дом
Просто введите make , и вы должны получить файлы hex и eep. make flash попытается записать код для микроконтроллера с помощью avrdude с usbtiny-совместимым программатором. make clean уберет беспорядок из каталога, а make erase попытается стереть микроконтроллер флэш-память.
Содержание кода
Актуальная прошивка микроконтроллера AVR находится в tiny_pwm.cpp. Там — это элементарный код последовательного терминала с битовой последовательностью в bb_terminal.cpp, быстрый и грязный взлом кода ввода-вывода терминала из моей отладки Терминальный проект. Комментарии должны помочь обойти несколько строк код, который нужен этому проекту.
Важными особенностями прошивки являются то, что при запуске вентилятора затем ему дается короткий толчок на полную мощность, чтобы заставить его вращаться, и гистерезис в пару градусов в точке выключения вентилятора во избежание этого быстрое включение и выключение.
(PDF) Блок контроля температуры в вакуумной камере
162
БЛОК КОНТРОЛЯ ТЕМПЕРАТУРЫ В ВАКУУМНОЙ КАМЕРЕ
Жыгулин Д.О., Голобородько А.А.
Киевский национальный университет имени Тараса Шевченко, радиофизический факультет.
Украина, 01033, г. Киев, ул. Владимирская, 64, e-mail: [email protected]
Аннотация. Доработан модуль контроля температуры подконструкции. Разработана принципиальная схема термостата
и изготовлен заряд испытательного устройства. Основные возможности
поддерживают температуру от — 55
°
С до + 125
°
С с точностью до
0.1
°
С, время работы
~ 2 с.
Для получения металлических пленок необходимо напыление оксидов металлов [1],
и это очень сложная техническая задача
из-за высокой температуры плавления и нестабильности при нагревании.
Наблюдается осаждение оксидов в вакуумной камере
и образование нежелательных примесей в полученных пленках. В добавлении
важна температура пластины, поскольку она может изменить физико-химические свойства покрытий
.
Таким образом, целью данной работы является разработка модуля контроля температуры пластины
.
За основу была взята схема термостата ATtiny микроконтроллер 2313 [2] и цифровой датчик температуры
DS18B20 [3].
Принципиальная схема термостата представлена на рис.1. Главной особенностью
данной схемы является возможность регулирования температуры в определенных пределах.
Установлена предельная температура,
, и это значение сохраняется в энергонезависимой памяти микроконтроллера.При изменении температуры
датчик отправляет текущую температуру на микроконтроллер, который сравнивает полученное значение
со значением из памяти.
В случае, если температура ниже заданной, включается нагрев
, а если температура выше или равна заданной температуре, нагрев отключается.
Недостатком данной схемы является невозможность поддержания определенного значения температуры
.
Рис. 1 Принципиальная схема термостата
Поэтому для решения данной проблемы была проведена доработка схемы (рис. 2). При включении питания
программа микроконтроллера в первую очередь инициирует свои внутренние регистры.
Когда инициализация
завершена, программа считывает из энергонезависимой памяти микроконтроллера, устанавливая значение температуры
.
В качестве чувствительного элемента использовался цифровой полупроводниковый датчик температуры DS18B20
.
При изменении температуры датчик отправляет текущее значение температуры по ведущей последовательной шине 1 —
с 9-битным кодом с наименьшим значением 0,1 ° C на микроконтроллер.
Далее программа
Неделя 5-Производство электроники
Задача на неделю — сделать внутрисистемный программатор для программирования микроконтроллеров. Так давайте разберемся примерно так же и как это могло быть сделано
В системном программировании
Внутрисистемное программирование (ISP) — это программирование микроконтроллера, когда микросхема находится на плате и подключена ко многим другим компонентам.Во время ISP каждый вывод на микроконтроллере отключен, и чип программируется с помощью программатора, который следует некоторому протоколу. Удаление чипа во время программирования не требуется. Схема ISP, которую я использовал в то время, была «FabTinyISP»
FabtinyISP
FabTinyISP — это еще одна версия программатора / платы AVR ISP, которая может быть произведена в фабричной лаборатории с использованием фрезерованной печатной платы и легкодоступных компонентов.Полная информация об этом интернет-провайдере доступна «здесь»
.
.
Основным компонентом, то есть микроконтроллером, используемым в этом интернет-провайдере, является attiny45
.
Аттини 45
В FabTinyISP используется микроконтроллер Attiny 45.Attiny45 — это высокопроизводительный и маломощный 8-битный микроконтроллер AVR, работающий на архитектуре RISC от Atmel (недавно был приобретен микрочип Atmel). Attiny 45 поставляется в корпусе с 8 выводами. Attiny 45 имеет 6 контактов ввода / вывода, три из них являются контактами АЦП (10-битный АЦП), а два других — цифровыми контактами, поддерживающими ШИМ. Он поставляется с флэш-памятью 4KM, 256 внутрисистемной программируемой EEPROM и 256B SRAM. Рабочее напряжение от 1,8 В до 5,5 В, 300 мА. Attiny 45 поддерживает универсальный последовательный интерфейс. На рынке доступны как версия SMD, так и версия THT.Attiny 85 — это более высокая версия Attiny 45, они почти такие же. Единственная разница во флэш-памяти: Attiny 45 имеет флэш-память 4 КБ, а Attiny 85 — 8 КБ. Мы можем выбрать либо Attiny 45, либо Attiny 85. Ничего страшного, но Attiny 45 более чем достаточно для создания FabTinyISP. В fablab у нас есть SMD-версия Attiny 45. См. Официальную документацию отсюда.
ATtiny 45: флэш-память 4 КБ / EEPROM 256 Б / ОЗУ 256 Б
ATtiny 85: 8 КБ флэш-памяти / 512 ГБ EEPROM / 512 ГБ SRAM
- Особые характеристики: —
- Встроенная система отладки debugWIRE
- внутрисистемное программирование через порт SPI
- Внешние и внутренние источники прерываний
- Режимы низкого энергопотребления в режиме ожидания, шумоподавления АЦП и отключения питания
- Улучшенная схема сброса при включении питания
- Программируемая цепь обнаружения пониженного напряжения
- Внутренний калиброванный осциллятор
.
.
У меня есть базовый опыт создания печатных плат с использованием процесса травления, но использование фрезерного инструмента было совершенно новым опытом
Roland Modela MDX20- Фрезерный станок
.
Roland Modela MDX-20 — это небольшой фрезерный станок и прецизионный сканер 2 1 / 2D. Этот станок в основном используется для фрезерования печатных плат, хотя он также может фрезеровать другие мягкие материалы, такие как обрабатываемый воск.Для фрезерования печатных плат вы должны экспортировать свой дизайн в черно-белый монохромный png. Второе использование этого аппарата — сканирование. Он использует тонкую иглу, чтобы осторожно прикоснуться к объекту, и рассчитывает по этой модели 2 с половиной размеров. Хотя он и медленный при обработке, он может создать детализированную модель.
.
.
Трассировка и фрезерование
.
.
Был загружен файл png для фрезерования и трассировки печатной платы. Чтобы отличаться от других досок, я подумал, что добавлю свое имя внизу, и соответствующие изменения были внесены в файлы png с помощью Photoshop, и были получены изображения ниже.
.
.
Напильники для трассировки и фрезерования
.
.
СКАЧАТЬ ФАЙЛ 1.
.
СКАЧАТЬ ФАЙЛ 2.
Приступим к фрезерованию
.
- Установка жертвенного слоя: Для защиты станины от повреждения во время фрезерования используется жертвенный слой, здесь запасная печатная плата приклеивается к станине рядом с исходным положением (x, y; 0,0) и выше мы будем размещать печатную плату для фрезерования.Нажмите кнопку «Просмотр», чтобы оставить машину в режиме просмотра для работы на кровати Miller Bed .
- Вырезание печатной платы и размещение ее на временном слое: Удерживая машину в режиме просмотра, печатная плата требуемого размера помещается в временный слой рядом с исходной позицией (x, y; 0,0). Вот и мы. с использованием печатной платы класса FR-1, так как нам нужен только один слой, он дешев и легко фрезеруется.Двусторонняя лента используется для приклеивания печатной платы к жертвенному слою, чтобы его можно было снять в будущем
.
.
.
ПРИМЕЧАНИЕ: Различные типы печатных плат- FR1-FR4
- FR1 в основном такой же, как FR2. FR1 имеет более высокий TG 130 по Цельсию вместо 105 по Цельсию для FR2. Некоторые производители ламината, которые производят FR1, могут не производить FR2, поскольку стоимость и использование аналогичны, и иметь и то и другое неэффективно.
- FR3 также в основном FR2. Но вместо фенольной смолы используется связующее на основе эпоксидной смолы.
- FR4 (FR = огнестойкий) представляет собой стекловолоконный эпоксидный ламинат. Это наиболее часто используемый материал для печатных плат. 1,60 мм (0,062 дюйма). FR4 использует 8-слойный стекловолоконный материал. Максимальная температура окружающей среды составляет от 120 ° до 130 ° C, в зависимости от толщины. В Китае FR4 является наиболее широко используемым основным материалом для печатных плат, за ним идет FR1, затем FR2. Но FR1 и FR2 обычно используются для однослойных печатных плат, потому что они не подходят для прохода через отверстия.FR3 не рекомендуется для создания многослойных печатных плат. FR4 — лучший выбор. FR4 широко используется, потому что он удобен для изготовления как однослойных, так и многослойных печатных плат. Используя только FR4, компании, производящие печатные платы, могут изготавливать любые виды печатных плат, что значительно упрощает управление и контроль качества и в конечном итоге может снизить стоимость!
- CEM-1 и CEM -3
- CEM-1 Композитный материал, состоящий из тканых поверхностей из стеклоткани и бумажного сердечника в сочетании с эпоксидной смолой.В основном используется в производстве печатных плат. Легкая штамповка, отличные электрические свойства и более высокая прочность на изгиб, чем у сортов на бумажной основе. CEM-1 обеспечивает отличные механические и электрические свойства и хорошо пробивает до 0,093 дюйма.
- CEM-3 очень похож на FR4. Вместо стеклоткани используется ткань типа «мухи». CEM-3 имеет молочно-белый цвет и очень гладкий. Это полная замена FR4 и очень большая доля рынка в Азии. Это разновидность огнестойкого эпоксидного пластинчатого стекла с медным покрытием, которое обычно используется в электронике с двухсторонними и многослойными печатными платами.А CEM-3 — это новый материал подложки для печатных плат, разработанный на основе FR-4. В последние годы CEM-3 используется для замены FR-4 в Японии, даже больше, чем дозировка FR-4.
- Алюминиевый металлический сердечник №
- Печатная плата с алюминиевым сердечником означает, что основным материалом для печатной платы является металл, но не обычный FR4 / CEM1-3 и т. Д., И в настоящее время в качестве металла используется алюминий, медный сплав. Печатные платы с алюминиевым металлическим сердечником используются вместо традиционных печатных плат FR4 или CEM3 из-за способности эффективно отводить тепло от компонентов.Это достигается за счет использования теплопроводящего диэлектрического слоя.
- Гибкий и жесткий-гибкий Печатные платы Flex и Rigid-flex становятся все более популярными из-за их уникального применения. Платы Flex и Rigid-flex могут делать то, что не могут делать обычные стандартные жесткие печатные платы. Их можно складывать, скручивать и оборачивать вокруг плотной / небольшой площади упаковки. Большинство гибких печатных плат производятся с использованием «Kapton», материала, разработанного Dupont Corporation.Этот материал на основе полиимидной пленки устойчив к нагреванию, имеет стабильность размеров и низкую диэлектрическую проницаемость 3,6. Есть три варианта материала Kapton:
- 1. Pyralux LF (не огнеупорный клей на акриловой основе)
- 2. Pyralux FR (огнестойкий клей на акриловой основе)
- 3. Pyralux AP (Без клея — для более требовательных высокопроизводительных приложений)
.
Необходимые инструменты используются из полки для инструментов.
.
.
К печатной плате класса FR-1 приклеена двусторонняя лента.
.
.
.
Печатная плата наклеена над жертвенным слоем.
.
.
Не забудьте положить использованные инструменты обратно на полку 🙂.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
После завершения трассировки печатной платы.
.
Следующий шаг — повторить те же шаги для обрезки / фрезерования краев печатной платы и снятия ее с материнской печатной платы. Бита удаляется и заменяется на 1/32 дюйма для обрезки внешних краев печатной платы. Затем выполняются следующие шаги: Требуемый внешний макет загружается как png. Выбран режим обрезки доски «1/32» и выберите «Создать путь».Выберите «Сделать rml». Переместите указатель в предыдущую позицию указателя, введя значения (x, y). Нажмите ‘send it’. Теперь мы получим печатную плату, удаленную с материнской платы
..
.
.
.
.
Составьте список компонентов, выберите и поместите каждый компонент из магазина на бумагу
.
.
.
Подготовьте паяльную станцию для пайки компонентов на печатную плату..
.
- A. Рука помощи
- B. Паяльная проволока, пинцет, плоскогубцы
- C.Вытяжное устройство
- D. Паяльник
- E. Лупа
Паяльник был установлен на 280 градусов Цельсия, компоненты были припаяны один за другим с помощью вышеуказанного оборудования. Мультиметр использовался для проверки целостности цепей во время Он также использовался для проверки наличия прямого / обратного смещения диодов.
.
Готовая печатная плата.
- Для установки avrdude откройте терминал linux и введите sudo apt-get install avrdude gcc-avr avr-libc make
- Загрузите исходный код прошивки отсюда.Извлеките файл в указанную папку и назовите его fabisp
- Откройте терминал linux и перейдите в папку fabisp, созданную ранее, с помощью команды изменения каталога cd
- После входа в каталог, сделайте необходимые файлы .hex для прошивки в микроконтроллер. Тип марка . Он создаст соответствующий файл .hex, то есть ‘fts_firmware.hex’ в том же каталоге
- Следующим шагом является программирование вашего микроконтроллера путем его прошивки.шестнадцатеричный файл. Makefile, который находится в папке, — это файл, который дает директивы и задачи, которые должны быть выполнены. Нам нужно отредактировать этот make-файл с помощью текстового редактора и при необходимости изменить определенные параметры. Например, make-файл будет иметь следующий текст:
ПРОГРАММАТОР? = Usbtiny
Нам нужно заменить usbtiny на любой программатор, который вы используете, если только мы используем другой программатор
. - После необходимых изменений в make-файле заголовок PCB ISP подключается к другому уже запрограммированному ISP-программатору, как показано здесь.Поскольку наша печатная плата не знает, как взаимодействовать с USB-портом, требуется другой интернет-провайдер, чтобы запрограммировать ее в соответствии с требованиями. Заголовки ISP на обеих печатных платах подключены таким образом, что подключены одни и те же контакты (например, MOSI к MOSI, MISO TO MISO и т. Д.).
- USB-контакт уже запрограммированного ISP подключен к USB-порту системы, в которой работает Linux-терминал. Поскольку красный светодиод подключен к VCC, красные огни на обеих печатных платах будут включены
- Чтобы проверить, обнаружен ли usb, введите lsusb в терминале Linux. Проверьте, обнаруживает ли система какие-либо устройства usbtiny, как показано ниже:
- Поскольку система обнаруживает устройство, следующим шагом будет прошивка шестнадцатеричного файла, который был создан ранее. Наберите make flash на терминале, который будет прошивать шестнадцатеричный файл на нашу печатную плату
- Следующим шагом является отключение вывода сброса и использование его в качестве вывода ввода / вывода и отключение перепрограммирования микроконтроллера в будущем.Подключения должны быть выполнены, как и предыдущие, т.е. USB-порт программатора ISP к нашей печатной плате. Введите rstdisbl в терминал. Сейчас порт RST отключен
- Проблема, с которой я столкнулся, заключалась в том, что, когда я впервые прошил ее в своей системе Linux, «была показана ошибка подписи устройства». Позже я подключил его к компьютеру с Windows моего друга и прошил его с помощью GIT bash. На этот раз прошивка прошла успешно. Затем я вернул его на свой компьютер с Linux и снова прошил, но на этот раз все прошло успешно.Не понимаю, почему ошибка возникла в первый раз.
.
.
.
.
.
.
После успешной прошивки файла нам нужно установить предохранители. Введите в клемму предохранители . Это установит предохранители, кроме того, который отключает вывод сброса
. ПРИМЕЧАНИЕ: Что такое предохранителиКаждый микроконтроллер AVR, от ATtiny в термостате до ATMega в Arduino, хранит свою конфигурацию в серии предохранителей.Эти биты предохранителя управляют настройками, такими как множитель внутреннего генератора (и, следовательно, скорость чипа), или возможность использования вывода сброса в качестве вывода GPIO. Чтобы узнать больше, нажмите ЗДЕСЬ
Также есть онлайн-калькулятор предохранителей для получения значений предохранителей ЗДЕСЬ..
.
.
.
Групповое присвоение
.
Групповое задание заключалось в том, чтобы найти мельничное разрешение бит, то есть бит 1/32 дюйма и бит 1/64 дюйма
Сначала мы используем бит 1/64 со смещением 4 и загружаем его в модули fab, как показано ниже:
.
Файл .png для фрезерования от .001 до .02 Скачать файл.
.
.
Для этой конфигурации, т.е. «1/64» со смещением 4, вы можете видеть, что части меди остались на печатной плате. Затем мы должны попробовать ‘1/64’ со смещением -1
.
.
.
.
В этой конфигурации ‘1/64’ с ‘-1 заполнением’ фрезерование хорошее
.
Следующим шагом будет использование долота 1/32 дюйма для фрезерования со смещением -1
Мы могли видеть результат, как показано ниже
.
.
.
Из этого вывода мы можем сделать вывод, что бит 1/64 со смещением -1 подходит для фрезерования, а 1/32 нельзя использовать для фрезерования, но для резки печатной платы
ATTINY2313-20PU | 92 | 8-битный микроконтроллер, маломощный, высокопроизводительный, микроконтроллеры AVR семейства ATtiny серии ATtiny23, 20 МГц МИКРОЧИП | Каждый | Запрещенный товар Минимальный заказ от 1 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 1 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 20 МГц | 2 КБ | 128 байт | 20 контактов | ОКУНАТЬ | 18 входов / выходов | I2C, SPI, UART | 2.7В | 5,5 В | AVR ATtiny | ATtiny23 | — | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ATTINY2313A-PU | 1841616 | 8-битный микроконтроллер, маломощный, высокопроизводительный, микроконтроллеры AVR семейства ATtiny серии ATtiny23, 20 МГц МИКРОЧИП | Каждый | Запрещенный товар Минимальный заказ от 1 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 1 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 20 МГц | 2 КБ | 128 байт | 20 контактов | ОКУНАТЬ | 18 входов / выходов | I2C, SPI, UART | 1.8В | 5,5 В | AVR ATtiny | ATtiny23 | — | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ATTINY2313-20SU | 06 | 8-битный микроконтроллер, AVR Семейство ATtiny Микроконтроллеры серии ATtiny23, 20 МГц, 2 КБ, 128 байт, 20 контактов МИКРОЧИП | Каждый | Запрещенный товар Минимальный заказ от 1 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 1 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 20 МГц | 2 КБ | 128 байт | 20 контактов | SOIC | 18 входов / выходов | I2C, SPI, UART | 2.7В | 5,5 В | AVR ATtiny | ATtiny23 | — | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ATTINY2313A-SU | 1841617 | 8-битный микроконтроллер, маломощный, высокопроизводительный, микроконтроллеры AVR семейства ATtiny серии ATtiny23, 20 МГц МИКРОЧИП | Каждый | Запрещенный товар Минимальный заказ от 1 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 1 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 20 МГц | 2 КБ | 128 байт | 20 контактов | SOIC | 18 входов / выходов | I2C, SPI, UART | 1.8В | 5,5 В | AVR ATtiny | ATtiny23 | — | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ATTINY2313-20SUR | 2425138 | 8-битный микроконтроллер, маломощный, высокопроизводительный, микроконтроллеры AVR семейства ATtiny серии ATtiny23, 20 МГц МИКРОЧИП | Каждый (поставляется на отрезанной ленте) Варианты упаковки | Запрещенный товар Минимальный заказ от 1 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 1 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 20 МГц | 2 КБ | 128 байт | 20 контактов | SOIC | 18 входов / выходов | SPI, USART | 2.7В | 5,5 В | AVR ATtiny | ATtiny23 | — | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ATTINY2313V-10SU | 22 | 8-битный микроконтроллер, маломощный, высокопроизводительный, микроконтроллеры AVR семейства ATtiny серии ATtiny23, 10 МГц МИКРОЧИП | Каждый | Запрещенный товар Минимальный заказ от 1 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 1 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 10 МГц | 2 КБ | 128 байт | 20 контактов | SOIC | 18 входов / выходов | I2C, SPI, UART | 1.8В | 5,5 В | AVR ATtiny | ATtiny23 | — | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ATTINY2313-20SUR | 2425138RL | 8-битный микроконтроллер, маломощный, высокопроизводительный, микроконтроллеры AVR семейства ATtiny серии ATtiny23, 20 МГц МИКРОЧИП | Каждый (поставляется на отрезанной ленте) Варианты упаковки | Запрещенный товар Минимальный заказ 10 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 10 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 20 МГц | 2 КБ | 128 байт | 20 контактов | SOIC | 18 входов / выходов | SPI, USART | 2.7В | 5,5 В | AVR ATtiny | ATtiny23 | — | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ATTINY2313A-SUR | 2446406 | 8-битный микроконтроллер, маломощный, высокопроизводительный, микроконтроллеры AVR семейства ATtiny серии ATtiny23, 20 МГц МИКРОЧИП | Каждый (поставляется на отрезанной ленте) Варианты упаковки | Запрещенный товар Минимальный заказ от 1 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 1 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 20 МГц | 2 КБ | 128 байт | 20 контактов | WSOIC | 18 входов / выходов | I2C, SPI, USART | 1.8В | 5,5 В | AVR ATtiny | ATtiny23 | — | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ATTINY2313V-10SUR | 2425139RL | 8-битный микроконтроллер, маломощный, высокопроизводительный, микроконтроллеры AVR семейства ATtiny серии ATtiny23, 10 МГц МИКРОЧИП | Каждый (поставляется на отрезанной ленте) Варианты упаковки | Запрещенный товар Минимальный заказ 10 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 10 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 10 МГц | 2 КБ | 128 байт | 20 контактов | SOIC | 18 входов / выходов | SPI, USART | 1.8В | 5,5 В | AVR ATtiny | ATtiny23 | — | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
АТТИНИ2313В-10ПУ | 14 | 8-битный микроконтроллер, маломощный, высокопроизводительный, микроконтроллеры AVR семейства ATtiny серии ATtiny23, 10 МГц МИКРОЧИП | Каждый | Запрещенный товар Минимальный заказ от 1 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 1 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 10 МГц | 2 КБ | 128 байт | 20 контактов | ОКУНАТЬ | 18 входов / выходов | I2C, SPI, UART | 1.8В | 5,5 В | AVR ATtiny | ATtiny23 | — | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ATTINY2313V-10SUR | 2425139 | 8-битный микроконтроллер, маломощный, высокопроизводительный, микроконтроллеры AVR семейства ATtiny серии ATtiny23, 10 МГц МИКРОЧИП | Каждый (поставляется на отрезанной ленте) Варианты упаковки | Запрещенный товар Минимальный заказ от 1 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 1 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 10 МГц | 2 КБ | 128 байт | 20 контактов | SOIC | 18 входов / выходов | SPI, USART | 1.8В | 5,5 В | AVR ATtiny | ATtiny23 | — | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ATTINY2313A-SUR | 2446406RL | 8-битный микроконтроллер, маломощный, высокопроизводительный, микроконтроллеры AVR семейства ATtiny серии ATtiny23, 20 МГц МИКРОЧИП | Каждый (поставляется на отрезанной ленте) Варианты упаковки | Запрещенный товар Минимальный заказ 10 шт. Только кратное 1 Пожалуйста, введите действительное количество ДобавлятьМин .: 10 Mult: 1 | Семейство микроконтроллеров AVR ATtiny серии ATtiny23 | 20 МГц | 2 КБ | 128 байт | 20 контактов | WSOIC | 18 входов / выходов | I2C, SPI, USART | 1.8В | 5,5 В | AVR ATtiny | ATtiny23 | — |
Учебное пособие по программированию ATtiny85: Программирование ATTiny85 | Arrow.com
Новичкам в электронике трудно превзойти платы Arduino, такие как Uno и недавно улучшенная линейка Nano. Эти платы интуитивно понятны, доступны по цене и универсальны.
Когда вы создадите прочную основу навыков, вы можете захотеть еще больше сократить свой проект.Для простых приложений ATtiny85 может стать отличным выбором.
ATtiny85 Характеристики
ATtiny85 отMicrochip Technology доступен по цене от 1 до 2 долларов, в зависимости от выбранного количества и версии, например:
— Сквозной ATtiny85-20PU
— SOIC ATtiny85-20SU
— Формат QFN ATtiny85- 20MU
Посмотреть связанный продукт
Посмотреть похожие продукты
Посмотреть похожие продукты
Чип имеет пять контактов ввода / вывода или шесть, если вы перепрограммируете контакт сброса для работы в качестве дополнительного контакта ввода / вывода.
Если вас беспокоит энергопотребление, то микросхема ATtiny85 может похвастаться впечатляющей энергоэффективностью:
— Работает с напряжением питания от 1,8 до 5,5 В до 10 МГц в реализации «V»
— Версия с частотой 20 МГц все еще может работать с 2,7 V-5,5 В, что позволяет использовать широкий спектр вариантов питания
— Потребляет 300 мкА тока при изменении напряжения 1 МГц при 1,8 В или 0,1 мкА при отключенном питании
Давайте углубимся в энергопотребление немного подробнее: довольно маленький литий-полимерный аккумулятор емкостью 750 мАч 3,7 В теоретически может обеспечить такое устройство при работе в течение более 200 дней (без учета потерь при преобразовании мощности и преобразования напряжения в половину от его нормального значения), а также в режиме «Мощность- down Mode », значение будет в 3000 раз больше, более чем на тысячелетие.
ATtiny85 Arduino Учебное пособие
Теперь, когда вам понравилась идея этого маленького чипа, с чего начать?
1. Сопряжение с Arduino IDE
Как и многие современные платы и микросхемы для разработчиков, самый простой способ начать работу с ATtiny85 — использовать Arduino IDE и программатора. Выполните следующие простые шаги:
1. Установите Arduino IDE
.2. Перейдите на страницу поддержки микроконтроллера Arduino IDE ATtiny на GitHub
3.Следуйте инструкциям, чтобы добавить эту новую функцию
4. После правильной установки перейдите к Tools> Board в Arduino IDE, и вы увидите пару вариантов, перечисленных в ATtiny Microcontrollers .
2. Программируйте ATtiny85 с Arduino
Как вы могли заметить, ATtiny85 не имеет порта для программирования, как у Arduino Uno или Nano. Вместо этого вам нужно будет использовать программиста в качестве посредника между компьютером и микросхемой.Один из вариантов — использовать Arduino Uno в качестве внутрисистемного программиста (ISP). Хотя это самый экономичный вариант, если у вас есть неиспользованный Uno, другой вариант — приобрести специальное устройство программирования. ATtiny85 подключается непосредственно к устройству, которое подключается к USB-порту вашего компьютера.
Скорее всего, вам потребуется установить правильный драйвер, особенно если вы используете Windows. Установка соответствующего драйвера «libusb-win32» — последний шаг.
Разобрав драйверы, выполните следующие действия:
1.Войдите в свою Arduino IDE в меню Tools> Board
.2. Выберите вариант под надписью ATtiny25 / 45/85
3. В Tools выберите Processor: ATtiny85 и Clock: Internal 1 MHz . Вы можете заметить, что это немного другая процедура, чем обычно при работе с платами Arduino. Частота 1 МГц может измениться позже, но эта скорость является хорошей отправной точкой для экспериментов.
4.Измените настройку Programmer на USBtinyISP
5. Когда вы будете готовы к загрузке, подключите ATtiny85 к специальному разъему
.6. Нажмите кнопку со стрелкой, чтобы начать процесс (выбор порта не требуется)
А что закачать?
3. Светодиод ATtiny85 мигает
Одним из преимуществ использования специального программатора является то, что он имеет мигающий светодиод, подключенный к контакту 0. Видимый свет упрощает выполнение традиционного микроконтроллера «hello world».Однако, поскольку ATtiny85 не имеет встроенного светодиода, стандартный эскиз Arduino Blink не будет работать. Хорошая новость в том, что изменить его для работы очень просто:
1. Загрузите пример мигания в вашу Arduino IDE
.2. Измените где указано LED_BUILTIN на 0 (число)
3. Нажмите клавишу со стрелкой или Ctrl + U для загрузки, и вы увидите, что он мигает.
4. Расширенное программирование с ATtiny85
ATiny85 освободился от программатора, радостно мигает 5 светодиодами
Мигание светодиода — это хорошо, но настоящая прелесть ATtiny85 в том, что вы можете настроить его на работу практически без присмотра.Есть несколько способов настроить это:
Во-первых, программатор включает в себя восемь штырьков с гнездовой головкой, которые позволяют использовать перемычки. Это позволяет отправлять сигналы с микросхемы на макетную плату, оставаясь подключенным к программатору. Как только вы будете удовлетворены своей настройкой, вы можете снять чип и вставить его в макетную плату или печатную плату. Тебе хорошо идти.
Программирующий зажим неправильно расположен для ATtiny85-20PU
Однако после установки микросхемы перепрограммирование может стать обременительным.Вам нужно будет либо удалить микросхему и снова вставить ее в программатор, либо протянуть провода от программатора к контактам, которые могут отсутствовать рядом с платой.
Другой вариант — использовать зажим для микросхемы для легкого подсоединения и снятия. Этот зажим крепится к бокам ATtiny85, но обратите внимание на размер. Нормальное расстояние между макетами составляет 2,54 мм, в то время как большинство зажимов на рынке имеют расстояние 1,27 мм. Это замечательно, если вы используете меньший вариант SOIC (Small Outline Integrated Circuit), но он не будет правильно соответствовать «полноразмерной» модели.Выбор зажима большего размера может стоить вложенных средств, но убедитесь, что вы выбрали правильный размер.
ATtiny85: отличный вариант для небольших проектов
Когда вы будете готовы перейти на следующий уровень проектов микроконтроллеров, ATtiny85 может предложить вам расширенные возможности и гибкость. Низкое энергопотребление и небольшая цена делают его идеальным для встраиваемых проектов.