Мазмұны:

POT және ATTINY85 көмегімен жарықдиодты түстерді өзгерту: 3 қадам
POT және ATTINY85 көмегімен жарықдиодты түстерді өзгерту: 3 қадам

Бейне: POT және ATTINY85 көмегімен жарықдиодты түстерді өзгерту: 3 қадам

Бейне: POT және ATTINY85 көмегімен жарықдиодты түстерді өзгерту: 3 қадам
Бейне: Using Digispark Attiny85 Mini Arduino boards: Lesson 108 2024, Шілде
Anonim
POT және ATTINY85 көмегімен жарықдиодты түстерді өзгертіңіз
POT және ATTINY85 көмегімен жарықдиодты түстерді өзгертіңіз
POT және ATTINY85 көмегімен жарықдиодты түстерді өзгертіңіз
POT және ATTINY85 көмегімен жарықдиодты түстерді өзгертіңіз
POT және ATTINY85 көмегімен жарықдиодты түстерді өзгертіңіз
POT және ATTINY85 көмегімен жарықдиодты түстерді өзгертіңіз

Бұл жобада біз ATTINY85 көмегімен жарық диодты түстерді өзгерту үшін потенциометрді (POT) қолданамыз.

Кейбір анықтамалар -

Потенциометр - бұл бұрандалы / бұрылу механизмі бар құрылғы, ол әр түрлі электр кедергісін шығарады. Жоғарыдағы аннотацияланған суреттен POT -тің 3 түйреуіші бар екенін көруге болады, яғни +, - және шығысы. POT + және - істікшелерін кернеуге және жерге қосу арқылы қуат көзіне қосылады. POT бұрандасы бұрылған кезде шығыс кедергісі өзгереді және жарықдиодты интенсивтіліктің төмендеуіне немесе жоғарылауына әкеледі.. Басқаша айтқанда, бұл айнымалы резистор. Олар үйдегі жарық диммерлерінде қолданылады.

Жарық диоды - бұл электр тогы өткен кезде жарық беретін шағын жарық. Бұл жағдайда біз 3 түйреуіші бар бір түсті (орта) және екі түйреуішті қосқан кезде сәйкесінше жасыл және қызыл түс беретін көп түсті жарықдиодты қолданамыз.

ATTINY85-бұл шағын Arduino сияқты бағдарламалауға болатын шағын чип.

Шолу - POT шығысы ATTINY85 -ке қосылған. POT бұрандасы бұрылған кезде 0 мен 255 арасындағы айырмашылық кедергісі шығарылады. ATTINY мұны өлшеп, POT кедергісінің мәніне байланысты әр түрлі әрекеттерді жасай алады. Бұл жағдайда біз оны светодиодқа қосылу үшін келесідей бағдарламаладық.

Егер сан 170 -тен асса, жарық диодты жасылға ауыстырыңыз.

Егер нөмір 170 -тен аз болса, бірақ 85 -тен үлкен болса, жарық диодты ҚЫЗЫЛ күйіне ауыстырыңыз.

егер сан 85 -тен аз болса, ЖАСЫЛ ЖӘНЕ ҚЫЗЫЛ диодты қосыңыз, нәтижесінде апельсин пайда болады.

БОМ

1 x 3 істікшелі LED 1 x ATTINY 85

1 x POT (B100K)

1 x нан тақтасы мен кабельдер

1 қуат көзі.

1 -қадам: ATTINY85 бағдарламалау

ATTINY85 бағдарламалау тұрғысынан менің алдыңғы нұсқаулығымды қараңыз-https://www.instructables.com/id/15-Dollar-Attiny8…

Код төменде көрсетілген. Айта кету керек, екі ATTINY түйреуіші, PB3, физикалық 2, PB2, физикалық түйреуіш 7 цифрлық режимде түсті өзгерту үшін жарықдиодты шамға қосылады. ATTINY pin PB4, 3 -физикалық түйін POT -ке аналогтық режимде қосылады, яғни ол 0 мен 254 арасындағы мәндерді оқи алады. Мен интернеттен тапқан кодты реттедім, сондықтан мен бұл жұмысты мойындаймын. -

жарамсыз initADC () {// *** // *** ATtiny25/45/85: // *** PDIP/SOIC/TSSOP // *** ============= =================================================== ============================== // *** // *** (PCINT5/RESET/ADC0/dW) PB5 [1]* [8] VCC // *** (PCINT3/XTAL1/CLKI/OC1B/ADC3) PB3 [2] [7] PB2 (SCK/USCK/SCL/ADC1/T0/INT0/PCINT2) //* ** (PCINT4/XTAL2/CLKO/OC1B/ADC2) PB4 [3] [6] PB1 (MISO/DO/AIN1/OC0B/OC1A/PCINT1) // *** GND [4] [5] PB0 (MOSI/ DI/SDA/AIN0/OC0A/OC1A/AREF/PCINT0) // *** // pb4 - POT үшін кіріс // pb3 светодиод 1 pb2 // pb2 led pin 3 // ATTINY 85 жиілігі ішкі 8 МГц -те орнатылған/* бұл функция ADC инициализациялайды

ADC Prescaler туралы ескертулер:

ADC Prescaler ADC кіріс жиілігі 50 - 200 кГц аралығында болатындай етіп орнатылуы керек.

Қосымша ақпарат алу үшін 17.13.2 «ADCSRA - ADC бақылау және күй регистрі А» тарауындағы 17.5 «ADC Prescaler Selections» кестесін қараңыз (ATtiny25/45/85 толық деректер кестесінде 140 және 141 беттер, Rev. 2586M – AVR – 07/ 10)

Әр түрлі жылдамдықтар үшін прескалердің жарамды мәндері

Сағат Болжалды есептегіш мәндері --------------------------------------- 1 МГц 8 (125кГц), 16 (62,5кГц) 4 МГц 32 (125кГц), 64 (62,5кГц) 8 МГц 64 (125кГц), 128 (62,5кГц) 16 МГц 128 (125кГц)

Төмендегі мысалда 8 МГц жиілігінде жұмыс істейтін mcu үшін алдын ала есептегіш 128 орнатылған

(алдын ала есептегішті орнату үшін деректер парағында тиісті бит мәндерін тексеріңіз) */

// 8 биттік ажыратымдылық

// солға жылжу нәтижесін қосу үшін ADLAR мәнін 1 мәніне қойыңыз (тек ADC9.. ADC2 биттері қол жетімді) // онда тек 8-биттік нәтижелер үшін ADCH оқу жеткілікті (256 мән) DDRB | = (1 << PB3); // PIN шығыс ретінде орнатылады. DDRB | = (1 << PB2); // PIN шығыс ретінде орнатылады. ADMUX = (1 << ADLAR) | // солға ауысу нәтижесі (0 << REFS1) | // анықтаманы орнатады. VCC кернеуі, бит 1 (0 << REFS0) | // анықтаманы орнатады. VCC кернеуі, бит 0 (0 << MUX3) | // енгізу үшін ADC2 пайдаланыңыз (PB4), MUX бит 3 (0 << MUX2) | // енгізу үшін ADC2 пайдаланыңыз (PB4), MUX бит 2 (1 << MUX1) | // енгізу үшін ADC2 пайдаланыңыз (PB4), MUX бит 1 (0 << MUX0); // енгізу үшін ADC2 пайдаланыңыз (PB4), MUX бит 0

ADCSRA =

(1 << ADEN) | // ADC қосу (1 << ADPS2) | // алдын ала есептегішті 64 -ке, 2 -битке орнатыңыз (1 << ADPS1) | // алдын ала есептегішті 64 -ке, 1 -битке орнатыңыз (0 << ADPS0); // алдын ала есептегішті 64 -ке орнатыңыз, бит 0}

int main (жарамсыз)

{initADC ();

кезінде (1)

{

ADCSRA | = (1 << ADSC); // ADC өлшеуді бастау кезінде (ADCSRA & (1 << ADSC)); // түрлендіру аяқталғанша күтіңіз

егер (ADCH> 170)

{PORTB | = (1 << PB3); // PIN жоғарыға орнатылды. PORTB | = (1 << PB2); // PIN жоғарыға орнатылды. } else if (ADCH 85) {PORTB | = (1 << PB3); // PIN жоғарыға орнатылды. PORTB & = ~ (1 << PB2); // Бекіту LOW мәніне орнатылды

} басқа {

PORTB | = (1 << PB2); // PIN жоғарыға орнатылды. PORTB & = ~ (1 << PB3); // Бекіту LOW күйіне орнатылды

}

}

қайтару 0;

}

2 -қадам: Схема

Схема
Схема

ATTINY түйреуіштері

PB3, физикалық түйреуіш 2 - жалғанған жарықдиодты түйреуіш 1

PB4, физикалық түйреуіш 3, POT ортаңғы істікшеге қосылған

GND, физикалық түйреуіш 4, теріс рельске - қуат көзіне қосылған

PB2, физикалық түйреуіш 7 - жалғанған жарықдиодты түйреуіш 3

VCC, физикалық түйреуіш 8, оң рельске қосылған - қуат көзі

ҚАЗАН

тиісті рельстерге қосылған pos және neg pin - қуат көзі.

ЖАРЫҚ ДИОДТЫ ИНДИКАТОР

теріс рельске қосылған орта штырь - қуат көзі

Мен 3 және 3,3 вольтты қуат көзін пайдаланып тәжірибе жасадым және екеуі де жұмыс істеді.

3 -қадам: Қорытынды

Қорытынды
Қорытынды

ATTINY85 аналогты және цифрлық режим арасында ауысу мүмкіндігі өте қуатты және оны әр түрлі қосымшаларда қолдануға болады, мысалы. айнымалы жылдамдықты қозғалтқыштарды басқару және музыкалық ноталар жасау. Мен мұны алдағы нұсқаулықтарда зерттеймін. Сізге бұл пайдалы болды деп үміттенемін.

Ұсынылған: