Sisällysluettelo:

3 helppoa ATTiny Holiday -lahjaa: 4 vaihetta
3 helppoa ATTiny Holiday -lahjaa: 4 vaihetta

Video: 3 helppoa ATTiny Holiday -lahjaa: 4 vaihetta

Video: 3 helppoa ATTiny Holiday -lahjaa: 4 vaihetta
Video: СОСЕДКА Поделилась РЕЦЕПТОМ из ДЕТСТВА! Мы ПОДСЕЛИ! Всего 3 ИНГРЕДИЕНТА! МОРОЖЕНОЕ из МОЛОКА 2024, Marraskuu
Anonim
3 helppoa ATTiny Holiday -lahjaa
3 helppoa ATTiny Holiday -lahjaa

Joka vuosi lomakausi pyörii ympäriinsä ja jään jumiin, mitä annan ystävilleni ja perheelleni. Ihmiset sanovat aina, että on parempi tehdä lahja itse kuin ostaa se kaupasta, joten tänä vuonna tein juuri niin. Ensimmäinen näyttää nimen tai peruskuvan, kun sitä heilutetaan ilmassa, toinen haalistuu tasaisesti kahden valkoisen ledin välissä (siinä on myös turvatappi, joka kiinnittää sen vaatteisiin tai kukkaroon), ja kolmas on jonkinlainen mielialavalo, vieritys saumattomasti värien välillä. Kaikki ovat alle 15 dollaria ja ne on helppo koota alle tunnissa. Voit myös antaa nämä ohjeet sekä osia lahjaksi elektroniikan oppimisesta kiinnostuneelle.

Huomautus: Oletetaan juotoksen perustaso. Kuitenkin, toisin kuin aiemmat ohjeeni, aion kiittää AVR: n ohjelmoinnin. Toivon todella, että tämä auttaa ihmisiä, jotka yrittävät aloittaa elektroniikan. Muistan kun olin siellä ja vastaan mielelläni mahdollisiin kysymyksiin. Muista, että tyhmiä kysymyksiä ei ole! Olen jättänyt sinulle avoimeksi päättää, miten piirikorttisi asetetaan toivoen, että keksit uuden tavan näyttää yksinkertaiset piirit, jotka olen piirtänyt. Lähetä kuvia, kun olet valmis, odotan innolla mitä keksit! Osat kaikille projekteille N = projektien lukumäärä x N ATTiny45 (www.digikey.com) x N 8-nastainen DIP-liitäntä (RadioShack) x 1 suuri perf -kortti (sain omani RadioShackissa) x N 3v -nappiparisto ja pidike (RadioShack) x1 ohjelmoija (käytän tätä ja mukana toimitettu makefile määritetään käyttämään tätä) x2 N vastusta, yksi 10 ohmia ja yksi 10 k ohmia (RadioShack) Tässä on kuva kolmesta valmistuneesta projektista:

Vaihe 1: Nimi vilkkuu

Nimi vilkkuu
Nimi vilkkuu
Nimi vilkkuu
Nimi vilkkuu
Nimi vilkkuu
Nimi vilkkuu

Muut osat x5 DIFFUSED 3 mm LEDit (RadioShack) Tämä projekti käyttää vision pysyvyyttä näyttääkseen kuvan tai tekstin nopeasti liikuttaessa. Toimii paremmin pimeässä. AVR: n avulla vaihdamme LEDien välillä nopeammin, niin silmä voi nähdä, että voimme luoda kuvan ilmassa hyvin harvoilla komponenteilla. Koodi: (Lataa.zip -tiedosto sivun alareunasta koodia, makefileä jne. Varten. zip -tiedosto)) #define F_CPU 1000000 #include #include void dispClear () {PORTB = ~ 0b00000000; } int main () {DDRB = 0xFF; // Niille teistä, jotka eivät ole koskaan lukeneet C: tä ennen kuin kaksoisviiva osoittaa kommentin. Tämä asettaa avr: n nastat lähtömerkiksi x = 10; // x käytetään viiveen asettamiseen. Arvon lisääminen antaa hitaamman kytkimen pikselien välillä, pienentää, pienemmän (1) // Vaikka (ehto on totta); {Tee tämä} (True C: ssä on 1) {PORTB = ~ 0b00010001; // Ystäväni nimi on Zoe, joten vedin hahmot piirtopaperille ja lasken ne sitten PORTBiin. Kolme ensimmäistä nollaa eivät ole merkityksellisiä, koska vain viisi lediä on kytketty. Yksi jäljellä olevista viidestä tilasta osoittaa, että LED on päällä, nolla ja sammunut. _viive_ms (x); // viive millisekunteina PORTB = ~ 0b00010011; _viive_ms (x); PORTB = ~ 0b00010101; _viive_ms (x); PORTB = ~ 0b00011001; _viive_ms (x); PORTB = ~ 0b00010001; _viive_ms (x); dispClear (); // Avoin väli merkkien välillä _delay_ms (x); PORTB = ~ 0b00001110; _viive_ms (x); PORTB = ~ 0b00010001; _viive_ms (x*3); PORTB = ~ 0b00001110; _viive_ms (x); dispClear (); _viive_ms (x); PORTB = ~ 0b00011111; _viive_ms (x); PORTB = ~ 0b00010101; _viive_ms (x); PORTB = ~ 0b00010001; _viive_ms (x); dispClear (); _viive_ms (x*5); // Sana on tehty selkeyden vuoksi sanojen välissä on enemmän tilaa}} Käännä tämä koodi ja lähetä se AVR -laitteeseesi noudattamalla sivulla 4 olevia ohjeita.

Vaihe 2: Kukkaron valo

Kukkaron valo
Kukkaron valo
Kukkaron valo
Kukkaron valo

Muut osat x2 LED -valot EI DIFFUSOITU (RadioShack) Tämä projekti häipyy tasaisesti kahden LED -valon välillä. Äitini halusi laukkuunsa jotain, joka auttaisi mehiläistä näkemään yöllä. Tunsin, että vilkkuva pyörävalo kiinnittäisi liikaa huomiota, joten tein tämän. Se käyttää PWM (Pulse Width Modulation) -toimintoa himmentämään ja kirkastamaan. Todellisuudessa tapahtuu, että ledi vilkkuu nopeammin kuin silmä näkee eri aikaväleillä muutoksen simuloimiseksi. Näet tämän selkeämmin, kun heilutat sitä kasvoillesi samalla tavalla kuin Nimi Vilkkuu. Koodin voi ladata tämän sivun lopussa. Katso sivu 4, miten voit kääntää AVR -laitteeseesi. Sen sijaan, että kommentoisin koodia täällä, selitän lyhyesti käsitteen. PWM luodaan ajastimella. Jokainen kellosykli laskee ajastimen yhden. Kun se saavuttaa tietyn arvon (tässä tapauksessa OCR1B), se muuttaa nastan tilaa (tässä tapauksessa OC1B). Saadakseni LEDit "sammumaan", johdotin toisen [OPPOSITE] OC1B: hen (sitä yläpalkki tarkoittaa). Sitten käytämme x: tä lisäämään ja vähentämään LED -valojen syttymisaikaa.

Vaihe 3: Värin vieritys

Värin vieritys
Värin vieritys
Värin vieritys
Värin vieritys

Muut osat1 RGB -LED (hajautettu on parempi) (RadioShack) Tämä on minusta klassikko. Minua ovat aina kiehtoneet tällaiset valot ja ne ovat mielestäni erittäin rauhoittavia, joten luonnollisesti halusin tehdä sellaisen. Myös heidän näkyvyytensä yhteiskunnassa antaa heille todellisen WOW -tekijän. "Teitkö sen ?!" Koodi on melkein sama ja mielestäni helpompi lukea. Voit ladata alareunasta. Tällä kertaa tarjoamme PWM -nastan kullekin RGB -LEDin maadoituspistokkeelle. Tällä tavalla hiottiin sirun läpi. Volttia voidaan mitata kahden pisteen erotuksena. 3v-0v = 3v 5v-2v = 3v *** 3v-3v = 0v *** Tämä viimeinen tapaus on mitä teemme, kun hiomme sirun läpi. Kun molemmilla puolilla on kolme volttia, ei esimerkiksi ole tarpeeksi volttia LED -valon käyttämiseen. Joten haalistuaksesi värien välillä valitsimme värin ja toisen värin. Aseta toinen yhtä suureksi x ja toinen 255-x tai x: n KÄÄNTÖ. Kuten teimme edellisessä projektissa. Siirry nyt ohjelmointiin vaiheeseen 4.

Vaihe 4: Ohjelmointi

Ohjelmointi
Ohjelmointi

Lataa ja asenna ensin Emacs, avr-gcc ja Avrdude sekä mahdolliset riippuvuudet. Arch linuxissa tein tämän seuraavasti: sudo pacman -Sy emacs avrdude

Nyt on aika kytkeä ohjelmoija AVR: ään. Kytke 6-nastaisen ISP-ohjelmoijan nastat (kuva alla) AVR: n vastaaviin nastoihin (tietolomake, sivu 2) (tein tämän leipälevyllä). Liitä nyt ohjelmoija tietokoneeseen ja kosketa AVRR: n yläosaa ERITTÄIN nopeasti. Jos on kuuma, POISTA OHJELMOITIN TIETOKONEESTA KERRASTA tarkista liitännät ja yritä uudelleen (Virta ja Gnd taaksepäin?). Jos se ei ole kuuma, avaa sähköpostit ja etsi.c-tiedosto painamalla Ctl-x Ctl-f. Avaa se ja paina sitten Meta (tavallisesti Alt) -x ja kirjoita compile. Paina enter kahdesti ja jos olet onnekas, AVR: n pitäisi nyt käyttää koodiasi! Kiitos lukemisesta! Toivottavasti nautit ja opit jotain. Älä epäröi esittää kysymyksiä ja älä unohda lähettää kuvia siitä, mitä keksit. Hyvää vappua ja muistakaa äänestää!

Suositeltava: