07-14-2017, 03:23 PM
Imam jedno jako glupo pitanje, nešto me zeza a ne vidim šta, do danas radilo sve kako treba, a sad neće:
Znači običan kod koji treba da upali LED na PC13 (integrisan na Blue Pill). Postavio pinove na izlaz, push-pull, 2Mhz, ali mi kolo radi invertovano. Za ovaj while(1), dioda ne svetli, a kada se umesto 1<<13 stavi 1<<29, dioda svetli. Šta je problem?
Ja sam ubeđen da je ovo radilo kako treba juče, zar ne bi trebalo da se u prvih 16bit setuje vrednost, a u drugi 16 vrši reset?
Evo isečka iz reference manual-a vezanog za CRH:
A evo i BSRR:
Code:
int main() {
//enable clock GPIOB & GPIOC
RCC->APB2ENR |= ((1<<4) | (1<<3));
//initialize GPIOC_pin13 as OUTPUT PP at 2MHZ
GPIOC->CRH |= ((1<<21));
GPIOC->CRH &= ~(1<<20);
GPIOC->CRH &= ~((1<<22) | (1<<23));
while(1) {
GPIOC->BSRR = (1<<13);
}
}
Ja sam ubeđen da je ovo radilo kako treba juče, zar ne bi trebalo da se u prvih 16bit setuje vrednost, a u drugi 16 vrši reset?
Evo isečka iz reference manual-a vezanog za CRH:
A evo i BSRR: