BE_VOILIER/CantoOrvikPilotes/Source/Nucleo.c

31 lines
969 B
C

#include "stm32f10x.h"
void ConfigHorloge(void) { // Peut-être redondant ??
RCC->APB2ENR |= (0x01 << 2) | (0x01 << 3) | (0x01 << 4) | RCC_APB2ENR_IOPCEN | RCC_APB2ENR_TIM1EN;
};
void ConfigBroche(void){ //
//Mettre Broche 5 GPIOA à output push-pull
GPIOA ->CRL &= ~(0x1 << (5*4 + 2)); //0x44144444;
GPIOA ->CRL |= (0x1 << 5*4); //0x44144444;
//Mettre Broche 5 sur input Pull-up/down
GPIOA ->CRH &= ~(0x1 << (4 + 2));
GPIOA ->CRH |= (0x1 << (4 + 3));
//Mettre broche 8 sur GPIOA à output open drain
GPIOA ->CRH |= (0x1 );
};
int BoutonAppuye(void){ // Peut être modifié avec ChercherEtat
return((GPIOA -> IDR & (0x01 << 9)));
}
void AllumerLED(void){
GPIOA -> ODR &= ~(0x1 << 8); // Peut être modifié avec SetBroche
}
void EteindreLED(void){
GPIOA -> ODR |= (0x1 << 8); // Peut être modifié avec ResetBroche
}
void TogglePin(GPIO_TypeDef*GPIO, int Broche){ // Redondant
GPIO -> ODR = GPIO -> ODR ^ (0x1 << Broche);
}