www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LED Panel mit 9 RGB-LEDs ansteuern


Autor: J. P. (jeypee)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Zusammen,

ich möchte gerne 4 Panels mit je 9 RGB-LEDs ansteuern.

Schaltplan siehe Anhang.

Das ganze ist soweit auch fertig gelötet und nu gehts ans programmieren 
des ATMEGA32.

Da ich sowas noch nie gemacht haben würde ich mich hier gerne etwas 
rantasten.
Das Tutorial hab ich schon mal etwas durchgelesen, aber benötige wohl 
für den anfang was anderes.

Und zwar möchte ich als erstes das ganze einfach mal zum leuchten 
bringen.
Sprich einfach z.B. PIN 26, 33 oder 37 mit Strom versorgen damit es rot 
grün oder blau leuchtet.

Evlt. gibts ja schon ein kleines Programm nach dem ich mich richten kann 
- aber eure codeschnipsel sind gleich immer so gross ;)

Habe als Programme AVR Studio 4.17 und AVR Studio 2. irgendwas daheim - 
von der "Programmer" Seite runter geladen... sind scheinbar irgendwie 
verwandt (Der Marienkäfer beim  starten).

Würde mich freuen wenn Ihr mich bei meinem Projekt unterstützt und 
begleiten könntet.

Momentan siehts so hier aus:
http://s12.directupload.net/file/d/1920/9p3835p4_jpg.htm

Danke.

Gruß Jeypee

Autor: Klaus2 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Willst du uns veräppeln? Du hast noch nix programmiert, willst aber mit 
einem AM32 gleich 32 RGB LEDs gescheit ansteuern können? Pffff...

Wie wäre es denn, wenn du mal zunächst die PWM des ATMEGA anschmeist, 
dann mal Multiplexing mit ein paar LEDs lernst, dann Soft PWM und dann 
langsam mal rüber zu den RGBs? Zumal ich nicht sicher bin, ob man mit 
dem Aufbau "gescheit" 36 RGB LEDs ansteuern kann - denn das sind 
immerhin 36x3 PWM Werte.

Klaus.

Autor: Klaus2 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
...ok, nach langem kabelverfolgen auf dem foto sind alle 9 LEDs komplett 
parallel? Ohne Widerstände? :) Oh oh...macht es aber natürlich 
einfacher, 12 PWM Kanäle bekommt man in SW locker hin.

Klaus.

Autor: J. P. (jeypee)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also veräppeln will ich euch definitiv nicht.

Also C bzw. C++ hab ich schonmal früher was mit gemacht.
Außerdem kann ich mit javascript, html, PHP und Perl relativ gut 
umgehen.


Bin lernfähig !
plz input !

Außerdem möchte ich ja zunächst nur jeweils ein Panel ansteuern - also 
nur PIN soundso AN und wieder aus. Ist das so schwer ?

Es gibt pro Panel nur einen PIN für R,G und B (3 Leitungen/PINS) wo es 
am ATMEGA angeschlossen ist. Also meiner Rechnung nach nur 4 x 3 Werte !

-----------------^^kam zwischenzeitlich noch ein Beitrag ggf. 
ignorieren^^---------

Tatsächlich sind die teile ohne Widerstände, die befinden sich auf der 
Platine.
Auf dem Foto findet sich auch "nur" eine vorläufige Teststellung.
Sofern alles klappt wird später natürlich jede LED einzeln gesteuert, 
hierfür fehlt mir aber die Grundlage mit der ich eben jetzt beginnen 
möchte.
Ich möchte mich hier einfach langsam rantasten.

Autor: Phil S. (zippi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
J. P. schrieb:

> Habe als Programme AVR Studio 4.17 und AVR Studio 2. irgendwas daheim -
> von der "Programmer" Seite runter geladen... sind scheinbar irgendwie
> verwandt (Der Marienkäfer beim  starten).

AVR Studio2. ???
Du meinst bestimmt AVR32 Stduio 2.0...2.2

Wenn ja, dann kannst du das wieder löschen ist für die 32bit avrs.

Aber du solltest dir noch Winavr installieren.

Zum Programmieren, hast du schon ein ISP programmer?

gruß

Autor: J. P. (jeypee)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Phil S. schrieb:
> Du meinst bestimmt AVR32 Stduio 2.0...2.2

Ja genau - war vorhin noch auf Arbeit wo ich das andere habe.

> Wenn ja, dann kannst du das wieder löschen ist für die 32bit avrs.

Soweit mir bekannt hab ich einen "ATmega32"
Würde mich hier gerne vorerst auf ein Programm beschränken.

> Aber du solltest dir noch Winavr installieren.

Hab ich sogar schon runter geladen  - nur noch nicht installiert.

> Zum Programmieren, hast du schon ein ISP programmer?

Das müsste dann das kleine blaue Kästchen sein welches Du auf dem 
verlinkten Foto links oben noch so halb siehst - JA

-----

Welches Programm soll ich dann von den dreien am besten nehmen ?

Autor: Phil S. (zippi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
J. P. schrieb:
> Phil S. schrieb:
>> Du meinst bestimmt AVR32 Stduio 2.0...2.2
>
> Ja genau - war vorhin noch auf Arbeit wo ich das andere habe.
>
>> Wenn ja, dann kannst du das wieder löschen ist für die 32bit avrs.
>
> Soweit mir bekannt hab ich einen "ATmega32"
> Würde mich hier gerne vorerst auf ein Programm beschränken.

ATmega32 ist ein 8bit Prozessor. Die 32 stehen für den flash: 32kbyte.
Deswegen kannst du mit AVR32 Studio nichts anfangen.

>> Aber du solltest dir noch Winavr installieren.
>
> Hab ich sogar schon runter geladen  - nur noch nicht installiert.

Das brauchst du für AVR Studio 4.17.

>> Zum Programmieren, hast du schon ein ISP programmer?
>
> Das müsste dann das kleine blaue Kästchen sein welches Du auf dem
> verlinkten Foto links oben noch so halb siehst - JA

OK

> Welches Programm soll ich dann von den dreien am besten nehmen ?

Einfach nur AVR Studio 4.17 starten wenn du (es+winavr) installiert 
hast.

Dann kannst du neues Projekt machen.

Autor: J. P. (jeypee)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, habe nun beides installiert.

AVR gestartet und Projekt mit Simulator für AtMega32 angelegt.

Die ersten Zeilen habe ich mal aus dem Tutorial übernommen:
.include "m32def.inc"         ; Definitionsdatei für den Prozessortyp einbinden
 
         ldi r16, 0xFF       ; lade Arbeitsregister r16 mit der Konstanten 0xFF
         out DDRB, r16       ; Inhalt von r16 ins IO-Register DDRB ausgeben
 
         ldi r16, 0b11111100 ; 0b11111100 in r16 laden
         out PORTB, r16      ; r16 ins IO-Register PORTB ausgeben
 
ende:    rjmp ende  

Autor: J. P. (jeypee)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie mach ich nu weiter ?

Autor: J. P. (jeypee)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich hab wie oben schon erwähnt AVR Studio 4.17 installiert und auch 
das erste Programm geschrieben.

Leider wird nirgendwo beschrieben wie man es nun von hier in den 
ATmega32 bekommt.

Ich habs mal mit "Display the Connect Dialog probiert und dort meinen 
"AVRISP mkII" eingegeben. Aber nach kurzer Zeit kommt der Dialog wieder.

In der obersten Leiste steht dann "Connect failed - select AVR 
Programmer".

Ich habe aber den "AVRISP mkII" wie angegeben und wenn ich meiner 
Teststellung 5V anlege leuchtet der auch grün. Ohne 5V leuchtet er rot.

Was mache ich falsch ?

Programm schaut mom. so aus:
/* Alle Zeichen zwischen Schrägstrich-Stern 
   und Stern-Schrägstrich sind lediglich Kommentare */
 
// Zeilenkommentare sind ebenfalls möglich
// alle auf die beiden Schrägstriche folgenden
// Zeichen einer Zeile sind Kommentar
 
#include <avr/io.h>          // (1)
#include <stdint.h>

int main (void) {            // (2)
 
   DDRA  = 0xff; 
   DDRB  = 0xff;
   
   //PORTA = 0x03;             // (4)

   PORTA = 0b00000100;    // Sollte PA3 Einschalten
  //   PORTC = 0b1110000

   while(1) {                // (5a)
     /* "leere" Schleife*/  // (5b)
   }                         // (5c)
 
   /* wird nie erreicht */
   return 0;                 // (6)
}

Programm läuft mit "Build & run" auch ohne fehler durch !

Autor: J. P. (jeypee)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieso kann man eigentlich seinen Beitrag nicht mehr ändern ???

Also habe mal gegoogelt - es könnte evtl. am Windows 7 x64 liegen.
Scheinbar hat auch der Kollege im Tread unter mir das selbe Problem.

Beitrag "USBProg unter Windows 7"
Beitrag "Programmiergerät und AVR Studio"

Gibt es hier schon eine andere Lösung als ein VPC ?

Autor: J. P. (jeypee)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, habe jetzt AVR Studio auf nem XP - Rechner installiert und bekomme 
auch die Verbindung hin.

Leider kann ich mein Programm aber nicht in den Flash spielen.

Bei "Verify" bekomme ich die Fehlermeldung:

WARNING: FLASH byte address 0x0000 is 0x00 (should be 0x0C).. FAILED!

Habe die ISP Frequency wie empfohlen auf 1/4 (1 Mhz) eingestellt.
The ISP frequency must be less than 1/4 of the target.

Ansonsten kann ich super alles auslesen und verifizieren, nur eben bei 
Prgram und Verify unter Flash geht leider nix.

Bin auch nicht im Debug-Mode, also der > Pfeil ist grün Stopptaste 
gedrückt.

Woran kanns liegen ?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.