Sonntag, 5. Februar 2012, 00:59 UTC+1

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

1

Montag, 17. November 2008, 16:43

Mini-RGB-Fader Bausatz - Programm-Code

Hallo Forengemeinde,

erstmal nochmals vielen Dank für das tolle Interesse an dem Bausatz und die große Nachfrage. Wer jetzt nicht weiß um was es geht, hier der Link zum Bausatz: Klick!

Wie schon angekündigt habe ich nun ein extra Thema für die Software für den Bausatz erstellt. Hier kommen nur Sachen rein die die Software betreffen, also das Programm das später auf dem Controller läuft.

Es wurden schon sehr viele Funktionen angefragt und einiges umgesetzt. Allerdings passt nicht alles in ein Programm (Platz im µC ist begrenzt). So werden hier nach und nach bestimmt noch mehr Programme rein kommen. Doch zunächst soll es mal ein Standardprogramm geben mit dem der Bausatz seine Grundfunktion erfüllt - Fading und manuelle Farbeinstellung.

Ich werde die Bascom-Files für den Code dann später, sobald die ersten Bausätze raus sind, hier freigeben. Somit kann sich dann später jeder, der proggen kann, den Code auf seine Bedürfnisse anpassen.
Im Falle das jemand nicht proggen kann aber eine bestimmte Funktion braucht, dann kann dieser mich per PN kontaktieren. Hier sollten bitte nur Vorschläge für Standardprogramme gemacht werden bzw. solche die dann auch von mehreren gewünscht sind. Momentan betrifft das nur das Standardprogramm sowie ein irgendwann erscheinendes Strobo-Programm.

Damit alle hier bei den Bezeichnungen der Taster usw. vom gleichen reden, hier ein Bild von der Platine und deren Tasterbeschriftungen:



Der Taster S7 ist fest für den Reset und für keine andere Funktion frei. An die LED-Anschlüsse 1-3 kann man natürlich auch andere Farben anklemmen bzw. auch weiße LEDs, meine Vorgabe ist da nur symbolisch.


Standard Programm: KLICK

Aquarium Programm: KLICK



Bei Änderungsvorschlägen die die Allgemeinheit betreffen, bitte hier in den Beitrag schreiben. Bei Sonderwünschen, bitte PN an mich und nicht hier in den Beitrag schreiben!



Gruß, Benny.

Dieser Beitrag wurde bereits 10 mal editiert, zuletzt von »benkly« (26. März 2009, 20:39)

  • Zum Seitenanfang

fabian

Profi LedStyler

Beiträge: 917

Wohnort: bei Freiburg

Beruf: Schüler

2

Montag, 17. November 2008, 17:25

Den Funktionen gefallen mir :)

Ich habs aber eine Frage:
Um z.B. die Geschwindigkeit zu erhöhen/verringern, muss man pro Stufe 1x auf den Taster drücken? Oder reicht es, wenn man den Taster gedrückt hält?
  • Zum Seitenanfang

3

Montag, 17. November 2008, 17:36

Hi,

gedrückt halten geht nicht. Das würde den Code momentan sprengen. Es sind nur noch 12% frei und eventuell progge ich das noch ein klein wenig um, da brauch ich dann noch ein bissel Platz.

Du kannst aber mit dem anderen Tasterpaar momentan statt +/-1 Schritt auch gleich +/-16 Schritte machen.

Der Manuell-Mode wird wahrscheinlich auch nicht sooo viel genutzt. Also ich glaube nicht das da einer 20 mal am Tag die Farben verstellt. Dieser war eher dafür gedacht um einmal eine Farbe einzustellen und diese dann zu lassen, z.B. bei Raumbeleuchtungen in Bistros oder ähnliches. Und vor allem das man so seinen warmweiß Farbton einstellen kann.
Aber wer möchte darf den auch 20 mal am Tag ändern :D


Gruß, Benny.
  • Zum Seitenanfang

nominal

Junior LedStyler

4

Montag, 17. November 2008, 22:14

Respekt für die ganze Arbeit :thumbsup: Mir gefällt vor allen die Fadinggeschwindigkeit von bis zu ca. 195 sec. Das sind schon einmal weiche
Übergänge wie ich sie mag. :D Wird Zeit füt die Bestellung.
Gruß
nominal
  • Zum Seitenanfang

5

Montag, 17. November 2008, 23:02

Es würden auch noch längere Übergänge gehen. Der momentane längste Übergang setzt sich aus folgenden Werten zusammen:

- dem PWM Zähler, 0-255
- der einstellbaren Fadinggeschwindigkeit, 0-255ms

Also 256 * 256ms = 65535ms = 65,5sek für einen Übergang von einer zur anderen Farbe.

Ich könnte jetzt für die Fadingeschwindigkeit anstatt ein Byte (0-255) ein Word (0-65535) definieren.
Dann wäre der längste Übergang von einer Farbe zur anderen 256 * 65536ms = 16776960ms = 16777sek = ca. 280 min.
Nur wer drückt schon gern den Taster um die Fadinggeschwindigkeit zu senken so oft? Da muss ich mir noch was einfallen lassen.


Gruß, Benny.
  • Zum Seitenanfang

nominal

Junior LedStyler

6

Montag, 17. November 2008, 23:41

- Fadinggeschwindigkeit einstellbar von 0 bis ca. 195 sek (pro Durchlauf)


Dann wären das ca. 3 Minuten von z. B. rot nach rot für einen kompletten Farbdurchlauf.
Gruß
nominal
  • Zum Seitenanfang

7

Dienstag, 18. November 2008, 10:03


- Fadinggeschwindigkeit einstellbar von 0 bis ca. 195 sek (pro Durchlauf)
Dann wären das ca. 3 Minuten von z. B. rot nach rot für einen kompletten Farbdurchlauf.
Genau.
  • Zum Seitenanfang

8

Mittwoch, 19. November 2008, 13:43

Hi,

ich hab das Standardprogramm nochmals geändert und die geänderten Sachen in der Beschreibung im 1. Beitrag hervorgehoben. Zudem habe ich den Code noch ein wenig optimiert und konnte somit die neuen Sachen einbauen.

Ich werden den Code im Bascom jetzt noch versuchen ausreichen zu kommentieren damit später dann jeder selbst versuchen kann das nachzuvollziehen und eventuell Änderungen nach eigenen Bedürfnissen vorzunehmen.


Gruß, Benny.
  • Zum Seitenanfang

djtechno

Bronze LedStyler

Beiträge: 3 242

Wohnort: Beutelsbach

Beruf: Informatiker

9

Mittwoch, 19. November 2008, 16:13

Hey,super, auch meine Verbesserungsvorschläge sind drin :thumbup: Ich freue mich schon auf mein Exemplar :led:
Diese JTAG-Schnittstelle: Ist das eine serielle schnittstelle,die man direkt an den pc anschließen kann,oder braucht man da einen Programmer für?
Und werden strom und leds auch über diesen pfostenstecker angeschlossen oder über separate lötpads?
LED the sun shine ;)
  • Zum Seitenanfang

10

Mittwoch, 19. November 2008, 17:46

1.- Hey,super, auch meine Verbesserungsvorschläge sind drin :thumbup: Ich freue mich schon auf mein Exemplar :led:

2.- Diese JTAG-Schnittstelle: Ist das eine serielle schnittstelle,die man direkt an den pc anschließen kann,oder braucht man da einen Programmer für?

3.- Und werden strom und leds auch über diesen pfostenstecker angeschlossen oder über separate lötpads?
zu 1.:
Was sinnvoll ist versuche ich auch zu machen und da bin ich für alle Vorschläge offen.

zu 2.:
Das ist KEIN JTAG!!! Das ist die ISP-Schnittstelle und für diese braucht man einen Programmer. Den AVR ISP MK2 kann ich da empfehlen und dieser kostet etwas um die 40,-€. Allerdings braucht den nur der der das Teil selber umprogrammieren will.

zu 3.:
Für die Spannungsversorgung und die LEDs sind ja die 4 Federkraftklemmen da.
Zum proggen kann man die Versorgungsspannung über Pin3 der ISP mitgeben, aber nur zum proggen und es darf sonst nix anderes angeschlossen sein! Wenn man den Chip, an LEDs und Versorgungsspannung angeschlossen, proggen will, dann darf man keine weitere Spannung über Pin3 mitgeben.
Also an die ISP nur ran gehen wenn man weiß was man tut!


Gruß, Benny.
  • Zum Seitenanfang

11

Mittwoch, 19. November 2008, 19:47

Hi,

das hat mit der ISP nix zu tun. Wenn es eine Standard ISP Belegung ist dann sind die alle untereinander kompatibel. Ich habe nur keine Erfahrung mit Deinem Programmer aus dem Link und Bascom. Da muss dann hier jemand antowrten der den verwendet. Man muss nur drauf schauen das der über Pin3 nicht irgendwelche Signale senden will, denn der geht auf meiner Platine auf die Spannungsversorgung (normalerweise ist der Pin3 nicht belegt).


Gruß, Benny.

EDIT:

Der von JayDragon genannte Programmer scheint nicht die Standardbelegung der 10-Pin ISP Schnittstelle zu nutzen! Daher kann dieser nicht verwendet werden! Der Programmer zieht den Pin3 auf Masse (zumindest soweit ich das in der Dokumentation herauslesen konnte), normal ist dieser Pin nicht belegt und ich benutze diesen für die Spannungsversorgung.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »benkly« (19. November 2008, 20:02)

  • Zum Seitenanfang

Condor

Junior LedStyler

Beiträge: 139

Wohnort: Augsburg

12

Freitag, 21. November 2008, 10:27

Warum benutzt du Pin 3 für die Spannungsversorgung wen doch bei ISP an Pin 1 die Spannungsversorgung liegt ?
  • Zum Seitenanfang

13

Freitag, 21. November 2008, 10:39

Warum benutzt du Pin 3 für die Spannungsversorgung wen doch bei ISP an Pin 1 die Spannungsversorgung liegt ?
Nun, an Pin1 liegt nicht die Spannungsversorgung, an Pin1 ist MOSI. Die Spannungsversorgung liegt an Pin2.
Nur leider wird dieser vom Programmer nicht als Spannungsversorgung verwendet, sonder über diesen prüft der Programmer nur ob das Zielsystem mit Spannung versorgt ist.
Der Pin3 ist bei mir an den Spannungsregler der Platine angeschlossen. Das heißt das man über diesen Pin3 bei dem Bausatz die Platine auch mit 24V versorgen kann oder 12V. An Pin2 liegt dagegen die geregelte Spannung von 5V des Spannungsreglers an.

Ich hoffe das hat jetzt jeder verstanden, ist ein wenig verwirrend.


Gruß, Benny.
  • Zum Seitenanfang

14

Donnerstag, 27. November 2008, 16:43

Hi,

nein, das ist falsch. Ich weiß nicht woher Du die Infos über das AVR ISP MK2 her hast, aber Pin3 ist da einfach nur NC (not connected) und hängt in der Luft. Somit kann man den für was anderes verwenden.

Also doch Adapter. Oder teste es halt vorher!


Gruß, Benny.
  • Zum Seitenanfang

15

Donnerstag, 27. November 2008, 16:45

@all

Bitte lest euch nochmals meine Anleitung im ersten Beitrag durch und sagt mir ob Ihr das so versteht und nachvollziehen könnte. Ich schreibe grade nebenher die Anleitung, Bestückungsanleitung und die Beschreibung des Programms. Wenn da irgendwas unverständlich sein sollte, dann sagt es mir bitte. Eventuell kann ich es dann anders schreiben.

Vielen Dank schon mal euch allen!


Gruß, Benny.
  • Zum Seitenanfang

Kanwas

LedStyles Guru

Beiträge: 2 683

Wohnort: 5....

16

Donnerstag, 27. November 2008, 20:42

Die offizielle Atmel Belegung der 6 und 10 poligen ISP vom STK500

Guckst du hier
Sämtliche Angaben ohne Gewähr und ohne Anspruch auf Vollständigkeit!
  • Zum Seitenanfang

Freaky91

Senior LedStyler

Beiträge: 408

Beruf: -= Gärtner =-

17

Mittwoch, 3. Dezember 2008, 16:15

Tag

@benkly kannst du nun BÜDDE das Programm veröffentlichen. Bin schon gespannt 8o wie du das Programmiert hast. Könnte dieses Programm sehr gut für eins von einen Basteleien verwenden. :thumbsup:
  • Zum Seitenanfang

18

Freitag, 5. Dezember 2008, 20:59

Hi,

ich habe den Code nun in den ersten Beitrag eingefügt. Und die Fuses nicht vergessen.... :D


Gruß, Benny.
  • Zum Seitenanfang

NEX

Senior LedStyler

Beiträge: 275

Wohnort: Ulm

Beruf: Student

19

Freitag, 5. Dezember 2008, 23:17

Quellcode

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
41
42
43
44
45
46
47
48
49
50
51
Do


If Fader_mode = 0 Then

   If Rgb = 0 Then
      Incr Led1_0
      Decr Led3_0
      Led1 = Led1_0
      Led3 = Led3_0
      Waitms Color_delay
   End If

   If Rgb = 1 Then
      Decr Led1_0
      Incr Led2_0
      Led1 = Led1_0
      Led2 = Led2_0
      Waitms Color_delay
   End If

   If Rgb = 2 Then
      Decr Led2_0
      Incr Led3_0
      Led2 = Led2_0
      Led3 = Led3_0
      Waitms Color_delay
   End If

   If Led1_0 = 255 Then
      Rgb = 1
      Led3_0 = 0
      Led3 = Led3_0
      Waitms Color_stop
   End If

   If Led2_0 = 255 Then
      Rgb = 2
      Led1_0 = 0
      Led1 = Led1_0
      Waitms Color_stop
   End If

   If Led3_0 = 255 Then
      Rgb = 0
      Led2_0 = 0
      Led2 = Led2_0
      Waitms Color_stop
   End If

End If


Der Code kommt mir recht bekannt vor :thumbsup:
Greetings
Chris
  • Zum Seitenanfang

20

Freitag, 5. Dezember 2008, 23:53

Hi NEX,

ja, der Teil des Codes ist Teils kopiert und etwas angepasst.

Anfangs habe ich mich gefragt warum die eine Farbe, während die andere schon hochfadet, herunterfadet. Weil den Zustand rot und blau 100% an wird es ja dann im Fading Mode nicht geben.
Aber dann ist es mir eingefallen. Das ist sehr gut so, somit hat man immer etwa die gleiche Gesamthelligkeit wenn alle 3 Farben gleich eingestellt sind.
Bei der Pilips Lampe ist das glaub nicht so gut gelöst. Wenn da gelb gemischt wird dann ist das viel heller als rot oder grün alleine.

Ich habe den Teil des Codes sogar schon so umgebaut das er die als nächstes anzufadende Farbe per Zufall auswählt. Hat auch gut funktioniert, nur passte das jetzt nicht mehr ins Standardprogramm.

Wenn ich dann meine AQ Beleuchtung auf LED umbaue, dann wird ein Sonnenauf- und Sonnenuntergang programmiert, mit Mondlicht natürlich (in einem kalten weiß).


Gruß, Benny.


PS.: Kannst Du mir sagen von wem dieser Codeteil bzw. die Idee kam, ist die direkt von Dir oder auch irgendwo rauskopiert? Auf jeden Fall möchte ich diesem Kollegen dafür Danken! :thumbup:
  • Zum Seitenanfang