Inhaltsverzeichnis:
Video: Ändern Sie die LED-Farben mit einem POT und ATTINY85 - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
In diesem Projekt verwenden wir ein Potentiometer (POT), um die Farben in einer LED mit einem ATTINY85 zu ändern.
Einige Definitionen -
Ein Potentiometer ist ein Gerät mit einem kleinen Schrauben-/Drehmechanismus, der beim Drehen unterschiedliche elektrische Widerstände ausgibt. Sie können aus dem kommentierten Bild oben sehen, dass der POT 3 Pins hat, nämlich +, - und Ausgang. Der POT wird mit Strom versorgt, indem die + und - Pins mit vcc bzw. Masse an einer Stromversorgung verbunden werden. Wenn die POT-Schraube gedreht wird, ändert sich der Ausgangswiderstand und bewirkt, dass die LED-Intensität abnimmt oder ansteigt.. Mit anderen Worten, es ist ein variabler Widerstand. Sie werden beispielsweise in Heimlichtdimmern verwendet.
LED - Dies ist ein kleines Licht, das aufleuchtet, wenn elektrischer Strom durch sie fließt. In diesem Fall verwenden wir eine mehrfarbige LED mit 3 Pins, einer Masse (Mitte) und zwei Pins, die beim Auslösen grün bzw. rot leuchten.
ATTINY85 - Dies ist ein kleiner kostengünstiger Mikrochip, den Sie wie ein Arduino programmieren können.
Übersicht - Der Ausgang des POT ist mit dem ATTINY85 verbunden. Beim Drehen der POT-Schraube wird ein Differenzwiderstand als Zahl zwischen 0 und 255 ausgegeben. Der ATTINY kann dies messen und je nach Wert des POT-Widerstands unterschiedliche Maßnahmen ergreifen. In diesem Fall haben wir es so programmiert, dass es wie folgt mit der LED verbunden wird.
Wenn die Zahl größer als 170 ist, schalten Sie die LED auf GRÜN.
Wenn die Zahl kleiner als 170, aber größer als 85 ist, schalten Sie die LED auf ROT.
wenn die Zahl kleiner als 85 ist, schalten Sie die LED GRÜN UND ROT ein, was ORANGE ergibt.
Stückliste
1 x 3-polige LED1 x ATTINY 85
1 x POT (B100K)
1 x Steckbrett und Kabel
1 Netzteil.
Schritt 1: Programmierung des ATTINY85
In Bezug auf die Programmierung des ATTINY85 beziehen Sie sich bitte auf meine vorherige instructable -
Der Code wird unten angezeigt. Einige zu beachtende Punkte sind, dass zwei ATTINY-Pins, PB3, physischer Pin 2, PB2, physischer Pin 7 im digitalen Modus mit der LED verbunden sind, um einen Farbwechsel zu bewirken. ATTINY Pin PB4, physikalischer Pin 3, ist im analogen Modus mit dem POT verbunden, was bedeutet, dass er Werte zwischen 0 und 254 lesen kann. Ich habe Code angepasst, den ich im Internet gefunden habe, damit ich diese Arbeit anerkenne. -
void initADC(){ // *** // *** Pinbelegung 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 - Eingang für POT //pb3 LED Pin 1 //pb2 LED Pin 3 // ATTINY 85 Frequenz auf interne 8 MHz eingestellt /* diese Funktion initialisiert den ADC
Hinweise zum ADC-Prescaler:
Der ADC Prescaler muss so eingestellt werden, dass die ADC-Eingangsfrequenz zwischen 50 - 200 kHz liegt.
Weitere Informationen finden Sie in Tabelle 17.5 „ADC Prescaler Selections“in Kapitel 17.13.2 „ADCSRA – ADC Control and Status Register A“(Seiten 140 und 141 im vollständigen ATtiny25/45/85 Datenblatt, Rev. 2586M–AVR–07/ 10)
Gültige Prescaler-Werte für verschiedene Taktraten
Takt Verfügbare Prescaler-Werte -------------------------------------- 1 MHz 8 (125 kHz), 16 (62,5 kHz) 4 MHz 32 (125 kHz), 64 (62,5 kHz) 8 MHz 64 (125 kHz), 128 (62,5 kHz) 16 MHz 128 (125 kHz)
Beispiel unten: Prescaler auf 128 für mcu mit 8MHz einstellen
(Überprüfen Sie das Datenblatt für die richtigen Bitwerte, um den Vorteiler einzustellen) */
// 8-Bit-Auflösung
// setze ADLAR auf 1, um das Left-Shift-Ergebnis zu aktivieren (nur Bits ADC9.. ADC2 sind verfügbar) // dann reicht nur das Lesen von ADCH für 8-Bit-Ergebnisse (256 Werte) DDRB |= (1 << PB3); //Pin wird als Ausgang gesetzt. DDRB |= (1 << PB2); //Pin wird als Ausgang gesetzt. ADMUX = (1 << ADLAR) | // Ergebnis der Linksverschiebung (0 << REFS1) | // Setzt Ref.-Nr. Spannung an VCC, Bit 1 (0 << REFS0) | // Setzt Ref.-Nr. Spannung an VCC, Bit 0 (0 << MUX3) | // ADC2 für Eingang verwenden (PB4), MUX Bit 3 (0 << MUX2) | // ADC2 für Eingang (PB4) verwenden, MUX Bit 2 (1 << MUX1) | // ADC2 für Eingang (PB4) verwenden, MUX-Bit 1 (0 << MUX0); // ADC2 für Eingang (PB4) verwenden, MUX-Bit 0
ADCSRA =
(1 << ADEN) | // ADC aktivieren (1 << ADPS2) | // Prescaler auf 64 setzen, Bit 2 (1 << ADPS1) | // Prescaler auf 64 setzen, Bit 1 (0 << ADPS0); // Prescaler auf 64 setzen, Bit 0 }
int main(void)
{ initADC();
während(1)
{
ADCSRA |= (1 << ADSC); // ADC-Messung starten, während (ADCSRA & (1 << ADSC)); // warten bis die Konvertierung abgeschlossen ist
wenn (ADCH > 170)
{ PORTB |= (1 << PB3); // Pin auf HIGH gesetzt. PORTB |= (1 << PB2); // Pin auf HIGH gesetzt. aufrechtzuerhalten. Sonst if (ADCH 85) { PORTB |= (1 << PB3); // Pin auf HIGH gesetzt. PORTB &= ~(1 << PB2); // Pin auf LOW gesetzt
} anders {
PORTB |= (1 << PB2); // Pin auf HIGH gesetzt. PORTB &= ~(1 << PB3); // Pin auf LOW gesetzt
}
}
0 zurückgeben;
}
Schritt 2: Schaltung
ATTINY-Pins
PB3, physikalischer Pin 2 - verbundener LED-Pin 1
PB4, physikalischer Pin 3, ist mit dem mittleren Pin POT. verbunden
GND, physikalischer Pin 4, ist mit der negativen Schiene verbunden - Stromversorgung
PB2, physikalischer Pin 7 - verbundener LED-Pin 3
VCC, physikalischer Pin 8, ist mit der positiven Schiene verbunden - Stromversorgung
TOPF
pos und neg Pin mit entsprechenden Schienen verbunden - Stromversorgung.
LED
mittlerer Pin mit der negativen Schiene verbunden - Stromversorgung
Ich experimentierte mit einem 3 und 3,3 Volt Netzteil und beide funktionierten.
Schritt 3: Fazit
Die Fähigkeit des ATTINY85, zwischen analogem und digitalem Modus zu wechseln, ist sehr leistungsstark und kann in einer Reihe von verschiedenen Anwendungen verwendet werden, z. Antreiben von Motoren mit variabler Geschwindigkeit und Erstellen von Musiknoten. Ich werde dies in zukünftigen instructables erforschen. Ich hoffe, Sie fanden dies nützlich.
Empfohlen:
So ändern Sie Websites, um anzuzeigen, was Sie wollen.: 3 Schritte
So ändern Sie Websites, um anzuzeigen, was Sie wollen.: Oh, der Spaß, den Sie haben können … Dies ist eine verrückte einfache und einfache Möglichkeit, Websites in Ihrem Browser so zu ändern, dass alles angezeigt wird, was Sie möchten. dies ändert die Website nirgendwo anders als in Ihrem Browser, und wenn Sie die Webseite neu laden, geht sie zurück zu
So steuern Sie ein Gerät mit Raspberry Pi und einem Relais – DIE GRUNDLAGEN: 6 Schritte
So steuern Sie ein Gerät mit Raspberry Pi und einem Relais - DIE GRUNDLAGEN: Dies ist ein einfaches und unkompliziertes Tutorial zur Steuerung eines Geräts mit Raspberry Pi und einem Relais, das für die Erstellung von IoT-Projekten hilfreich ist folgen Sie, auch wenn Sie keine Ahnung von Raspberry haben
So ändern Sie Ihre Stimme mit einem einfachen Modul – wikiHow
So ändern Sie Ihre Stimme mit einem einfachen Modul: Mit einem Stimmwechsler-Modul können Sie Ihre Stimme in einen Bariton oder Bass verwandeln. Außerdem kann es Ihre Stimme in eine lustige Kinderstimme verwandeln. Es kann die Echtzeitausgabe vollständig realisieren. Sie können es verwenden, um an Halloween eine Maske zu machen oder eine interessante Stimme
So erhalten Sie Musik von fast jeder (Haha) Website (solange Sie sie hören können, können Sie sie bekommen Okay, wenn sie in Flash eingebettet ist, können Sie es möglicherweise nicht) BEARBEITET!!!!! Hinzugefügte Informationen: 4 Schritte
So erhalten Sie Musik von fast jeder (Haha) Website (solange Sie sie hören können, können Sie sie bekommen … Okay, wenn sie in Flash eingebettet ist, können Sie es möglicherweise nicht) BEARBEITET!!!!! Zusätzliche Informationen: Wenn Sie jemals auf eine Website gehen und ein Lied abspielen, das Sie mögen und es wollen, dann ist hier das anweisbare für Sie, nicht meine Schuld, wenn Sie etwas durcheinander bringen (nur so wird es passieren, wenn Sie ohne Grund anfangen, Dinge zu löschen) ) Ich konnte Musik für
So ändern Sie die Symbole für Ordner (Mac Os X): 3 Schritte
So ändern Sie die Symbole für Ordner (Mac Os X): Ein Tutorial für Mac-Neulinge, die das Bildsymbol für ihre Ordner ändern möchten