Turinys:

3 lengvos ATTiny atostogų dovanos: 4 žingsniai
3 lengvos ATTiny atostogų dovanos: 4 žingsniai

Video: 3 lengvos ATTiny atostogų dovanos: 4 žingsniai

Video: 3 lengvos ATTiny atostogų dovanos: 4 žingsniai
Video: Три быстрых и вкусных салата / 3 easy summer salads ! / the most delicious food in the world 2024, Lapkritis
Anonim
3 lengvos ATTiny atostogų dovanos
3 lengvos ATTiny atostogų dovanos

Kiekvienais metais vyksta atostogų metas, ir aš užstrigiu, ką padovanoti savo draugams ir šeimai. Žmonės visada sako, kad geriau dovaną pasidaryti patiems, nei nusipirkti parduotuvėje, todėl šiais metais aš tai padariau. Pirmasis rodo pavadinimą arba pagrindinį vaizdą, kai jis banguoja per orą, antrasis sklandžiai išnyksta tarp dviejų baltų lempučių (jame taip pat yra apsauginis kaištis, skirtas pritvirtinti prie drabužių ar piniginės), o trečiasis yra tam tikros nuotaikos šviesa, slinkimas sklandžiai tarp spalvų. Visų jų kaina yra mažesnė nei 15 USD, juos lengva surinkti per mažiau nei valandą. Taip pat šias instrukcijas ir dalis galite padovanoti tiems, kurie domisi elektronikos mokymusi.

Pastaba: Manomas pagrindinis litavimo lygis. Tačiau, skirtingai nei mano ankstesnis nurodymas, aš pasakysiu, kaip užprogramuoti AVR. Labai tikiuosi, kad tai padės žmonėms, kurie bando pradėti elektroniką. Prisimenu, kai buvau ten, ir mielai atsakysiu į visus jūsų klausimus. Atminkite, kad nėra kvailų klausimų! Aš palikau jums galimybę nuspręsti, kaip išdėstysite savo plokštę, tikėdamiesi, kad sugalvosite naują būdą, kaip parodyti paprastas mano sukurtas grandines. Prašau paskelbti nuotraukas, kai baigsite, nekantrauju pamatyti, ką sugalvosite! Visų projektų dalys N = projektų skaičius x N ATTiny45 (www.digikey.com) x N 8 kontaktų DIP lizdas („RadioShack“) x 1 didelė perforavimo plokštė (aš ją gavau „RadioShack“) x N 3v monetų elementų baterija ir laikiklis („RadioShack“) ir vienas 10k omas („RadioShack“) Štai trijų užbaigtų projektų vaizdas:

1 žingsnis: Pavadinimo mirksėjimas

Pavadinimo žybsnis
Pavadinimo žybsnis
Pavadinimo žybsnis
Pavadinimo žybsnis
Pavadinimo žybsnis
Pavadinimo žybsnis

Kitos dalys x5 PASKIRTI 3 mm šviesos diodai („RadioShack“) Šis projektas naudoja regėjimo patvarumą, kad būtų rodomas vaizdas ar tekstas, kai jie greitai perkeliami. Tai geriau veikia, kai tamsu. Naudodami AVR, mes greičiau perjungiame šviesos diodus, tada akys mato, kad galime sukurti vaizdą ore su labai nedaug komponentų. Kodas: (Atsisiųskite.zip failą puslapio apačioje, kad gautumėte kodą, makefile ir pan. zip failas)) #define F_CPU 1000000 #include #include void dispClear () {PORTB = ~ 0b00000000; } int main () {DDRB = 0xFF; // Tiems iš jūsų, kurie niekada neskaitė C prieš dvigubą pasvirąjį brūkšnį rodo komentarą. Tai nustato avr kaiščius kaip išvesties char x = 10; // x naudojamas delsos nustatymui. Padidinus vertę, lėčiau pereinama tarp pikselių, mažėja, o tuo tarpu (1) // Nors (sąlyga yra tiesa); {Daryk tai} (Tiesa C yra 1) {PORTB = ~ 0b00010001; // Mano draugo vardas yra Zoe, todėl nupiešiau simbolius ant milimetro popieriaus ir tada priskyriau juos PORTB. Pirmieji trys nuliai nesvarbūs, nes prijungti tik penki šviesos diodai. Vienas iš likusių penkių erdvių rodo, kad šviesos diodas yra įjungtas, nulis, išjungtas. _delay_ms (x); // uždelsimas milisekundėmis PORTB = ~ 0b00010011; _delay_ms (x); PORTB = ~ 0b00010101; _delay_ms (x); PORTB = ~ 0b00011001; _delay_ms (x); PORTB = ~ 0b00010001; _delay_ms (x); dispClear (); // Atviras tarpas tarp simbolių _delay_ms (x); PORTB = ~ 0b00001110; _delay_ms (x); PORTB = ~ 0b00010001; _delay_ms (x*3); PORTB = ~ 0b00001110; _delay_ms (x); dispClear (); _delay_ms (x); PORTB = ~ 0b00011111; _delay_ms (x); PORTB = ~ 0b00010101; _delay_ms (x); PORTB = ~ 0b00010001; _delay_ms (x); dispClear (); _delay_ms (x*5); // Žodis padarytas taip, kad būtų aiškiau. Tarp žodžių turiu daugiau vietos}} Dabar vykdykite 4 puslapyje pateiktas instrukcijas, kad sudarytumėte šį kodą ir nusiųstumėte į savo AVR.

2 žingsnis: Piniginės šviesa

Piniginės šviesa
Piniginės šviesa
Piniginės šviesa
Piniginės šviesa

Kitos dalys x2 Šviesos diodai NESKLEIDŽIA („RadioShack“) Šis projektas sklandžiai išnyksta tarp dviejų šviesos diodų. Mano mama norėjo, kad kas nors padėtų ant jos piniginės, kad padėtų savo bitei pamatyti naktį. Jaučiau, kad mirksinti dviračio lemputė pritrauks per daug dėmesio, todėl tai padariau. Jis naudoja PWM (impulso pločio moduliaciją), kad suteiktų pritemdymo ir šviesinimo efektą. Tai, kas iš tikrųjų vyksta, yra tas, kad šviesos diodas mirksi greičiau, nei akis gali matyti skirtingais intervalais, kad imituotų pokyčius. Tai galite pamatyti aiškiau, kai pamojuojate į veidą, kaip tai darytumėte su vardo žibintuvėliu. Kodą galima atsisiųsti šio puslapio pabaigoje. Žiūrėkite 4 puslapį, kaip kompiliuoti į savo AVR. Užuot čia komentavęs kodą, trumpai paaiškinsiu sąvoką. PWM generuoja laikmatis. Kiekvieno laikrodžio ciklo metu laikmatis skaičiuoja vieną. Kai jis pasiekia tam tikrą vertę (šiuo atveju OCR1B), ji keičia kaiščio būseną (šiuo atveju OC1B). Kad šviesos diodai „išsijungtų“, kitą prijungiau prie [OPPOSITE] OC1B (štai ką reiškia viršuje esanti juosta). Tada mes naudojame x, kad padidintume ir sumažintume šviesos diodų įjungimo laiką.

3 žingsnis: Spalvų slinktis

Spalvų slinktis
Spalvų slinktis
Spalvų slinktis
Spalvų slinktis

Kitos „Partsx1“RGB šviesos diodas (išsklaidytas yra geresnis) („RadioShack“) Man tai yra klasika. Aš visada žavėjausi tokiomis lemputėmis ir manau, kad jos labai ramina, todėl natūraliai norėjau ją sukurti. Taip pat jų matomumas visuomenėje suteikia jiems tikrą WOW faktorių. "Tu tai sukūrei ?!" Kodas yra beveik tas pats ir, mano nuomone, lengviau skaitomas. Galite atsisiųsti apačioje. Šį kartą kiekvienam RGB šviesos diodo įžeminimo kaiščiui pateikiame PWM'd kaištį. Tokiu būdu mes susmulkiname lustą. Voltus galima išmatuoti kaip dviejų taškų skirtumą. 3v-0v = 3v 5v-2v = 3v *** 3v-3v = 0v *** Šis paskutinis atvejis yra tai, ką mes darome, kai įžeminame per lustą. Kai, tarkime, iš abiejų pusių yra trys voltai, šviesos diodui valdyti nepakanka voltų. Taigi, norėdami išnykti tarp spalvų, pasirinkome spalvą ir kitą spalvą. Nustatykite vieną lygų x, o kitą lygų 255-x arba atvirkštinę x. Kaip mes darėme ankstesniame projekte. Dabar pereikite prie 4 veiksmo, kad programuotumėte.

4 žingsnis: programavimas

Programavimas
Programavimas

Pirmiausia atsisiųskite ir įdiekite „Emacs“, „avr-gcc“ir „Avrdude“bei visas galimas priklausomybes. „Arch linux“tai padariau su: sudo pacman -Sy emacs avrdude

Dabar atėjo laikas prijungti programuotoją prie savo avr. Prijunkite 6 kontaktų ISP programuotojo kaiščius (paveikslėlis žemiau) prie atitinkamų AVR kaiščių (duomenų lapas, 2 psl.) (Aš tai padariau ant lentos). Dabar prijunkite programuotoją prie kompiuterio ir LABAI GREITAI palieskite AVR viršuje. Jei karšta, KARTĄ NUOMOKITE PROGRAMMATORIŲ IŠ KOMPIUTERIO, patikrinkite jungtis ir bandykite dar kartą (maitinimas ir Gnd atgal?). Jei nėra karšta, atidarykite „emacs“ir paspauskite „Ctl-x Ctl-f“, kad surastumėte.c failą. Atidarykite jį, tada paspauskite „Meta“(paprastai Alt) -x ir įveskite „compile“. Du kartus paspauskite „Enter“ir, jei jums pasisekė, jūsų AVR dabar turėtų paleisti jūsų kodą! Ačiū, kad skaitote! Tikiuosi, kad jums patiko ir kažko išmokote. Prašome nedvejodami užduoti klausimus ir nepamirškite paskelbti nuotraukų apie tai, ką sugalvojote. Linksmų švenčių ir nepamirškite balsuoti!

Rekomenduojamas: