2024-10-10 07:11 AM - last edited on 2024-10-10 08:15 AM by SofLit
Hi, I am trying to program a STM32L552ZEQ to use HSE instead of the default clock, but I am doing something wrong.
I attach the reference manual, as well as the user manual for my specific board. In the user manual, on page 24, it is stated that there is a HSE with 16 MHz clock frequency. I try to enable this by setting the HSEBYP and HSEON bits in `RCC->CR`, like so
```
```
Using GDB I observe the change to the register value happening as expected. After setting it, I am waiting for the hardware to set the HSERDY bit, indicating that everything went OK. But this bit is never set. I never seem to get out of this while-loop. I observe the bit not being set using e.g. GDB.
I looked at the reference manual and saw that MCO is fed to OSC_IN, which seems correct.
I then thought that it appears as if the MCO can be connected to several different sources, one of which being the HSE. I look at the reference manual, and find this
I modify my code to configure MCOSEL to have the value `0100`, to indicate that we should output the HSE to the MCO pin. I am using the CMSIS header files to access the correct addresses, and it seems as if the define for MCOSEL_2 carries the right value (4).
```
// the define is in the CMSIS header-file, but I paste it here for clarity
2024-10-10 08:26 AM
ST does not connect the MCO on some Nucleos such as L4 and L5, likely to allow lowest possible power consumption.
2024-10-10 09:45 AM
I am sure that I can find a colleague at work to help me solder. I can see the empty hole for PH0, e.g., but it is not clear to me from reading the user manual from where I can fetch ST-LINK MCO. What physical modifications do I need to do? I would love to learn how I can decode this from the two documents.
Thanks,
Robert
2024-10-10 09:58 AM - edited 2024-10-10 10:01 AM
@krook wrote:it is not clear to me from reading the user manual from where I can fetch ST-LINK MCO. What physical modifications do I need to do?
From the extract @Chris21 posted, these are the settings you need:
"Off" means that there is no connection across the solder bridge - the bridge is open;
"On" means that there is a connection across the solder bridge - the bridge is closed.
(look like they forgot that this is just a solder bridge and not a jumper link - where the jumper would be literally on the pins, or off them)
PS:
https://community.st.com/t5/stm32-mcus-products/docmentation-of-solder-bridges/m-p/689362
2024-10-10 10:24 AM
Where ST's default SB is On, you will find a zero ohm resistor across the bridge; these can be a little annoying to remove unless you have good soldering equipment / skills.
Here they say to remove SB142, but it looks like that may not really be necessary.