-
Notifications
You must be signed in to change notification settings - Fork 1k
UART7 causes Nucleo F091RC to lock up #260
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Hi, I will check next week with a F091. Edit: It is well USART7. |
Is that something I can easily change and try or is it quite involved? |
I tried UART3 - UART8 and got the same problem. Only UART1 and UART2 work for me. |
F091 is a bit specific for UART. Arduino_Core_STM32/cores/arduino/stm32/uart.c Line 779 in 2229039
Maybe you can try comment here: Arduino_Core_STM32/cores/arduino/stm32/uart.c Line 796 in 2229039
this test: |
This works for all but UART6 and only works for one UART at a time. If I comment more that one of those tests, only the last UART works. |
Ok thanks for the test. I will test and try to fix it for the next release. |
Hi, @TT-ZX This set of registers is implemented only on STM32F09x to collect all pending interrupt sources associated with each interrupt line into a single register. I've tested also with several USART in the same sketch:
|
__HAL_GET_PENDING_IT() read IT line status in SYSCFG register which required to be clocked. This set of registers is implemented only on STM32F09x to collect all pending interrupt sources associated with each interrupt line into a single register. This allows users to check by single read which peripheral requires service in case more than one source is associated to the interrupt line. Fix stm32duino#260 Signed-off-by: Frederic Pillon <[email protected]>
__HAL_GET_PENDING_IT() read IT line status in SYSCFG register which required to be clocked. This set of registers is implemented only on STM32F09x to collect all pending interrupt sources associated with each interrupt line into a single register. This allows users to check by single read which peripheral requires service in case more than one source is associated to the interrupt line. Fix stm32duino#260 Signed-off-by: Frederic Pillon <[email protected]>
__HAL_GET_PENDING_IT() read IT line status in SYSCFG register which required to be clocked. This set of registers is implemented only on STM32F09x to collect all pending interrupt sources associated with each interrupt line into a single register. This allows users to check by single read which peripheral requires service in case more than one source is associated to the interrupt line. Fix stm32duino#260 Signed-off-by: Frederic Pillon <[email protected]>
When I try to use Serial.print over UART7 on the Nucleo F091RC the MCU locks up.
Here is the code to demonstrate the issue:
The LED will turn on and stay on. Nothing is received from UART7
I am using V1.2.0 of STM32 Cores. I've tried earlier version but the result is the same. I am using version 1.8.5 of the Arduino IDE on Gentoo.
Can anyone else confirm this issue or know of a work around?
Thanks,
Justin
The text was updated successfully, but these errors were encountered: