Съдържание:
- Стъпка 1: Как работи
- Стъпка 2: Материали и инструменти
- Стъпка 3: Схеми
- Стъпка 4: Сглобете на прототипна дъска
- Стъпка 5: Програмирайте веригата
- Стъпка 6: Запояване
Видео: Програмируем светодиод: 6 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:55
Вдъхновен от различни LED Throwies, мигащи светодиоди и подобни инструкции, исках да направя моята версия на светодиод, контролиран от микроконтролер. Идеята е да направя мигащата LED последователност препрограмируема. Това препрограмиране може да се извърши със светлина и сянка, напр. бихте могли да използвате фенерчето си. Това е първият ми инструктаж, всякакви коментари или корекции са добре дошли. Актуализиране 2008-08-12: Вече има наличен комплект в Tinker Store. Ето видео на препрограмирането му. Извинете за качеството.
Стъпка 1: Как работи
Като изход се използва светодиод. Като вход използвах LDR, светозависим резистор. Този LDR променя своя резистор, тъй като получава повече или по -малко светлина. След това резисторът се използва като аналогов вход към микропроцесорите ADC (аналогов цифров преобразувател).
Контролерът има два режима на работа, единият за запис на последователност, другият за възпроизвеждане на записаната последователност. След като контролерът забележи две промени в яркостта в рамките на половин секунда (тъмно, ярко, тъмно или обратното), той превключва в режим на запис. В режим на прекодиране входът на LDR се измерва няколко пъти в секунда и се съхранява на чипа. Ако паметта е изчерпана, контролерът се връща в режим на възпроизвеждане и започва да възпроизвежда записаната последователност. Тъй като паметта на този малък контролер е много ограничена, 64 байта (да, байтове!), Контролерът може да записва 400 бита. Това е достатъчно място за 10 секунди с 40 проби в секунда.
Стъпка 2: Материали и инструменти
Материали- 2 x 1K резистор- 1 x LDR (Light Rependist Resistor), напр. M9960- 1 x Нискотоков светодиод, 1.7V, 2ma- 1 x Atmel ATtiny13v, 1KB флаш памет, 64 байта RAM, 64 байта EEPROM, [email protected] 1 x CR2032, 3V, 220mAh Инструменти- поялник - спойка тел- макет- AVR програмист- 5V захранване- мултицет Софтуер- Eclipse- CDT плъгин- WinAVR Разходите като цяло трябва да бъдат под 5 $ без инструменти. Използвах ATtiny13v, защото тази версия на това семейство контролери може да работи на 1.8V. Това дава възможност да се управлява веригата с много малка батерия. За да работи много дълго, реших да използвам светодиод с нисък ток, който достига пълна яркост при 2ma.
Стъпка 3: Схеми
Някои коментари по схемата. Входът за нулиране не е свързан. Това не е най -добрата практика. По -добре би било да се използва 10K резистор като издърпване. Но той работи добре за мен и спестява резистор. За да поддържам схемата възможно най -проста, използвах вътрешния осцилатор. Това означава, че спестяваме кристал и два малки кондензатора. Вътрешният осцилатор позволява на контролера да работи на 1.2MHz, което е повече от достатъчна скорост за нашата цел. Ако решите да използвате друго захранване от 5V или да използвате други светодиоди, трябва да изчислите резистора R1. Формулата е: R = (Захранване V - LED V) / 0.002A = 1650 Ohm (Захранване = 5V, LED V = 1.7V). Използвайки два светодиода с нисък ток вместо един, формулата изглежда така: R = (Захранване V - 2 * LED V) / 0,002A = 800 Ома. Моля, обърнете внимание, че трябва да коригирате изчислението, ако изберете друг тип светодиод. Стойността на резистора R2 зависи от използвания LDR. 1KOhm работи за мен. Може да искате да използвате потенциометър, за да намерите най -добрата стойност. Кабината трябва да може да открива промени в светлината при нормална дневна светлина. За да се пести енергия, PB3 се настройва само на високо, ако се прави измерване. Актуализация: схемата беше подвеждаща. По -долу е правилната версия. Благодаря, dave_chatting.
Стъпка 4: Сглобете на прототипна дъска
Ако искате да тествате веригата си, чертежът е много удобен. Можете да сглобите всички части, без да се налага да запоявате нищо.
Стъпка 5: Програмирайте веригата
Контролерът може да бъде програмиран на различни езици. Най -използваните са Assembler, Basic и C. Използвах C, тъй като той отговаря най -добре на нуждите ми. Бях свикнал с C преди десет години и успях да съживя част от знанията (добре, само някои …). За да напишете вашата програма, препоръчвам Eclipse с приставката CDT. Вземете eclipse тук https://www.eclipse.org/ и приставката тук https://www.eclipse.org/cdt/. За компилиране на C език към AVR микроконтролери ще ви е необходим кръстосан компилатор. За щастие, ние имаме пристанище на известния GCC. Той се нарича WinAVR и може да бъде намерен тук https://winavr.sourceforge.net/. Много добър урок за това как да програмирате AVR контролери с WinAVR е тук https://www.mikrocontroller.net/articles/AVR-GCC- Урок. За съжаление, той е на немски, но може да намерите хиляди страници с уроци по тази тема на вашия език, ако ги търсите. След като компилирате своя източник, трябва да прехвърлите шестнадесетичния файл към контролера. Това може да стане чрез свързване на вашия компютър към веригата с помощта на ISP (в системния програмист) или с помощта на специализирани програмисти. Използвах специален програмист, тъй като улеснява схемата малко по -лесно, като запазва някои проводници и щепсел. Недостатъкът е, че трябва да сменяте контролера между веригата и програмиста всеки път, когато искате да актуализирате софтуера си. Моят програмист идва от https://www.myavr.de/ и използва USB за свързване към моя преносим компютър. Има много други наоколо и дори можете да го изградите сами. За самия трансфер използвах програма, наречена avrdude, която е част от дистрибуцията на WinAVR. Примерен команден ред може да изглежда така:
avrdude -F -p t13 -c avr910 -P com4 -U флаш: w: flickled.hex: iВ прикачен файл може да получите източника и компилирания шестнадесетичен файл.
Стъпка 6: Запояване
Ако вашата схема работи на макета, можете да я запоите.
Това може да се направи на печатна платка (печатна платка), на прототипна платка или дори без дъска. Реших да го направя без, тъй като веригата се състои само от няколко компонента. Ако не сте запознати с запояването, препоръчвам ви първо да потърсите урок за запояване. Моите умения за запояване са малко ръждясали, но мисля, че схванахте идеята. Надявам се да ви е харесало. Алекс
Препоръчано:
Renegade-i (програмируем IC тестер, който се чувства като истинското нещо): 3 стъпки (със снимки)
Renegade-i (Програмируем IC тестер, който се чувства като истинското нещо): МИЛИОНЪТНИ ДОЛАРНИ МЕЧТИ Мечтали ли сте някога да имате свой собствен IC тестер у дома? Не просто притурка, която може да тества IC, но и „програмируема“машина, която се чувства като един от водещите продукти на най -големите играчи в индустрията за полу -тестове, успех
8-пинов програмируем щит: 14 стъпки (със снимки)
8-пинов програмируем щит: 8-пиновият програмиращ щит ви позволява да програмирате чипове от серията ATtiny, като използвате самия Arduino като програмист. С други думи, включвате това във вашия Arduino и след това лесно можете да програмирате 8-пинови чипове. След това тези малки микроконтролери могат да бъдат
Напълно осветено - Програмируем RGB LED акрилен знак: 3 стъпки (със снимки)
Напълно осветено - Програмируем RGB LED акрилен знак: Играл съм с лазерния нож/гравьор и наистина се влюбих в гравирането, за да изчисти акрила и да излъчва източник на светлина от ръба. Дебелината на използвания акрил е a.25 " лист, който се отрязва наистина чисто от
Програмируем RGB LED секвенсор (използвайки Arduino и Adafruit Trellis): 7 стъпки (със снимки)
Програмируем RGB LED секвенсор (използвайки Arduino и Adafruit Trellis): Синовете ми искаха цветни LED ленти да осветяват бюрата си и не исках да използвам консервиран RGB лентов контролер, защото знаех, че ще им омръзне фиксираните модели тези контролери имат. Мислех също, че това ще бъде чудесна възможност да създам
Програмируем часовник с четиризнаков дисплей: 5 стъпки (със снимки)
Програмируем часовник с четиризнаков дисплей: Вие ще говорите за града, когато носите този отвратителен, огромен, напълно непрактичен ръчен часовник. Покажете любимия си нецензурен език, текстове на песни, прости числа и т.н. Вдъхновен от комплекта Microreader, реших да направя гигантски часовник, използващ