C Routine um Bit Stream in Manchetser Code zu codieren

Gast #371843
Lesenswert?

Was so ca zu tun ist habe ich auf jeden FAll verstanden. Nur die Timer
versteh ich nicht so ganz. Ich brauche einmal 256us high Pegel an einem
Pin und dann 256us Low Pegel für eine 1. Für eine null genau umgekehrt.
Dann das nächste Bit Wie sag ich das den Timern das sie den
Programmablauf genau um diese Zeit verzögern???

void TransmitData(Bit)
{
  int i;

  T1CON = 0x09;      // Timer 1 einstellen

  if(Bit == 1)
  {
    for(i = 0; i < 5000; i++)
    {
      RB5 = 1;
    }

    for(i=0;i<5000;i++)
    {
      RB5 = 0;
    }
  }
  else
  {
    for(i=0;i<5000;i++)
    {
      RB5 = 0;
    }

    for(i=0;i<5000;i++)
    {
      RB5 = 1;
    }
  }
}

Habs erst mal so gemacht das es überhaupt verzögert. Will aber nicht so
richtig.

Grss Basti...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren