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
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.
...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.
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.
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ß
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 ?
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.
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:
1 | .include "m32def.inc" ; Definitionsdatei für den Prozessortyp einbinden |
2 | |
3 | ldi r16, 0xFF ; lade Arbeitsregister r16 mit der Konstanten 0xFF |
4 | out DDRB, r16 ; Inhalt von r16 ins IO-Register DDRB ausgeben |
5 | |
6 | ldi r16, 0b11111100 ; 0b11111100 in r16 laden |
7 | out PORTB, r16 ; r16 ins IO-Register PORTB ausgeben |
8 | |
9 | ende: rjmp ende |
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:
1 | /* Alle Zeichen zwischen Schrägstrich-Stern
|
2 | und Stern-Schrägstrich sind lediglich Kommentare */
|
3 | |
4 | // Zeilenkommentare sind ebenfalls möglich
|
5 | // alle auf die beiden Schrägstriche folgenden
|
6 | // Zeichen einer Zeile sind Kommentar
|
7 | |
8 | #include <avr/io.h> // (1) |
9 | #include <stdint.h> |
10 | |
11 | int main (void) { // (2) |
12 | |
13 | DDRA = 0xff; |
14 | DDRB = 0xff; |
15 | |
16 | //PORTA = 0x03; // (4)
|
17 | |
18 | PORTA = 0b00000100; // Sollte PA3 Einschalten |
19 | // PORTC = 0b1110000
|
20 | |
21 | while(1) { // (5a) |
22 | /* "leere" Schleife*/ // (5b) |
23 | } // (5c) |
24 | |
25 | /* wird nie erreicht */
|
26 | return 0; // (6) |
27 | }
|
Programm läuft mit "Build & run" auch ohne fehler durch !
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 ?
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 ?
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.