Eric Wilhelm mikroradiče by mohol nainštalovať kompletný svitania simulátor na hodinky. V určitých denných dobách zariadení svieti rôzne odtiene, jas sa nastavuje pomocou kódu.
Krok 1: Light
Nie je tajomstvom, že sú už pripravené také zariadenie, ktoré je možné zakúpiť v obchode s elektronikou. Celý projekt je závislá na elektronický značkových hodiniek Soleil Alarm, ktorú je možné zakúpiť na oficiálnych stránkach rovnakého mena spoločnosti.
Ani bez nákupu iného elektronického tovaru v rôznych internetových obchodoch.
Krok 2: Komponenty
- Mikrokontroléry Atmel ATMEGA8-16PI (najlepšie kúpiť niekoľko, ak náhle horieť).
Optocoupler 4N35.
Box s LED modré.
Regulátor 5. Art.
Rezistory 1 ohm a 470 ohmov.
Zbohom.
[Ol]
Krok 3: Watch
Controller 300 W 0-5 číta signál, ktorý je dodávaný s dátovým portom.
Krok 4: LED
Ak si myslíte, že o pridanie externej tranzistor, potom môžete spustiť s nízkym jasom.
Preto je lepšie kúpiť mikrokontroléra vytvoriť dobrý PWM signál v 16 bitov udržať stabilnú svetlo pri frekvencii 130 Hz.
Krok 5: Funkcia
PWM signál nie je lineárny. Naša doba je 44 postupných krokoch. V dôsledku toho, že je možné konštruovať exponenciálny funkciu:
f (x) = a (1-exp ((bx + D) x + C)).
Krok 6: Chain
Uvedenie elektrický reťaz poskytované v rámci systému.
Krok 7: Mikrokontroléry
Musíme zostaviť kód pre mikrokontrolér cez WinAVR a AVR Studia.
Krok 8: drôty
Drôty z programátor kolíky AMEGA8 za júl 1 (VCC), 8 (GND), 171 819 20 (AVC), 21 (AREF) a 22 (GND).
Krok 9: Program
V tomto prípade, mikrokontrolér pôsobí ako nelineárny PWM filter. Program počíta čas začatia, úroveň kontrolných LED diód a výstup signálu PWM.
Eric William kód je uvedené nižšie so svojimi komentármi.
[Spoiler] / * LED mikroradič stmievač pre použitie s Soleil Sun AlarmWritten pre Atmel ATmega8 a AVR-gccEric J. WilhelmSquid Labs, LLCAttribution-Noncommercial-ShareAlike 2.5You sú zadarmo: * kopírovať, distribuovať, zobrazovať a vykonávať pracovnú * na odvodené worksUnder nasledujúce podmienky: podľa autora. Musíte tomto diele spôsobom, ktorý stanovil autor alebo licensor.Noncommercial. Nesmiete používať túto prácu pre komerčné purposes.Share podobne. Ak zmeníte, upravíte alebo stavať na tejto práci, môžete výsledné odvodené dielo šíriť až pod rovnakou licenciou k tomuto jeden. * Pre všetky opätovné využitie alebo distribúciu, treba dať jasne najavo, k ostatným licenčné podmienky tejto práce. * Všetky tieto podmienky môžu byť zrušené, ak máte povolenie od vlastníka autorských práv * / #include #include #include #include #include # define OC1 PB1 # define DDROC DDRB # define OCR OCR1Avolatile uint16_t xtimer ;. Volatilné uint16_t timer0 prchavý uint8_t status, SIGNAL (SIG_OVERFLOW0) {Timer0 ++; TCNT0 = 96; // Predpätie s časovačom 96, aby sa to prerušenie nastať každých 20 nám} signál (SIG_OVERFLOW1) {// Prerušenie nefungujú správne, bez toho, aby táto definícia} // Zostupná hrana PWM signál (nábežná hrana na hodiny, .. Zvrátiť vďaka na optoisolator) signálu (SIG_INTERRUPT1) {// nula Timer0 počítať dĺžku pozitívneho impulzu timer0 = 0; stav = 1;} // stúpajúca PWM signál (zostupná hrana na hodiny, obrátené vzhľadom k optoisolator) signál (SIG_INTERRUPT0) {// zaznamenať dĺžku pozitívneho signálu PWM v xtimer // ak Timer0 je väčší ako približne 263 (vo 20 nám za Interrupt), než v prípade, pulz bol minul (timer00, ja-) {x (i) = x (i-1);} x (0) = xtimer; y = 0; for (i = 0; i 0, ja-) {t (i) = t (i-1);} // zistiť, čo robiť, keď (Timer0 & gt; 270 && stav == 1 && na == 1) { // Zapnite svetlo na t (0) = 0; na = 1 .;} else if (Timer0 & gt; 270 && status == 0) {// Vypnite svetlo off, t (0) = 65535; xtimer = 0; na = 0; else if (timer065535) t (0) = 65535; if (t (0) 270, ale tam je to pozitívny impulz na PWM // sa to stane počas samého začiatku svitania, keď sa hodiny sa PWM nie je úplne obrátil na na správnu frekvenciu else if (Timer0 & gt; 270 && status = = 1) {if (++ 5) {o = 1; // priemer výstup, takže to nie je poskakovať u = 0; for (i = 0; i <100;i++) {="" u="u+t(i);" }="" change="" the="" output="" pwm="" ocr="u/100;" }="" return="" (0);}="">100;i++)>
Krok 10: Cable
2 Pomocou konektor a drôt improvizovať plné kábla.
Krok 11: Plug
Pripojte sa k box s LED hodiny.