Back to Blog
Stm32 nucleo 1447/27/2023 8- to 14-bit camera interface up to 32 MHz (black and white) or 10 MHz (color).3x SPIs (5x SPIs with the dual OctoSPI). 2x operational amplifiers with built-in PGA.2x 12-bit DAC, low-power sample and hold.12-bit ADC 5 Msps, up to 16-bit with hardware oversampling, 200 μA/Msps.4x digital filters for sigma delta modulator.External memory interface for static memories supporting SRAM, PSRAM, NOR, NAND and FRAM memories.Up to 136 fast I/Os, most 5 V-tolerant, up to 14 I/Os with independent supply down to 1.08 V.16x timers: 2 x 16-bit advanced motor-control, 2 x 32-bit and 5 x 16-bit general purpose, * 2x 16-bit basic, 2x low-power 16-bit timers (available in Stop mode), 2x watchdogs, SysTick timer.MIPI® DSI Host controller with two DSI lanes running at up to 500 Mbits/s each.Chrom-GRC™ (GFXMMU) allowing up to 20% of graphic resources optimization.Chrom-ART Accelerator™ (DMA2D) for enhanced graphic content creation.Up to 24 capacitive sensing channels: support touchkey, linear and rotary touch sensors.RTC with HW calendar, alarms and calibration.The STM32 Nucleo-144 board does not require any separate probe, as it integrates the ST-LINK/V2-1 debugger/programmer and it comes with the STM32 comprehensive software HAL library, together with various packaged software examples,, as well as a direct access to the ARM®mbed™online resources. The ST Zio connector, which is an extension of Arduino™ Uno V3, provides access to more peripherals and ST morpho headers make it easy to expand the functionality of the Nucleo open development platform with a wide choice of specialized shields. Is there something under the mbed hood that is stepping on my register accesses? I see this behavior for both GPIOB and GPIOC, but GPIOD behaves as expected.The STM32 Nucleo-144 board provides an affordable and flexible way for users to try out new concepts and build prototypes with the STM32 microcontroller, choosing from the various combinations of performance, power consumption and features. If I use the already configured GPIOB->MODER for the register references, the extra processor time spend doing the redirection actually allows the register to revert before the first read completes, so I never see the written value stick. When I hard code the register address, the write takes effect, but after a short time, the register reverts back to it's reset value. It appears that the HAL headers are not he problem. It doesn't appear that any ports have their configuration locked. I get the same behavior on both an F746 Nucleo and an F446 Nucleo board that I tested. For now, I'm just going to make my own HAL header file for the GPIO registers, but this seems like it should be addressed(pun intended). This leads me to believe something is amiss in the HAL stack. If I remove HAL abstractions and "poke" the register directly in this way: In fact all of the other PORTB-> registers (OTYPER, OSPEEDR, PUPDR) all return 0x00000280, which is not correct. For example, setting PORTB->MODER has no effect and the value remains at 0x00000280(the reset value). I'm moving from the platform agnostic DigitalIN, DigitalOut, PortIn, PortOut to STMicro port specific references such as PORTB->MODER.įor some ports, my GPIO initialization and use of GPIOs works(Port D seems to work correctly), but PORTB and PORTC are not working with the HAL abstractions. I'm trying to remove MBED generalized HAL abstractions from my STMicro Nucleo-144 board based project and am getting strange behavior. Nucleo 144 boards and GPIO HAL - Not all ports work To start a new conversationĥ years, 8 months ago. Important changes to forums and questionsĪll forums and questions are now archived.
0 Comments
Read More
Leave a Reply. |