INHOUDSOPGAWE:

Programmeerbare LED: 6 stappe (met foto's)
Programmeerbare LED: 6 stappe (met foto's)

Video: Programmeerbare LED: 6 stappe (met foto's)

Video: Programmeerbare LED: 6 stappe (met foto's)
Video: How do you install LED lights on stairs - Smart Bright LEDs 2024, November
Anonim
Programmeerbare LED
Programmeerbare LED

Geïnspireer deur verskillende LED Throwies, knipperende LED's en soortgelyke instruksies, wou ek my weergawe van 'n LED wat deur 'n mikrobeheerder beheer word, doen. Die idee is om die LED knipperende volgorde herprogrammeerbaar te maak. Hierdie herprogrammering kan met lig en skaduwee gedoen word, bv. jy kan jou flitslig gebruik. Dit is my eerste opdrag, enige kommentaar of regstellings is welkom. Jammer vir die kwaliteit.

Stap 1: Hoe dit werk

'N LED word as uitset gebruik. As invoer gebruik ek 'n LDR, 'n ligafhanklike weerstand. Hierdie LDR verander sy weerstand aangesien dit min of meer lig ontvang. Die weerstand word dan gebruik as analoog insette vir die mikroprosessors ADC (analoog digitale omskakelaar).

Die kontroleerder het twee werkswyses, een vir die opneem van 'n reeks, die ander vir die afspeel van die opgeneemde volgorde. As die beheerder binne die helfte van 'n sekonde twee helderheidsveranderings opmerk (donker, helder, donker of andersom), skakel dit oor na die opnamemodus. In die herkoderingsmodus word die inset van die LDR meermale per sekonde gemeet en op die skyf gestoor. As die geheue uitgeput is, skakel die beheerder terug na die afspeelmodus en begin die opgeneemde volgorde speel. Aangesien die geheue van hierdie klein beheerder baie beperk is, 64 grepe (ja, grepe!), Kan die beheerder 400 bisse opneem. Dit is genoeg ruimte vir 10 sekondes met 40 monsters per sekonde.

Stap 2: Materiaal en gereedskap

Materiaal en gereedskap
Materiaal en gereedskap
Materiaal en gereedskap
Materiaal en gereedskap

Materiaal- 2 x 1K weerstand- 1 x LDR (ligafhanklike weerstand), bv. M9960- 1 x Laagstroom LED, 1.7V, 2ma- 1 x Atmel ATtiny13v, 1KB flitsgeheugen, 64 Bytes RAM, 64 Bytes EEPROM, [email protected] 1 x CR2032, 3V, 220mAh Tool- soldeerbout - soldeerdraad- broodbord- AVR programmeerder- 5V kragtoevoer- multimeter- sagteware- Eclipse- CDT-inprop- WinAVR Koste in die algemeen moet laer as $ 5 wees sonder die gereedskap. Ek het die ATtiny13v gebruik omdat hierdie weergawe van hierdie kontroleerderfamilie teen 1.8V kan werk. Dit maak dit moontlik om die stroombaan met 'n baie klein battery te laat loop. Om dit baie lank te laat werk, het ek besluit om 'n laestroom -LED te gebruik wat al op 2ma die volle helderheid bereik.

Stap 3: Skema's

Skemas
Skemas

Enkele opmerkings oor die skematiese weergawe. Die terugvoerinvoer is nie gekoppel nie. Dit is nie die beste praktyk nie. Beter sou wees om 'n 10K -weerstand te gebruik as optrek. Maar dit werk goed vir my sonder en dit bespaar 'n weerstand. Om die kring so eenvoudig as moontlik te hou, het ek die interne ossillator gebruik. Dit beteken dat ons 'n kristal en twee klein kapasitors bespaar. Die interne ossillator laat die beheerder op 1.2MHz werk, wat meer as genoeg spoed is vir ons doel. As u besluit om 'n ander kragtoevoer as 5V te gebruik of om 'n ander LED te gebruik, moet u die weerstand R1 bereken. Die formule is: R = (Kragtoevoer V - LED V) / 0.002A = 1650 Ohm (Kragtoevoer = 5V, LED V = 1.7V). Deur twee lae stroom LED's in plaas van een te gebruik, lyk die formule soos volg: R = (Kragtoevoer V - 2 * LED V) / 0.002A = 800 Ohm. Let asseblief daarop dat u die berekening moet aanpas as u 'n ander tipe LED kies. Die waarde van die weerstand R2 hang af van die gebruikte LDR. 1KOhm werk vir my. U kan 'n potensiometer gebruik om die beste waarde te vind. Die cicuit moet ligveranderinge by normale daglig kan opspoor. Om krag te bespaar, word PB3 slegs op hoog gestel as 'n meting gedoen word. Opdatering: die skema was misleidend. Hieronder is 'n korrekte weergawe. Dankie, dave_chatting.

Stap 4: Monteer op 'n prototipe bord

Monteer op 'n prototipe bord
Monteer op 'n prototipe bord
Monteer op 'n prototipe bord
Monteer op 'n prototipe bord

As u die kring wil toets, is 'n broodbord baie handig. U kan alle dele bymekaarmaak sonder om iets te soldeer.

Stap 5: Programmeer die kring

Program die kring
Program die kring
Program die kring
Program die kring

Die beheerder kan in verskillende tale geprogrammeer word. Die meeste gebruik is Assembler, Basic en C. Ek het C gebruik, aangesien dit die beste by my behoeftes pas. Ek was tien jaar gelede gewoond aan C en kon 'n deel van die kennis herleef (wel, net 'n paar …) Om u program te skryf, beveel ek Eclipse aan met die CDT -inprop. Kry eclipse hier https://www.eclipse.org/ en die inprop hier https://www.eclipse.org/cdt/. Vir die opstel van C -taal na AVR -mikrobeheerders benodig u 'n kruissamesteller. Gelukkig soos ons is, bestaan daar 'n hawe van die beroemde GCC. Dit word WinAVR genoem en kan hier gevind word https://winavr.sourceforge.net/ Tutoriaal. Jammer, dit is in Duits, maar u kan duisende tutoriaalbladsye oor die onderwerp in u taal vind as u daarna soek. Nadat u u bron saamgestel het, moet u die hex -lêer na die beheerder oordra. Dit kan gedoen word deur u rekenaar aan te sluit op die stroombaan met behulp van ISP (in stelselprogrammeerder) of deur toegewyde programmeerders te gebruik. Ek het 'n toegewyde programmeerder gebruik, aangesien dit die kring effens makliker maak deur 'n paar drade en 'n prop te bespaar. Die nadeel is dat u die beheerder moet wissel tussen die kring en die programmeerder elke keer as u u sagteware wil opdateer. My programmeerder kom van https://www.myavr.de/ en gebruik USB om aan my notaboek te koppel. Daar is baie ander, en u kan dit selfs self bou. Vir die oordrag self het ek 'n program genaamd avrdude gebruik wat deel uitmaak van die WinAVR -verspreiding. 'N Voorbeeldopdragreël kan so lyk:

avrdude -F -p t13 -c avr910 -P com4 -U flits: w: flickled.hex: iHierby kan u die bron en die saamgestelde hex -lêer kry.

Stap 6: Soldeer

Soldeer
Soldeer

As u kring op die broodbord werk, kan u dit soldeer.

Dit kan gedoen word op 'n PCB (gedrukte cicuit board), op 'n prototipe bord of selfs sonder 'n bord. Ek het besluit om dit sonder te doen, aangesien die kring slegs uit 'n paar komponente bestaan. As u nie vertroud is met soldeer nie, beveel ek aan dat u eers na 'n soldeerhandleiding soek. My soldeervaardighede is 'n bietjie verroes, maar ek dink jy kry die idee. Ek hoop jy het dit geniet. Alex

Aanbeveel: