- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 2 von 2

Thema: 80C167, Timer T5, T6; C-Programmbeispiele

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    18.10.2005
    Beiträge
    23

    80C167, Timer T5, T6; C-Programmbeispiele

    Anzeige

    Praxistest und DIY Projekte
    ich wäre dankbar für ein Paar Programmbeispielen auf Programmiersprache "C" für den Mikrocontroller C167 (oder Familie C166) mit Timer T5, T6-Programmierung. Idealweise (aber nicht nur das, auch allgemein) für die Zeiteinstellung per Timer T5,T6 z.B. für leuchtende LED: 1 sek - leuchtet, 0.5 sek - nicht leuchtet.
    Bedanke mich für sachlichkeit

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.802
    Hier was für T2, T3. Vielleicht gibt's dir ja ne Idee, wie es mit T5, T6 geht...
    Code:
    void timebase_setup (unsigned int ticks)
    {
        unsigned int  prescale = 8;
        unsigned long reload;
        
        reload = (unsigned long) 65536 - F_CPU / (prescale * ticks);
    #if defined (__XC16X__)
        GPT12E_T3CON = 0x0000;          /* Timermode, count up               */
        GPT12E_T2CON = 0x0027;          /* Reloadmode for T3, count up, stop */
        GPT12E_T2    = (unsigned int) reload;   /* Reload for T3             */
        GPT12E_T3IC  = 0x40 | ((2 << 2) | 0);   /* Int Level 2, group 0, enabled */
        SET_SFRBIT(T3R);                 /* Timer 3 run */
    #elif defined(C165)
        T3CON = 0x0000;                  /* Timermode, count up, stop         */
        T2CON = 0x0027;                  /* Reloadmode for T3, count up, stop */
        T2      = (unsigned int) reload; /* Reload for T3                     */
        T3IC  = 0x40 | ((2 << 2) | 0);   /* Int Level 2, group 0, enabled     */
        SET_SFRBIT(T3R);                 /* Timer 3 run                       */
    #else
        T0REL = (unsigned int) reload;
        T0    = (unsigned int) reload;
        T0IC  = 0x40 | ((2 << 2) | 0);   /* Int Level 2, group 0, enabled     */
        SET_SFRBIT(T0R);
    #endif
    }
    Disclaimer: none. Sue me.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress