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

Schieberegister Kategorie: Sonstige Hardware (von Markus Nüsser - 2.08.2004 20:45)
Ich nutze:
C164CI-ControllerBoard, CC2-Application-Board, OSOPT V3.0
Hallöschen zusammen...

Also, nachdem ich jetzt dein Buch so langsam durchhabe, und mir
so einige erweiterungskarten gebaut habe, bin ich beim ansteuern eines Schieberegisters
wohl etwas zu verwirrt, denn dieses register macht nicht wirklich das, was ich will, obwohl es technisch
in ordnung ist, und die verdrahtung zum aplication board auch stimmt....

also ich habe folgendes problem:

ich versuche explizit auf die zusätzlichen ausgänge, die ich mir mit hilfe eines Schieberegisters aufgebaut
 habe zuzugreifen...

funktionieren soll es eigentlich alla aufruf wie

prt_bit[0] = 1;
portausgabe(0);

prt_bit[0..7] sollen dabei die zusätzlichen ports darstellen
portausgabe soll ganz einfach nur ein setzen aller ports erzwingen (der int wert ist eigentlich blödsinn, wird
 aber bei umstellung auf einen einzelnen thread für die routine eh wegfallen...

hier nun mal das progrämmchen mit dem ich am experementieren bin...


const clock  = 0;   // P1L0
const data   = 1;   // P1L1
const strobe = 2;   // P1L2

int i;
int prt_bit[7];

/************************************
   Ansteuerung des Schieberegisters
        8 Bit Ausgabe über 4094
************************************/


function portausgabe(int x)
{
 int j;
 ports.set(strobe,0);
 ports.set(clock,0);
 for j=0 ... 7
  {
   if prt_bit[j] !=0 ports.set(data,1);
    else ports.set(data,0);
   ports.pulse(clock);
  }
 ports.pulse(strobe);
 sleep 1;
}


//***************
    thread main
//***************

{
 for i=0 ... 7
    prt_bit[i]=0;
 portausgabe (0);
 loop
  {
    if ports.get(8)  //kommentar
     {
       plm.beep (10);
       sleep 100;
       plm.beep (-1);
       sleep 900;
       prt_bit[0] = 1;
       portausgabe (0);
     }
  }
}


achja, ich habe extra die "unsichere" variante der portausgabe aus deinem buch gewählt, hatte vorher
schon die sicherere, aber die funktionierte auch nicht... und da ich dachte das ich wahrscheinlich
irgendwo nen fehler gemacht habe, habe ich dann auch die erste variante getestet :-)

wäre dankbar wenn jemand meinen fehler finden würde :-) sonst bleibt mir wohl nur der strick *grins*


    Antwort schreiben


Antworten:

Re: Schieberegister (von Tom - 3.08.2004 20:25)
Re: Schieberegister (von Markus Nüsser - 3.08.2004 16:59)