Initial support for stm32 nucleo-f401re

Signed-off-by: Nunzio Raciti <nunzio.raciti@gmail.com>
nucleo: add UART support in order to manage console Ctrl-X

Also disable UART3 and UART6 (not avaliable on STM32F4x1).

Signed-off-by: Nunzio Raciti <nunzio.raciti@gmail.com>
nucleo: fix ADC support, TIM6 => TIM9

Also disable TIM6,7,8, TIM12,13 and 14 (not avaliable on STM32F4x1).

Signed-off-by: Nunzio Raciti <nunzio.raciti@gmail.com>
nucleo: disable "OTG_HS_WKUP_IRQn" for the F401 chip.

Signed-off-by: Nunzio Raciti <nunzio.raciti@gmail.com>
nucleo: manage the different flash sectors layout.

Signed-off-by: Nunzio Raciti <nunzio.raciti@gmail.com>
nucleo: F401 has not CCM RAM, so reserve 16k of normal RAM.

Because of this, and for the limited amount of flash, the LSF is limited to
48kb (sectors number 1,2 and 3).

Signed-off-by: Nunzio Raciti <nunzio.raciti@gmail.com>
nucleo: manage the inclusion of nucleo/modstmconst.gen.c

Signed-off-by: Nunzio Raciti <nunzio.raciti@gmail.com>
nucleo: add the "MICROPY_ENABLE_USB" define, always (0) for nucleo boards.

Signed-off-by: Nunzio Raciti <nunzio.raciti@gmail.com>