- SF800 Solar Speicher Tutorial         
Ergebnis 31 bis 34 von 34

Thema: Für lange Winterabende....

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #19
    Erfahrener Benutzer Roboter Genie Avatar von White_Fox
    Registriert seit
    04.10.2011
    Beiträge
    1.473
    Mein zweites Programm. Dieses Mal wird noch der Button mit einbezogen.
    Die LED wid eingeschaltet, solange der Knopf gedrückt ist.

    Code:
    #include <stdio.h>
    #include <stdlib.h>
    #include <stm32f446xx.h>
    
    void configLed(){
      RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN;      //Taktversorgung Port A
      GPIOA->MODER |= (GPIO_MODER_MODER5_0);    //A5 => Ausgang
      GPIOA->OTYPER &= ~(GPIO_OTYPER_OT_5);     //A5 0> Push-Pull
      GPIOA->PUPDR &= ~(GPIO_PUPDR_PUPDR5);     //A5 ohne Pullup-Pulldown
    }
    
    void configButton(){
      RCC->AHB1ENR |= RCC_AHB1ENR_GPIOCEN;      //Taktversorgung Port C
      GPIOC->MODER |= GPIO_MODER_MODER0_0;      //C13 => Eingang
      GPIOC->PUPDR |= GPIO_PUPDR_PUPDR13_1;     //C13 => Pulldown einschalten
    }
    
    void main(void) {
      configLed();
      configButton();
      printf("Einstellung fertig\n");
    
      while(1){
        if(!(GPIOC->IDR & GPIO_IDR_IDR_13)){
          GPIOA->BSRR |= GPIO_BSRR_BS_5;            //Ausgang A5 setzen
          printf("Knopf gedrückt\n");
        }
        else{
          GPIOA->BSRR |= (GPIO_BSRR_BR_5);          //Ausgang A5 zurücksetzen
          printf("Knopf nicht gedrückt\n");
        }
      }
    }

    Edit:
    Noch eine Frage...gibt es in C eigentlich die Möglichkeit, ein Bit direkt zu kopieren? In Pseudocode ausgedrückt:
    Code:
    PA5 == PC13;
    Sodaß ich mir das If-Statement sparen könnte.
    Geändert von White_Fox (19.06.2016 um 14:19 Uhr)

Ähnliche Themen

  1. Zeichenroutine dauert zu lange
    Von avrrobot im Forum C - Programmierung (GCC u.a.)
    Antworten: 12
    Letzter Beitrag: 08.03.2012, 19:33
  2. Lange Leitung - oder was?
    Von manu418 im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 13.10.2010, 15:09
  3. Lange Leiterbahn abschliessen ?
    Von Mandi Nice im Forum Elektronik
    Antworten: 2
    Letzter Beitrag: 21.06.2008, 22:35
  4. Lange Leitung!
    Von waste im Forum Kopfnüsse / Wissensquiz
    Antworten: 20
    Letzter Beitrag: 10.02.2007, 22:09
  5. Timer für lange Laufzeiten
    Von toetzel im Forum C - Programmierung (GCC u.a.)
    Antworten: 5
    Letzter Beitrag: 20.11.2006, 17:58

Berechtigungen

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

Solar Speicher und Akkus Tests