Hallo zusammen, ich versuche gerade eine LED Lampe mittels ATtiny25 zu steuern. Die Platine mit Treibern ist soweit fertig, nur das Programm für den tiny fehlt mir und das will nicht so wie ich mir das vorstelle (ist auch mein erster Versuch mit nem µC). Als Erstes möchte ich PB2 und PB3 als Ausgänge deklarieren und mittels PWM (die LEDs) dimmen. Später soll mal ein Taster an den PB1 angeschlossen werden, über den ich die LED ein- bzw. ausschalten kann. Zum dimmen soll ein Poti an PB4 als ADC: Da ich bisher noch nichts ans laufen bekommen habe, fange ich mal ganz oben an: - Reicht es, wenn ich die Bibliotheken <avr/io.h> ; <avr/interrupt.h> und <util/delay.h> lade? - evtl. habe ich schon mal die Ausgänge gesetzt, aber da lagen nur ~1.3V an, wäre das richtig (bei Vcc = 5V)? Inzwischen ist das Programm soweit verändert, dass es auch nicht mehr läuft. - wie setzt man einen einzelnen Ausgang und wie bekomme ich da ein PWM-Signal drauf? - muss das in eine (Leer)schleife, damit es läuft? Das Datenblatt hab ich zwar, aber geholfen hat´s noch nicht. Das AVR-Tutorial habe ich auch schon gemacht, aber iwie klappts trotzdem nicht. Das ganze wollte ich in AVR Studio erstellen und über einen USB-ISP Programmer auf den tiny bekommen. Die Verbindung dahin hat zumindest schon geklappt. Würde mich sehr über eure Tipps freuen, da ich da schon längere Zeit dran sitze. Viele Grüße Michael
Gesetzte Ausgänge sollten doch schon 5V haben, scheint also noch mehr zu fehlen. Aber wenn du uns nicht zeigen willst was genau du zusammengeschrieben hast wird dir niemand wirklich helfen können/wollen.
Danke für die schnelle Antwort. Hier ein Versuch, nur einen Ausgang (PB1) mit nem Timer auszugeben, aber das geht auch noch nicht. *********************************************************** #include <avr/io.h>; #include <avr/interrupt.h>; #include <util/delay.h>; int main(void) { DDRB = (1<<PB1); //PB1 als Ausgang TCCR0A = (1<<COMPB1) | (1<<WGM01) | (1<<WMG00); TCCR0B = (1<<CS01); OCR0B = 0x7F; while (1) { //leere Schleife (warum weiß ich auch nicht) } return (0); } *********************************************************** Ist da schon iwas Grundlegens falsch dran?
oh, stimmt. bekomme aber trotzdem noch 4 fehlermeldungen. 'COMP01' und 'WMG00' undeclared (first use in this function) sind zwei davon. was bedeutet das? wie kann ich die denn deklarieren?
Michael schrieb: > oh, stimmt. > > bekomme aber trotzdem noch 4 fehlermeldungen. 'COMP01' und 'WMG00' > undeclared (first use in this function) sind zwei davon. was bedeutet > das? Das du dich vertippt hast. Das Ding heißt COM0B1 Ich buchstabiere: C wie Caesar O wie Otto M wie Martha Zero wie 0, wei Null B wie Bertha Eins wie 1, wie Eins Und es heisst nicht COMP01 und auch nicht COMPB1 Und das andere heißt WGM00 und nicht WMG00 Geee - Emmmm und nicht Emmm - Geee Soll ich das auch noch buchstabieren?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.