Sie sind vermutlich noch nicht im Forum angemeldet - Klicken Sie hier um sich kostenlos anzumelden Impressum 
Sie können sich hier anmelden
Dieses Thema hat 14 Antworten
und wurde 2.797 mal aufgerufen
 Bascom
Sven Löffler Offline

Admin


Beiträge: 3.760

27.09.2012 21:50
LED auf- und abdimmen Antworten

Hallo zusammen,

für ein RKL würde ich gerne einen LED auf- und abdimmen. Als µC möchte ich einen Tiny25 nutzen. Ein Tiny13 wäre auch machbar.

Hat von Euch jemand mal ein kleines Beispielprogramm für sowas ?


diezel Offline



Beiträge: 709

27.09.2012 22:05
#2 RE: LED auf- und abdimmen Antworten

Hi Sven,

welche Programmiersprache willst Du haben? In Bascom könnt ich Dir schon was anbieten...


Gruß
Gerhard


Sven Löffler Offline

Admin


Beiträge: 3.760

27.09.2012 22:08
#3 RE: LED auf- und abdimmen Antworten

Hi Gerhard,

da ich diesen Beitrag im Forum Bascom erstellt habe, hätte ich es gerne in Bascom. Aber du hast Recht, ich hätte es auch nochmal dazu schreiben können.


diezel Offline



Beiträge: 709

27.09.2012 22:12
#4 RE: LED auf- und abdimmen Antworten

ahhh, jetzt seh ich es auch :-)

Wenn´s ganz einfach werden soll, würd ich einfach die Hardware-PWM des Timer0 verwenden. Dann in der Hauptschleife den PWM-Wert rauf und wieder runter zählen.

Oder hast Du noch andere Vorstellungen bzw. Vorgaben?


Sven Löffler Offline

Admin


Beiträge: 3.760

27.09.2012 22:16
#5 RE: LED auf- und abdimmen Antworten

Das ich es verstehen soll, muss es GANZ EINFACH sein.

Habe keine besonderen Vorgaben. Möchte einfach nur einen Rundumleuchte ( für den Liebherr ) simulieren. Ich denke nur wenn man sie ein wenig auf und abdimmt sieht es originalgetreuer aus, als nur an / aus. Oder was meinst du ?


diezel Offline



Beiträge: 709

27.09.2012 22:36
#6 RE: LED auf- und abdimmen Antworten

so jetzt aber gaaaanz einfach:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
$regfile = "attiny25.dat"
$crystal = 8000000
$hwstack = 50
$swstack = 10
$framesize = 40
 
'Timer0 als PWM konfigurieren
Config Timer0 = Pwm , Compare A Pwm = Clear Up , Prescale = 256
Pwm0a = 0
Enable Timer0
Start Timer0
Enable Interrupts
 
'Variablen definieren
Dim I As Byte
 

Do
'rauf
For I = 0 To 255
Pwm0a = I
Waitms 2
Next I
 
'kurz halten
Waitms 200
 
'runter
For I = 255 To 0 Step -1
Pwm0a = I
Waitms 2
Next I
 
'kurz halten
Waitms 200
 
'und wieder von vorne
Loop
 
End
 



Erklärung der PWM z.B. hier:
http://www.bunbury.de/Technik/avr/bascom.htm#PWM

Welche Bascom-Versin nutzt Du? Bei alten Versionen unter V2 gibt´s einen Bug bzgl. Tiny25 und Timer-Configuration.
Und vergiß nicht die richtige Oszillator-Frequenz einzustellen -> $Crystal
dann noch bischen mit den Wait´s spielen und fertig.


Sven Löffler Offline

Admin


Beiträge: 3.760

27.09.2012 22:44
#7 RE: LED auf- und abdimmen Antworten

Vielen Dank Gerhard !

Da werde ich doch mal ein bißchen mit Spielen. Ich persönlich lerne irgendwie am besten, wenn ich ein fertiges Programm habe. So lerne ich die Zusammenhänge besser und kann sie dann später selber anwenden.

Ich nutze übrigens die Version 2.0.5.0

Nun werde ich mal schauen, was dabei raus kommt.


Sven Löffler Offline

Admin


Beiträge: 3.760

27.09.2012 23:38
#8 RE: LED auf- und abdimmen Antworten

Mal eine blöde Frage ... Ich muss doch noch den Ausgangspin festlegen und die LED ein bzw. ausschalten, oder ?


Sven Löffler Offline

Admin


Beiträge: 3.760

27.09.2012 23:47
#9 RE: LED auf- und abdimmen Antworten

Moment, ich glaube das war doof was ich da eben geschrieben habe. Wenn ich das richtig sehe, kommt die LED an PB0 ( Oc0A ), oder ?


diezel Offline



Beiträge: 709

27.09.2012 23:47
#10 RE: LED auf- und abdimmen Antworten

Nagel mich jetzt nicht fest, aber meiner Meinung nach ist das Konfigurieren des Pins auf Ausgang nicht nötig, macht Bascom selbst. Kannst aber zur Sicherheit noch das vor der Do-Loop Einfügen:
Config Portb.0 = Output

Das Ein- und Ausschalten der LED macht die PWM. Da kannst Du gar nix machen. Einfach den PWM-Wert ändern und gut ist´s.

Edit: Ich war wohl zu langsam...
LED an PB.0 -> Richtig


Sven Löffler Offline

Admin


Beiträge: 3.760

27.09.2012 23:57
#11 RE: LED auf- und abdimmen Antworten

Hmmm, ich habe es nun mal versucht. Bisher leuchtet die LED nur. Habe verschiedene Werte versucht. Die LED ist mit GND an PB0. Den Ausgang habe ich nochmal definiert.

EDIT Ich nehme alles zurück !!! Es war mein Fehler ! Nun funktioniert es !


diezel Offline



Beiträge: 709

28.09.2012 00:13
#12 RE: LED auf- und abdimmen Antworten

hab grad mein Eval-Board rausgekramt, hätte mich doch stark gewundert, wenn´s nicht geklappt hätte...

Gefühlt würd ich´s noch schneller auf und abblinken lassen. Entweder die Wait´s in den For-Next-Schleifen verkleinern oder mit grösserer Schrittweite zählen:
For I = 0 To 255 Step 2


diezel Offline



Beiträge: 709

29.09.2012 16:40
#13 RE: LED auf- und abdimmen Antworten

Hi Sven,

das Blinken ist richtig gut geworden. Für später mal, hier hat Sven das Ergebnis gepostet:
Liebherr 954 MAX Wild "Abbruch" (4)

Wie rum hast Du die LED angeschlossen? Im fertigen Code schreibst Du:

Zitat
LED kommt an PB0 ( Pin 5 ). Geschaltet wird über GND.


Versteh ich es richtig, daß Du den Plus-Pol der LED mit dem Attiny verbunden hast?
Das macht bei der einen LED noch nichts aus, jedoch wenn Du mal mehr Strom verbauchst, wäre es besser, wenn Du die LED nicht mit dem Tiny versorgen würdest. Also Attiny - LED - Plus.


Gruß
Gerhard


Sven Löffler Offline

Admin


Beiträge: 3.760

29.09.2012 17:29
#14 RE: LED auf- und abdimmen Antworten

Hi Gerhard,

ich schalte über GND. Damit meine ich, dass der VCC der LED am VCC hängt. GND der LED hängt am Tiny. :) Das mache ich eigentlich immer so.


diezel Offline



Beiträge: 709

29.09.2012 18:11
#15 RE: LED auf- und abdimmen Antworten

na dann ist´s ja gut


 Sprung  

disconnected Mikromodell-Chat Mitglieder Online 1
Xobor Xobor Community Software
Datenschutz