ATtiny2313 Fuses

Alles was mit der PC_DIMMER Hardware zu tun hat
hoda
Beiträge: 5
Registriert: 19.10.2012, 21:53

ATtiny2313 Fuses

Beitrag von hoda »

Hallo,

hab die RGBW-Led Schaltung aufgebaut, nur bekomme das mit den Fuses richtig setzen mit PonyProg wohl nicht so ganz hin.
Ich hoffe ihr könnt mir helfen.

Grüße, David
Dateianhänge
fuses 2313.JPG
fuses 2313.JPG (40.69 KiB) 18073 mal betrachtet
Benutzeravatar
Christian
PC_DIMMER-Entwickler
Beiträge: 1856
Registriert: 12.11.2007, 09:30
Wohnort: Knw.-Remsfeld
Kontaktdaten:

Re: ATtiny2313 Fuses

Beitrag von Christian »

Hi,


laut "http://www.engbedded.com/fusecalc" müssen die Bits wie im Bild gesetzt werden. ACHTUNG: bei Ponyprog bedeutet ein aktiviertes Häkchen, dass das Fusebit=0 ist. Demnach müssten bei Dir alle Häkchen invertiert werden. Hast Du vorher auf "READ" unten rechts geklickt?


viele Grüße,
Christian
Dateianhänge
fusebits_attiny2313_rgbw.png
fusebits_attiny2313_rgbw.png (25.75 KiB) 18057 mal betrachtet
hoda
Beiträge: 5
Registriert: 19.10.2012, 21:53

Re: ATtiny2313 Fuses

Beitrag von hoda »

Ja, aber das waren schon nicht mehr die Werkseinstellungen.
Hatte zwei Mikrocontroller, der eine funktioniert nur jetzt nicht mehr. Habe die Fusebits genauso gesetzt wie du mir gesagt hast, nur invertiert. Das ausgegraute kann ich ja nicht ändern.
Was mach ich denn jetzt, dass ich ihn wieder zum laufen bekomme?

Jetzt trau ich mich gar nicht mehr so wirklich an den anderen, nicht dass ich den auch versenke...
Er erkennt nun endlich das DMX Signal, Led blinkt schnell wenn kein Signal anliegt, komme auch in den Programmierzustand für die Adresse, kurz darauf blinken beide Led's, lasse ich den Taster los, speichert er die Adresse aber nicht. Also er reagiert auf keine Kanaländerung.... Müsste die Led dann nicht blinken, wenn sich der Wert eines Kanals ändert, auf den der Empfänger programmiert ist? Im Anhang noch mal die Fuses
Dateianhänge
fuses.JPG
fuses.JPG (39.52 KiB) 18040 mal betrachtet
Benutzeravatar
Christian
PC_DIMMER-Entwickler
Beiträge: 1856
Registriert: 12.11.2007, 09:30
Wohnort: Knw.-Remsfeld
Kontaktdaten:

Re: ATtiny2313 Fuses

Beitrag von Christian »

Hi,

naja, die Lock-Bits hättest Du nach dem "Read" nicht verändern dürfen. Damit hast Du den Prozessor komplett gesperrt. Den kannst Du glaub ich entsorgen.

Nach dem Halten der Programmiertaste muss zwingen Kanal 511 und 512 eingehen, da andernfalls der Programmiermodus nicht verlassen wird. Wenn nun das DMX-Interface lediglich 256 Kanäle sendet, wird der Programmiermodus demnach nicht beendet. Kannst Du das irgendwie sicherstellen?


viele Grüße,
Christian
hoda
Beiträge: 5
Registriert: 19.10.2012, 21:53

Re: ATtiny2313 Fuses

Beitrag von hoda »

Die Lock-Bits sind doch die oberen zwei, also Lock2 und Lock1, sehe ich das richtig? Weil die habe ich nicht verändert.

Ja, habe das Interface von Digtial-Enlightment mir aufgebaut. Das war auch schon mehrere male im Einsatz und funktioniert einwandfrei.

Es kommt mir so vor als würde die eingestellte Adresse nicht abgespeichert werden können. Ich halte den Taster lange gedrückt, eine Led blinkt, dann schneller, dann die zweite mit, bis ich wieder loslasse.
Wenn ich den bzw. die eingestellten Kanäle dann ansteuer, tut sich aber nichts.
Don Simon
Kabelschlepper
Beiträge: 12
Registriert: 23.10.2012, 21:56

Re: ATtiny2313 Fuses

Beitrag von Don Simon »

Hi,

hab auch so meine Probleme mit den Fuses. Ich schreib mit Pony Prog über den Comport auf das Pollin Evaluationsboard.
Bin grad dabei, das Dmx Switchpack zu bauen. Da nur kleine Spannungen geschaltet werden sollen, steuere ich einfach über den Ausgang PB7 mit einem Transistor ein 5V Relais an.
Verwendet hab ich die Schaltung mit Taster an PD3 http://www.pcdimmer.de/images/stories/D ... chpack.png

Problem ist jetzt, dass wenn ich das Gerät unter Spannung setze, schaltet das Relais und die gelbe LED blinkt durchgehend mit schätzungsweise 5-10Hz. (Die grüne Led hab ich weggelassen)
Die Betätigung des Tasters bringt nichts (hab schon versucht, die Kanäle 511, 512 und den "Schaltkanal" zu ändern (uDMX zeigt Änderung an), aber das hat auch nichts bewirkt.

Liegt es jetzt daran, dass ich die falsche Einstellung an den Fuse Bits genommen habe, oder kann es sein, dass ich das falsche Programm (Hex, Eep, H-Datei, wie auch immer....) verwendet habe. (hab auch verschiedene ausprobiert ;) ).

Schonmal danke für die Antworten,
Don Simon
Benutzeravatar
Christian
PC_DIMMER-Entwickler
Beiträge: 1856
Registriert: 12.11.2007, 09:30
Wohnort: Knw.-Remsfeld
Kontaktdaten:

Re: ATtiny2313 Fuses

Beitrag von Christian »

Hallo,
Es kommt mir so vor als würde die eingestellte Adresse nicht abgespeichert werden können. Ich halte den Taster lange gedrückt, eine Led blinkt, dann schneller, dann die zweite mit, bis ich wieder loslasse.
Wenn ich den bzw. die eingestellten Kanäle dann ansteuer, tut sich aber nichts.
Das sieht eigentlich gut aus. Wenn nämlich beide LEDs blinken, wurden Daten auf Kanal 511 und 512 gefunden und abgespeichert. Welcher Kanalwert war denn auf Kanal 511 und 512 eingestellt?

Code: Alles auswählen

1. Taster wird gedrückt: Grüne LED blinkt langsam um Beginn der Programmierung zu signalisieren. Hier kann der Vorgang durch Loslassen der Taste sofort abgebrochen werden, ohne eine Änderung vorzunehmen
2. Nach wenigen Sekunden blinkt die Grüne LED schnell. Hier wird auf die Informationen des Kanals 511 und 512 gewartet, von denen die Startadresse gelesen wird
3. Nach erfolgtem Auslesen der beiden Kanäle blinken Grün und Gelb gleichzeitig. Die Startadresse wurde erfolgreich ins EEPROM geschrieben. Der Taster kann nun losgelassen werden. Die grüne LED leuchtet nun wieder konstant.

Hier noch einmal die Einstellungshinweise für die Startadresse:
Einstellen der DMX-Startadresse:

Die Startadresse wird von den beiden letzten DMX512-Kanälen eingelesen, sobald der Taster an PD3 (bzw. PD6 im älteren Layout) längere Zeit gehalten wird. Um den Controller auf Startadresse 7 einzustellen, muss Kanal 511 auf 0 und Kanal 512 auf 6 eingestellt werden. Möchte man Adresse 400 einstellen, muss Kanal 512 auf 144 und Kanal 511 auf einen Wert größer 0 eingestellt werden. Die Adresse wird im EEPROM abgespeichert, sodass auch nach einem Neustart und Ausschalten des Gerätes die Adresse gespeichert bleibt.



Problem ist jetzt, dass wenn ich das Gerät unter Spannung setze, schaltet das Relais und die gelbe LED blinkt durchgehend mit schätzungsweise 5-10Hz. (Die grüne Led hab ich weggelassen)
Hier habe ich die einzelnen Blink-Codes aufgelistet: http://www.pcdimmer.de/index.php/dmx512 ... switchpack

Ein gleichmäßiges Blinken der gelben LED bedeutet, dass kein DMX512-Protokoll erkannt wird. Das kann entweder an einer verpolten DMX-Datenleitung liegen (einfach mal an der XLR-Buchse des Packs die beiden Pins tauschen), oder der µController arbeitet noch nicht korrekt. Das liegt meist an einer falschen Takteinstellung, oder das CKDIV8-bit ist noch gesetzt und der Controller arbeitet mit 1/8 des Takts.


viele Grüße,
Christian
hoda
Beiträge: 5
Registriert: 19.10.2012, 21:53

Re: ATtiny2313 Fuses

Beitrag von hoda »

Habe gerade eine merkwürdige Entdeckung gemacht. Wert von Kanal 512 egal, ist jedoch der Wert von Kanal 511 über 63 (oder 64, kann ich nicht so genau einstellen mit der Maus am Fader -.-) dann kann er die Adresse nicht mehr lesen oder speichern, also die gelbe LED fängt nicht das blinken an. Ist das normal? (Ich weiß schon, Kanal 511 muss nur einen Wert größer 1 haben oder so)
Wenn Kanal 511 und 512 auf Null sind, müsste doch die Startadresse eins sein. Die Adresse wird zwar erkannt/angenommen, aber reagiert dann trotzdem nicht darauf. Auch bei allen anderen Adressen so, z.B.: 511 auf 0 und 512 auf 2 also Startadresse 3 (leider kann ich mit der Maus den Fader immer nicht so genau einstellen, gibt's da einen Trick?)
Viele Grüße, David!
Don Simon
Kabelschlepper
Beiträge: 12
Registriert: 23.10.2012, 21:56

Re: ATtiny2313 Fuses

Beitrag von Don Simon »

...noch eine Frage:
welches Programm muss ich denn jetzt dem uC überspielen? Normalerweise will der ja eine .hex Datei, oder?
In dem Unterordner "Taster an PD3" ist ja so eine Datei. Wenn ich aber das Switchpack und nicht das Dimmerpack will, ändere ich die Definitons in der Main-datei.
Muss ich dann diese Datei neu Kompiliern, damit ich die hex datei bekomme, oder nimm ich dann einfach eine andere Datei.
Es gibt ja noch lib_dmx_in und lib_phase_cntrl
Benutzeravatar
Christian
PC_DIMMER-Entwickler
Beiträge: 1856
Registriert: 12.11.2007, 09:30
Wohnort: Knw.-Remsfeld
Kontaktdaten:

Re: ATtiny2313 Fuses

Beitrag von Christian »

Hallo,
Wenn Kanal 511 und 512 auf Null sind, müsste doch die Startadresse eins sein. Die Adresse wird zwar erkannt/angenommen, aber reagiert dann trotzdem nicht darauf. Auch bei allen anderen Adressen so, z.B.: 511 auf 0 und 512 auf 2 also Startadresse 3 (leider kann ich mit der Maus den Fader immer nicht so genau einstellen, gibt's da einen Trick?)
man kann z.B. in der Kommandozeile unten links im Hauptfenster des PC_DIMMERs einen oder mehrere Kanäle auf einen bestimmten Wert setzen. Dazu braucht man z.B. nur einzugeben:

Code: Alles auswählen

511+0
512+100
jeweils eine Zeile mit Enter bestätigen und Kanal 511 wäre auf 0 und Kanal 512 auf 100, was dann ja der Startadresse 101 entsprechen würde. Leichter geht es, indem man statt den herkömmlichen Geräten "Generic/Dimmer" das Gerät "PC_DIMMER/PC_DIMMER" hinzufügt. Da hat man direkt ein Eingabefeld für die Startadresse (siehe Bild im Anhang)

Ich habe mir den Quelltext auch noch einmal angesehen - programmiertechnisch ist da alles in Ordnung und bei meinen Dimmerpacks funktioniert es auch korrekt. Bitte also noch einmal die Hardwareverbindung - vor allem die Polung des XLR-Anschlusses - noch einmal prüfen.

Wenn ich aber das Switchpack und nicht das Dimmerpack will, ändere ich die Definitons in der Main-datei.
Muss ich dann diese Datei neu Kompiliern, damit ich die hex datei bekomme, oder nimm ich dann einfach eine andere Datei.
Es gibt ja noch lib_dmx_in und lib_phase_cntrl
Genau, man muss die Compiler-Schalter in der Headerdatei anpassen und dann das gesamte Projekt neu kompilieren. Hierzu empfehle ich das Atmel AVR Studio 4, 5 oder 6, welche man bei www.atmel.com kostenlos bekommt. Nach dem Kompilieren bekommt man wieder eine *.hex und eine *.eep Datei, welche man dann in den Prozessor speichern kann.


viele Grüße,
Christian
Dateianhänge
pcd_device.png
pcd_device.png (28.98 KiB) 17944 mal betrachtet
Don Simon
Kabelschlepper
Beiträge: 12
Registriert: 23.10.2012, 21:56

Re: ATtiny2313 Fuses

Beitrag von Don Simon »

ok, jetzt hab ich alle Dateien in Das Atmel Studio 6 geladen und will über "Build Solution" die Dateien kompiliern. Allerdings ist diese Schaltfläche grau und deshalb nicht anzuwählen.
- was mach ich falsch?
hoda
Beiträge: 5
Registriert: 19.10.2012, 21:53

Re: ATtiny2313 Fuses

Beitrag von hoda »

Ich glaub's nicht. Also das eigentliche Problem, welches ich die meiste Zeit hatte, war die aktivierte Fuse CKDIV8. Und mit dem falschen Takt hat der Controller (bei falscher Data + - polung!!!) auch was erkannt und sogar drauf reagiert O.O
Mir kam das schon so komisch vor, dass es so lange dauert bis man in den Programmier- bzw. Adress-Abruf-Zustand kommt.

Naja. Mit dem richtigen Takt war es dann tatsächlich die falsche Polung des DMX Signals. Mir war es wirklich ein Rätsel, denn der Controller hat auf dieses Signal reagiert und "anscheinend" versucht eine Adresse auszulesen, zu speichern. Und es sah auch so aus als hätte dies geklappt, da ja die gelbe LED nach kurzer zeit mit geblinkt hat.

Vielen vielen Dank für die so schnellen Antworten und Hilfe(n)!!!!!
Don Simon
Kabelschlepper
Beiträge: 12
Registriert: 23.10.2012, 21:56

Re: ATtiny2313 Fuses

Beitrag von Don Simon »

Leider kann ich die Dateien wegen mangelnden Wissens nicht kompiliern, bzw linken. Kann mir jmd die Dateien als Switchpack ohne Nulldurchgangserkennung als hex und eep Datei schicken?
Danke für die Hilfe
Benutzeravatar
Christian
PC_DIMMER-Entwickler
Beiträge: 1856
Registriert: 12.11.2007, 09:30
Wohnort: Knw.-Remsfeld
Kontaktdaten:

Re: ATtiny2313 Fuses

Beitrag von Christian »

Hi,

im Atmel-Studio muss man das Projekt zunächst konvertieren, da es noch ein altes AVR Studio 4 Projekt ist. Dazu klickt man oben im Menü auf "File" und dann auf "Import >" und wählt "AVR Studio 4 Project..." aus. Dann die alte *.APS Datei angeben und laden lassen.

Wenn man dann das Projekt geladen hat, muss man noch den Compiler auf "Native" (also intern) stellen. Dazu öffnet man rechts mit einem Doppelklick die Haupt-"C"-Datei und klickt oben im Menü auf "Project"->"xyz Properties...". Nun wählt man bei "Advanced" als Toolchain-Flavour die Option "Native". Das wars. Nun sollte der Code kompilieren.


viele Grüße,
Christian
Don Simon
Kabelschlepper
Beiträge: 12
Registriert: 23.10.2012, 21:56

Re: ATtiny2313 Fuses

Beitrag von Don Simon »

Hallo,

So, war ein paar Tage nicht da.
Danke, jetzt bin ich schon weitergekommen. Beim Compiliern hab ich jetz nur noch das Problem, dass während des Vorgangs immer plötzlich die Fehlermeldung kommt, dass die Datei Ctype.h nicht gefunden wurde.

Grüße,
Simon

Nachtrag: Hab mal testweise den Aufruf ausgeklammert. Jetzt werden die Dateien Util / Delay.h> und Avr / Io.h> gesucht...
Dateianhänge
Fehlermeldung
Fehlermeldung
Fehler.JPG (28.06 KiB) 17864 mal betrachtet
Antworten