problem s STM32L476 - pin PB4 nefunguje jako GPIO

Jan Waclawek konfera na efton.sk
Pondělí Květen 27 12:49:45 CEST 2019


> rozsvitit se mi ji nedari

Ako, priamo zapisom do ODR/BSRR, alebo cez nejake mbedovske volaco?

wek



----- Original Message ---------------


>Zdravim,
> 
>trapim se tu s STM32L476RG...   kdyz to zjednodusim, mam na pin PB4 pripojenou ledku a tu bych potreboval rozsvitit. Kdyz to udelam v Atollic (s naklikanim kodu v cubemx) tak to funguje bezproblemu. problem je, ze ten PB4 je NJTRST in pull-up  a je potreba ho prepnout z te alternating funkce na normalni vystupni pin.   
> 
>nicmene bych to potreboval zprovoznit i v mbed a to se mi nedari (nastavene Nucleo-L476RG). normalni definice pinu na vystup nestaci (DigitalOut ledN(PB_4);).
> 
>zkusil jsem tedy funkci prepnout zapisem do registru (inspirace z cubemx, viz nize)
> 
>RCC->AHB2ENR |= 0x10;              //projistotu zapnout hodiny pro PB
>wait(0.5);
>GPIOB->ODR &= 0xFFFFFFEF;          // PB4 to 0
>GPIOB->PUPDR &= 0xFFFFFCFF;          //no pull ups on PB4
>GPIOB->MODER &= 0xFFFFFDFF;         //set PB4 to general output pin   moder[4][1:0]  '01'
>GPIOB->MODER |= 0x00000100;
>GPIOB->OTYPER &= 0xFFFFFFEF;         //set as pushpull output type - clear PB4 bit
> 
>kdyz hodnotu z registru MODER prectu (vypisem pres UART), dostanu FFD4A57F coz dava na zadane pozici osmeho a devateho bitu 01 coz je GPIO a ne AF. (viz RM0394)
> 
>po startu LEDka slabe sviti diky tomu pull-up co je tam pres NJTRST, pak zhasne, ale rozsvitit se mi ji nedari...
> 
>Nemel by prosim nekdo napad co delam blbe?
> 
>Diky moc
>V.



Další informace o konferenci Hw-list