Добър ден Искам да споделя инструкции за изработка на сладки часовници. Те ще бъдат направени от млечна пластмаса. Ще има подсветка. Ярък екран Oled. И сърцето ще бъде Attiny 85, или по-скоро платката Digispark Attiny 85. Ще свържем и сензор за температура. Захранване през USB. Можете да се свържете с компютър и да поставите някъде близо до монитора. Можете да използвате зарядното устройство за телефона с USB и да го поставите навсякъде, където има електрически контакт. Е, и както винаги, можем да се справим без модула RTC (в реално време). Не се нуждаем от допълнителни и не са много краката на контролера.
Нека започнем със списъка на необходимите:
- Board Digispark Attiny 85
- Цифров сензор за температура ds18b20
- Oled екран (разделителна способност 128x64, работа с I2C протокол)
- Резистор 4.7 KOhm (възможно е 3.3 KOhm), 0.25 W
- 150 ома резистор или съответства на вашия светодиод
- Транзистор SS8050 (или еквивалент)
- 5 мм LED или SMD 5050
- Пластмаса с дебелина 1-3 мм. (полупрозрачен, млечен)
- ISP програмист (можете да замените всеки Arduino срещу заплащане)
- Бутон (необходим за определяне на времето)
- конектори Dupont 2,54 мм ("майка", "баща")
- лепило за горещо разтопяване или друго подходящо за пластмаса
- свързващ проводник
- поялник, колофон, спойка
Стъпка 1 Промяна на Digispark Attiny 85.
И така, имаме отличен борд Digispark Attiny 85. На борда има (познахте го) Attiny 85. Трябва да си купите версия на платката с микро USB. Пълният USB в този случай не се вписва. Но дори и да имате версия с пълен USB, можете да забележите стърчащата част на платката, няма да използваме USB. Също така има стабилизатор на напрежението и всички необходими обтегачи. Можете, разбира се, да вземете голия Attiny 85, но тогава процесът на запояване и монтаж ще бъде по-сложен.
Бордът, както казах, е отличен, но не без недостатъци (недостатъци на този проект, в друг може да е добродетел). В този случай резисторът, земното дърпане, PB4 (3 крака на Attiny 85) ще ни пречат, а светодиодът с резистора на PB1 (6 крака на Attiny 85) ги маркира в диаграмата:
Поглеждайки напред, ще кажа, че всичко по-горе ще ни пречи. Транзисторът с подсветка ще бъде свързан към PB4. И с издърпващ резистор няма да се отвори (проверено от личен опит). Към PB1 ще бъде свързан бутон, който също няма да работи нормално със светодиод, окачен на линията. На практика трябва да спойкате или просто да изкопаете (само внимателно, за да не повредите пистите) резисторите и светодиодите, посочени на диаграмата.
Оставете дъската и се погрижете за случая.
Стъпка 2 Случай.
Случаят с нашите бъдещи часовници ще бъде направен от полупрозрачна пластмаса. Тази пластмаса може да се поръча в онлайн магазина или да се купи в обикновен магазин (ако намерите). Лично аз го взех от стар LCD телевизор или монитор. Можете да го намерите, като разгледате матрицата. Листо от такава пластмаса обикновено се използва като дифузьор и се намира между LED подсветката и самия слой с течни кристали. След като получихме такава пластмаса, пристъпваме към сглобяването на случая. Нашият случай ще бъде под формата на куб (прост, но с вкус). Вътре в корпуса трябва да има разстояние 30x30x30 mm. Изрязваме предната страна на часовника, ако вземете пластмаса с дебелина 2 мм, тогава квадратът за предната страна трябва да бъде 34х34 мм. Този квадрат ще постави всички останали размери, а стените ще бъдат залепени, сякаш зад него. Изрязвайки предния квадрат, правим слот за екрана в него. Отстъпваме от горните 8 мм, 5 мм отстрани, самият слот трябва да е с размери 24х13 мм.
След това изрежете горната и долната част, те ще бъдат с размер 34х30 мм (припомнете си, размерите са дадени за пластмаса с дебелина 2 мм). Както и две странични размери 30х30 мм и една задна 34х25мм. След това с пистолет за горещо лепило залепете предната, долната и едната страна.
По този случай засега оставяме настрана. Останалите части ще бъдат залепени след инсталиране на всички вътрешности.
Стъпка 3 Електрик и монтаж на часовник.
И най-интересното предстои. Взимаме си хубавия „екран“. OLED (органичен светодиод) е графичен дисплей, всеки пиксел от който е независим светодиод. Диагоналът е 0,96 инча. Комуникация - I2C автобус. Резолюция 128x64. За да покажете изображението, просто свържете два проводника към контролера, което е много важно за Attiny 85. Екраните се предлагат в различни пикселни цветове, изберете по ваш вкус. Най-интересното ми се стори синьо с жълта ивица отгоре.
Избрах цифров сензор за температура, за да освободя Attiny от ненужни изчисления. ds18b20 е свързан с един проводник и работи по протокола OneWire. Линиите на данни на този сензор се нуждаят от издърпване до електропровода. Препоръчителната номинална стойност е 4,7 kOhm, но ми работи добре дори при 3,3 kOhm. Диаграмата му за връзка е следната:
Може да се свърже по други начини, например, в режим на паразитно захранване, но в този случай мисля, че е по-добре да използвате външното и да се свържете според горната диаграма.
Следващ в списъка е светодиодът. Необходима е за подсветка. Можете да изберете всеки цвят. Всеки 5 мм LED ще свърши работа. За равномерно осветяване на целия случай е по-добре да вземете два светодиода. Можете също така да изтласкате един 10 мм. Или трикольор. Ето това ви харесва повече. В началото направих вариант с два 5 мм диода, зелен. Но тогава исках да променя цвета на подсветката. Затова използвах трицветен такъв в пакета SMD 5050. Резисторите трябва да бъдат избрани за диода по ваш избор. Ще покажа и двата варианта как да го направя вместо вас - зависи от вас да решите.
Транзистор. Той е необходим за управление на светодиода, тъй като през Attiny може да тече само твърде нисък ток, а когато е свързан директно към крака на контролера, диодът свети много слабо. Независимо кой LED изберете или няколко, трябва да използвате транзистор. Идеален SS8050. Но всеки NPN с ниска мощност ще го направи.
Ние събираме всичко това по схемата:
И сега ще извършим процеса на сглобяване на живо:
Първо вземаме екрана.
Припояваме проводници към него, ако на мястото на контакти има „щифтове“, те трябва да бъдат премахнати. Правим същото с модифицирания Digispark Attiny 85.
Сега, използвайки двустранна лента или лепило за топло лепене, лепете Attiny и екрана заедно.
Ние спояваме всички други компоненти (ds18b20, SS8050, LED и други малки неща). И така, първата опция е 5 мм диоди:
Ние монтираме транзистора по "монтирания метод", за здравина можете да излеете лепило с топене:
Припояваме бутона за приспособяване на часовника към поводите, много е желателно да спойкате малък кондензатор, успореден на бутона (намалява ефекта от "отскачане" на контактите):
Започваме да опаковаме всичко това в калъф. Първо, залепете екрана с Attiny:
Ще опиша малко втория вариант за подсветка. SDM диодите заедно с резистори трябва да бъдат запоени към малка платка. Ние правим два еднакви модула:
Залепваме два такива модула заедно и ги запояваме на място:
Ако искате един цвят, просто спойка жицата от транзистора през резистор към LED крака, съответстващ на желания цвят.
За да преминем нашите часовници, е необходимо да извадите проводниците и да ги свържете в един блок. Следните контакти трябва да са в блока, в този ред:
-PB0- - PB1- -PB2- - PB5- -VCC- -GND-
Довеждаме тези проводници до един блок и го залепваме в задната част на кутията, по-долу:
От друга страна, ние залепваме бутона от блока на фърмуера, между тях извеждаме USB проводника за захранване. Също така, за да направите избора на цвета на подсветката, можете да направите друга подложка. В него трябва да се покажат следните проводници: жица от червения, син и зелен цвят на светодиода, а до тези контакти - контакт от транзистора. Управлението става чрез затваряне (джъмпер) на съответните контакти:
Първо лепим втората странична стена на часовника:
Преди да залепите останалата част от тялото, уверете се, че всичко работи. По-добре отидете на фърмуера сега. Проверете дали всичко работи както трябва и едва след това залепете горната и гърба на кутията.
Стъпка 4 Фърмуер.
За да редактирате и попълните скицата (или фърмуер), изтеглете от официалния сайт и инсталирайте най-новата версия на Arduino IDE:
Arduino.cc
След това добавяме поддръжка за контролерите от серията Attiny в ID на Arduino. Стартираме средата за разработка и отиваме във „Файл“ - „Настройки“ - „Допълнителни URL адреси на мениджър на дъски“. Поставете следната връзка:
https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json
Сега още няколко действия. Отидете на „Инструменти“ - „Board“ - „Board Board“ в лентата за търсене, въведете „Attiny“ и изберете „attiny by David A. Mellis“ - „Install“ и изчакайте инсталацията да завърши.
Сега е време да добавите необходимите библиотеки.
За екран
Контрол на температурен датчик
След като ги изтеглите, разопаковайте архивите в папката „библиотеки“. Желаната папка се намира в мястото за инсталиране на Arduino IDE.
Както казах, всички датчици за температура имат свой уникален адрес. Трябва да откриете адреса си и да редактирате следния ред:
байт addr [8] = {0x28, 0xFF, 0x75, 0x4E, 0x87, 0x16, 0x5, 0x63};
Часовникът е без RTC, така че за да настроите часовника, трябва да използвате линията:
if (micros () - prevmicros> 497000)
Променете избраната стойност. Колкото по-голяма е тази стойност, толкова по-бавен е часовникът. И обратно.
Ако имате ISP програмист, използвайте го за попълване скица в часовник.
Ако няма програмист, ние вземаме всяка дъска на Arduino, попълваме я със скицата от примерите на Arduino ISP. Свързваща подложка за фърмуер:
D11 - P0
D12 - P1
D13 - P2
D10 - P5
VCC - +5
GND - GND
И попълнете скицата.
За захранване можете да използвате USB порта на компютъра или да зареждате телефона с USB:
Последна снимка: