Wiec bawie sie w przerabianie STM32 totalnie od poczatku i nie wiem dlaczego utknalem na podstawowej obsludze guzika ( juz nie mowie nawet o drganiach stykow
Wiec najpierw wlaczam sobie obsluge ledow - to dziala bezproblemowo
Kod: Zaznacz cały
// Create GPIO struct
GPIO_InitTypeDef GPIO_InitStructure;
// Configure LED on port 12
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15;
GPIO_InitStructure.GPIO_Speed = GPIO_High_Speed;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
// Initialize the PINs
GPIO_Init(GPIOD, &GPIO_InitStructure);
Pozniej dodaje push button i wlaczam zegary
Kod: Zaznacz cały
/*
* Inicjalizacja pushbuttona
*/
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; // Tutaj podlaczony jest push button w discovery
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;
GPIO_InitStructure.GPIO_Speed = GPIO_High_Speed;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
// Initialize the PINs
GPIO_Init(GPIOA, &GPIO_InitStructure);
// Enable clock
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD, ENABLE);
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);
No i nastepnie w petli glownej :
Kod: Zaznacz cały
// odczytaj wartosc bitu
uint32_t ccc = GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_0);
if (ccc)
{
// zrob cos ....
}
No i niestety nie odpala mi sie warunek tak jakby moj klawisz nigdy nie byl nacisniety ? Ktos widzi jakiegos wielkiego babola tutaj moze ?
