stm32 - Activating DFU (USB programming) on STM32F303 -


i building board based on stm32f303ret6.

the processor datasheet, page 17/section 3.5, mentions programming can done "using usart1 (pa9/pa10), usart2 (pa2/pa3) or usb (pa11/pa12) through dfu (device firmware upgrade)"

i using nucleo board processor.

i have connected vdd, gnd, d+ , d- pins of usb nucleo board , disabled power add-on programmer board.

however whenever reboot boot0 high usb never enumerates device. connecting pins directly usb plug without external resistor. datasheet seems suggest these not needed.

to make things bit trickier, processor has additional particularity of not having boot1 pin; software bit.

my question is, processor support dfu using built in bootloader? if so, how should 1 go starting , programming via usb?

thank much, pedro.

ps: st has got conflicting information support usb programming on processor. while datasheet says it's supported, application note an2606, page 81 (section 19) mentions support programming via usart1, usart 2 , i2c. references usarts it's unclear how can used.

i have connected vdd, gnd, d+ , d- pins of usb nucleo board , disabled power add-on programmer board.

check actual voltage , current on vdd. host might limit current, or shut port down when consumption exceeds 100ma before enumeration. try external power supply.

i connecting pins directly usb plug without external resistor.

you need 1.5k pullup on d+ (full speed) or d- (low speed). stm32f3 discovery schematics (that's otg socket, ignore id line regular 4-wire ports)

enter image description here

when there no pullup, host can't detect when device plugged in, , therefore won't enumerate it.

st has got conflicting information support usb programming on processor. while datasheet says it's supported, application note an2606, page 81 (section 19) mentions support programming via usart1, usart 2 , i2c.

there no conflicting information there. section 19 on page 81 refers other controllers.

the capabilities of stm32f303ret6 listed in table 36, section 18.1 on page 77. (as i've pointed out.) see table 3 on page 23, line stm32f302xd(e)/303xd(e).


Comments

Popular posts from this blog

ZeroMQ on Windows, with Qt Creator -

unity3d - Unity SceneManager.LoadScene quits application -

python - Error while using APScheduler: 'NoneType' object has no attribute 'now' -