Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Serielles Relais Kategorie: Sonstige Hardware (von Leo - 30.06.2006 13:12)
Ich nutze:
C-Control II Station
Hallo!

Mit der Rubrik tu ich mir im Moment schwer, da ich zwar eine externe Hardware ansteuere, aber
möglicherweise ein Programmier-Problem habe ;-).
Ich habe das serielle Relais von André, welches mittels Shift Register angesteuert wird.
Dieses habe ich über Cat5 Kabel vorbildlich geschirmt angehängt (Pull down- oder up habe ich (noch) nicht).

Ich toggle einfach die Led1 und Led2 als test (Led 0 toggled alle 400ms, Led 2 alle 800ms, das Schieberegister
wird alle 200ms refreshed).
Es werden HW mä�ig aber immer wieder Relais/LED's angesteuert, die ich SW mä�ig nicht ansteuere.
Um das Problem zu beheben habe ich mehrere Schritte unternommen, jeder hat das Problem verschlimmert ;-)

1) Da ich nicht ganz dahintergstiegen bin, was die Funktion swcapture() des srrel moduls genau machen soll,
    habe ich einfach sendframe in mein modul kopiert und die variablen in der Funktion durch die Konstanten die
    meiner Funktion entsprechen erstetzt.
2) Ich habe unmittelbar vor der Schleife ein run 255 und unmittelbar danach ein run 32 eingefügt, um zu
    verhindern, daÃ? ein thread switch in die Schleife fällt
3) Ich habe nach run 255 ein capture und vor run 32 ein release eingebaut um sicherzustellen

Die Funktion schaut also derzeit so aus:

function sendframe()
{int i;
 if not ( (ShiftBMP == 0) or (ShiftBMP == 16) or (ShiftBMP == 32) or (ShiftBMP == 48) )
    plm.beep(plm.TONE_A1);    //test if something else than desired is adjusted by mistake
 run 255;           //don't interrupt (exept with interrupt ;-)
 capture;
 for i=7 ...>= 0 step -1
 {
  ports.set(DataIn,(ShiftBMP shr (i%8)) and 1);
  ports.pulse(ShiftClk);
 }
 ports.pulse(StoreClk);
 release;
 run 32;
}


Ideen sind herzlich willkommen. Ich denke das Problem ist eine Kombination aus Hard- und Software
Problem. Leider komme ich frühestens Mitte nächste Woche an ein Oszi.
Daher sind alle Ideen willkommen, damit mich das Problem nicht bis dahin ausbrmst.

GruÃ?
Leo


    Antwort schreiben


Antworten:

Re: Serielles Relais (von Leo - 9.07.2006 13:34)
    Re: Serielles Relais (von Leo - 9.07.2006 14:48)
        Update (von Leo - 9.07.2006 18:10)
            Ein Schuß, ein Treffer (Problem gelöst) (von Leo - 9.07.2006 18:23)
                Re: Ein Schuß, ein Treffer (Problem gelöst) (von André H. - 2.09.2006 16:44)
                    Re: Ein Schuß, ein Treffer (Problem gelöst) (von Leo - 28.09.2006 17:02)