Forum: Mikrocontroller und Digitale Elektronik Mal wieder: DALI Zufallsadresse


von Bernhard _. (Firma: dl1bg) (bernhard_)


Lesenswert?

Hallo zusammen,

auch wenn das Thema hier schon durchgekaut wurde, finde ich den Fehler 
in meinem Code nicht.

An meinem Bus hängen 5 Teilnehmer, die ich mit Broadcast-Befehlen 
einwandfrei ansprechen (bisher nur schreiben) kann, jetzt möchte ich sie 
mit dem "Halbierverfahren" über die Zufalladresse adressieren.


  // reset
  Send(0xFF, 0x20);
  cyg_thread_delay(10);
  Send(0xFF, 0x20);
  cyg_thread_delay(1000);

  // extended initialize (allow addressing for 15 minutes)
  Send(0xA5, 0x00);
  cyg_thread_delay(10);
  Send(0xA5, 0x00);
  cyg_thread_delay(10);

  // request randomizing
  Send(0xA7, 0x00);
  cyg_thread_delay(10);
  Send(0xA7, 0x00);
  cyg_thread_delay(10);

  // high byte
  Send(0xB1, 0xFF);
  cyg_thread_delay(10);

  // middle byte
  Send(0xB3, 0xFF);
  cyg_thread_delay(10);

  // low byte
  Send(0xB5, 0xFF);
  cyg_thread_delay(10);

  // compare
  Send(0xA9, 0);

Lieder bekomme ich keine Antwort, obwohl auf 0xFFFFFF eigentlich jeder 
antworten müsste?!?

Danke im Voraus
Bernhard

von Tx2000 (Gast)


Lesenswert?

Die EVGs brauchen nach dem Randomize ein wenig Zeit. Ich glaube das 
waren so 300ms.

von Bernhard _. (Firma: dl1bg) (bernhard_)


Lesenswert?

Hallo,

auch mit dem delay bekomme ich keine Antwort.

Gruß
Bernhard

von Bernhard _. (Firma: dl1bg) (bernhard_)


Lesenswert?

push, weiß denn wirklich keiner einen Rat oder hat ein Stück Code zum 
Quercheck?

von Bernhard _. (Firma: dl1bg) (bernhard_)


Lesenswert?

Hallo,

nur als feedback für alle interessierten: der oben angehängte Code 
funktioniert einwandfrei, wenn man das reset weg lässt.

Gruß
Bernhard

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
Noch kein Account? Hier anmelden.