kompan Napisano Październik 12, 2016 Udostępnij Napisano Październik 12, 2016 Witam, Mam problem z uruchomieniem dwóch diód na mikrokontrolerze ZL30ARM. Celem ćwiczenia było zapalenie diod nr 1 i 3 na portach B. (b1, b3 -> d1, d3). #include "stm32f10x.h" int main(void) { GPIO_InitTypeDef GPIO_InitStructure; //deklarujemy strukture do inicjalizacji portu RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); //wlacz taktowanie portu GPIO B GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1 | GPIO_Pin_3; // konfigurujemy piny 1 i 3 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; // jako wyjscia push-pull GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; // z taktowaniem 50MHz GPIO_Init(GPIOB, &GPIO_InitStructure); // inicjalizujemy port GPIO B GPIO_WriteBit(GPIOB,GPIO_Pin_1,Bit_SET); // ustawiamy na 1 pin 1 GPIO_WriteBit(GPIOB,GPIO_Pin_3,Bit_SET); // ustawiamy na 1 pin 3 while(1); // petla nieskonczona zatrzymuje program } Po uruchomieniu kodu, dioda d1 świeci się, natomiast d3 nie. Porty są sprawne, problem tkwi w kodzie. Podobno istnieje do tego specjalna funkcja, której nie mogłem nigdzie znaleźć. Proszę o pomoc. Dziękuję, kompan Cytuj Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Dołącz do dyskusji, napisz odpowiedź!
Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!