- SF800 Solar Speicher Tutorial         
Ergebnis 21 bis 30 von 32

Thema: SMT32 - Ports konfigurieren, Frage zur C-Syntax

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #29
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    13.01.2014
    Beiträge
    454
    Blog-Einträge
    3
    Wenn du mit den Registern ein Interrupt-Betrieb für Timer2 konfigurierst, wird die Funktion mit dem Namen TIM2_IRQHANDLER 'automatisch' aufgerufen. Also einfach eine Funktion so definieren:
    Code:
    void TIM2_IRQHandler() {
      // mach was... 
    }
    Ausschnitte aus nem alten Projekt von mir mit nem STM32F107:
    Code:
    // ...
    #include  <stm32f10x.h>     // sfr nach keil 
    #include  "STM32F107_rcc.h"   // strukturen der sfr 
    #include  "STM32F107_gpio.h"   // strukturen der sfr 
    #include  "STM32F107_tim.h"   // strukturen der sfr 
    int main() {
      //...
    
     // Timer 2 für Zeitmessung 
       
      #define VORTEILER_TIM2   ((SystemCoreClock / 10000)-1)   // Teilung auf 10 kHz 
      #define TIM2_PRIO     0x10             // höchste Priorität 
      #define TIM2_INTERV    1              // 1ms 
      #define VORLADEWERT_TIM2   (TIM2_INTERV*10 - 1)   
     
      RCCst->APB1ENR.tim2 = 1;   // Takt für Timer 2 freigeben 
      TIM2st->DIER.uie    = 1;   // Freigabe: Überlauf von Zähler löst Interrupt aus 
      TIM2st->CR1.dir     = 1;   // Zähler zählt runter 
      TIM2st->PSC         = VORTEILER_TIM2; 
      TIM2st->ARR         = VORLADEWERT_TIM2; 
      TIM2st->CNT         = VORLADEWERT_TIM2; 
      TIM2st->CR1.cen     = 0;   // Timer 2 Zählfreigabe 
      NVIC->IP[2]         = TIM2_PRIO;  // Priorität  
         
      NVIC->ISER[TIM2_IRQn / 32] = 1 <<(TIM2_IRQn % 32); // ISR für Zeitmessung setzen 
      // ...
    }
    void TIM2_IRQHandler(void)        // wird jede ms aufgerufen  
    { 
      TIM2st->SR.uif = 0; 
      zaehler_ms++; 
    }
    Geändert von Sisor (02.07.2016 um 15:31 Uhr)

Ähnliche Themen

  1. Syntax-Frage -> writeString(char *string)
    Von Furzgas im Forum Robby RP6
    Antworten: 13
    Letzter Beitrag: 31.12.2009, 08:06
  2. Frage zum Ansteuern von Ports/Programmierfrage
    Von Geimel im Forum C - Programmierung (GCC u.a.)
    Antworten: 6
    Letzter Beitrag: 26.01.2007, 22:29
  3. Kurze Syntax Frage
    Von Brantiko im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 9
    Letzter Beitrag: 18.01.2007, 18:58
  4. Frage zum Programmieren der Ports
    Von Geimel im Forum Asuro
    Antworten: 2
    Letzter Beitrag: 07.08.2006, 19:29
  5. kleine Frage zur Syntax
    Von freddy0815 im Forum AVR Hardwarethemen
    Antworten: 2
    Letzter Beitrag: 07.02.2005, 14:19

Berechtigungen

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

12V Akku bauen