Sadržaj:

Programabilna LED: 6 koraka (sa slikama)
Programabilna LED: 6 koraka (sa slikama)

Video: Programabilna LED: 6 koraka (sa slikama)

Video: Programabilna LED: 6 koraka (sa slikama)
Video: Электрика в квартире своими руками. Финал. Переделка хрущевки от А до Я. #11 2024, Decembar
Anonim
Programabilna LED dioda
Programabilna LED dioda

Inspirisan raznim LED Throwies, trepćućim LED diodama i sličnim instrukcijama, htio sam napraviti svoju verziju LED diode kojom upravlja mikrokontroler. Ideja je da se LED trepereća sekvenca učini reprogramiranom. Ovo reprogramiranje se može izvesti svjetlom i sjenom, npr. mogli biste koristiti svoju svjetiljku. Ovo je moje prvo uputstvo, svi komentari i ispravke su dobrodošli. Ažurirajte 12.8.2008.: Sada je u trgovini Tinker Store dostupan komplet. Evo videozapisa kako ga reprogramirati. Izvinite na kvalitetu.

Korak 1: Kako to funkcionira

LED se koristi kao izlaz. Kao ulaz koristio sam LDR, otpornik ovisan o svjetlu. Ovaj LDR mijenja otpornik jer prima manje ili više svjetla. Otpornik se tada koristi kao analogni ulaz za mikroprocesorske ADC (analogni digitalni pretvarač).

Kontroler ima dva načina rada, jedan za snimanje sekvence, drugi za reprodukciju snimljene sekvence. Kada kontroler primijeti dvije promjene svjetline u roku od pola sekunde (tamno, svijetlo, tamno ili obrnuto), prebacuje se u način snimanja. U načinu ponovnog snimanja ulaz LDR -a se mjeri više puta u sekundi i pohranjuje na čip. Ako je memorija iscrpljena, kontroler se vraća u način reprodukcije i počinje reproducirati snimljenu sekvencu. Kako je memorija ovog malenog kontrolera vrlo ograničena, 64 bajta (da, bajtova!), Kontroler može snimiti 400 bita. To je dovoljno prostora za 10 sekundi sa 40 uzoraka u sekundi.

Korak 2: Materijali i alati

Materijali i alati
Materijali i alati
Materijali i alati
Materijali i alati

Materijali- 2 x 1K otpornik- 1 x LDR (svjetlozavisni otpornik), npr. M9960- 1 x LED niske struje, 1.7V, 2ma- 1 x Atmel ATtiny13v, 1KB flash RAM-a, 64 bajta RAM-a, 64 bajta EEPROM, [email protected] 1 x CR2032, 3V, 220mAhAlati- lemilica - žica za lemljenje- matična ploča- AVR programator- napajanje 5V- multimetar Softverski program- Eclipse- CDT dodatak- WinAVRCijelovi bi trebali biti ispod 5 USD bez alata. Koristio sam ATtiny13v jer ova verzija ove porodice kontrolera može raditi na 1.8V. To omogućuje pokretanje kruga s vrlo malom baterijom. Kako bih dugo radio, odlučio sam koristiti LED slabe struje koja dostiže punu svjetlinu već pri 2 mA.

Korak 3: Sheme

Sheme
Sheme

Neki komentari na shemu. Ulaz za resetiranje nije povezan. Ovo nije najbolja praksa. Bolje bi bilo upotrijebiti 10K otpornik za podizanje. Ali meni dobro radi i štedi otpornik. Da bi krug bio što jednostavniji, upotrijebio sam unutarnji oscilator. To znači da štedimo kristal i dva mala kondenzatora. Unutarnji oscilator omogućava kontroleru da radi na 1,2 MHz što je više nego dovoljna brzina za naše potrebe. Ako odlučite koristiti drugo napajanje osim 5V ili drugu LED diodu, morate izračunati otpornik R1. Formula je: R = (Napajanje V - LED V) / 0,002A = 1650 Ohma (Napajanje = 5 V, LED V = 1,7 V). Koristeći dvije LED diode male struje umjesto jedne, formula izgleda ovako: R = (Napajanje V - 2 * LED V) / 0,002A = 800 Ohma. Imajte na umu da morate prilagoditi izračun ako odaberete drugu vrstu LED -a. Vrijednost otpornika R2 ovisi o korištenom LDR -u. 1KOhm radi za mene. Možda ćete htjeti pomoću potenciometra pronaći najbolju vrijednost. Kutika bi trebala biti u stanju otkriti promjene svjetla pri normalnom dnevnom svjetlu. Radi uštede energije, PB3 je postavljen na visoku vrijednost samo ako se izvrši mjerenje. Ažuriranje: shema je bila pogrešna. Ispod je ispravna verzija. Hvala, dave_chatting.

Korak 4: Sastavite na prototipnu ploču

Sastavite na prototip ploči
Sastavite na prototip ploči
Sastavite na prototip ploči
Sastavite na prototip ploči

Ako volite testirati svoj krug, ploča je vrlo zgodna. Sve dijelove možete sastaviti bez da morate išta lemiti.

Korak 5: Programirajte krug

Programirajte krug
Programirajte krug
Programirajte krug
Programirajte krug

Regulator se može programirati na različitim jezicima. Najviše se koriste Assembler, Basic i C. Koristio sam C jer najbolje odgovara mojim potrebama. Bio sam naviknut na C prije deset godina i uspio sam oživjeti dio znanja (pa, samo dio …). Da biste napisali svoj program, preporučujem Eclipse sa CDT dodatkom. Nabavite eclipse ovdje https://www.eclipse.org/, a dodatak ovdje https://www.eclipse.org/cdt/. Za kompajliranje C jezika u AVR mikrokontrolere trebat će vam unakrsni kompajler. Na našu sreću, postoji luka poznatog GCC -a. Zove se WinAVR i može se pronaći ovdje https://winavr.sourceforge.net/. Vrlo dobro uputstvo o tome kako programirati AVR kontrolere sa WinAVR-om je ovdje https://www.mikrocontroller.net/articles/AVR-GCC- Tutorial. Žao nam je, na njemačkom je jeziku, ali ako ih tražite potražite ih na hiljade stranica sa uputstvima na tu temu. Nakon sastavljanja izvora morate prenijeti heksadecimalnu datoteku na kontroler. To se može učiniti povezivanjem računara na kolo pomoću ISP -a (u sistemskom programeru) ili pomoću namjenskih programera. Koristio sam namjenski programator jer on malo olakšava krug spremajući neke žice i utikač. Nedostatak je to što morate mijenjati kontroler između kola i programatora svaki put kada želite ažurirati softver. Moj programer dolazi sa https://www.myavr.de/ i koristi USB za povezivanje sa mojim prenosnim računarom. U okolini ima mnogo drugih, pa čak možete i sami izgraditi. Za sam prijenos koristio sam program po imenu avrdude koji je dio WinAVR distribucije. Primjer naredbene linije može izgledati ovako:

avrdude -F -p t13 -c avr910 -P com4 -U blic: w: flickled.hex: iU prilogu možete dobiti izvor i kompajliranu heksadecimalnu datoteku.

Korak 6: Lemljenje

Lemljenje
Lemljenje

Ako vaše kolo radi na matičnoj ploči, možete ga lemiti.

To se može učiniti na PCB -u (tiskana ploča), na prototipnoj ploči ili čak i bez ploče. Odlučio sam to učiniti bez, jer se krug sastoji samo od nekoliko komponenti. Ako niste upoznati sa lemljenjem, preporučujem da prvo potražite vodič za lemljenje. Moje vještine lemljenja su pomalo zahrđale, ali mislim da ste shvatili. Nadam se da ste uživali. Alex

Preporučuje se: