is it possible to get the maple mini to reset itself in case the supply voltage drops too much.
i am reading that brown out is the keyword.
thanks for any advice.
stephan
is it possible to get the maple mini to reset itself in case the supply voltage drops too much.
i am reading that brown out is the keyword.
thanks for any advice.
stephan
From the data sheet
2.3.10 Power supply supervisor
The device has an integrated power-on reset (POR)/power-down reset (PDR) circuitry. It is
always active, and ensures proper operation starting from/down to 2 V. The device remains
in reset mode when VDD is below a specified threshold, VPOR/PDR, without the need for an
external reset circuit.
The device features an embedded programmable voltage detector (PVD) that monitors the
VDD/VDDA power supply and compares it to the VPVD threshold. An interrupt can be
generated when VDD/VDDA drops below the VPVD threshold and/or when VDD/VDDA is higher
than the VPVD threshold. The interrupt service routine can then generate a warning
message and/or put the MCU into a safe state. The PVD is enabled by software.
Refer to Table 11: Embedded reset and power control block characteristics for the values of
VPOR/PDR and VPVD.
thanks for the reply.
i found the section you are quoting here:
http://www.st.com/web/en/resource/technical/document/reference_manual/CD00171190.pdf
unfortunately my knowledge does not go deep enough to be able to covert this in to the right lines of code.
it seems one could set a low and high threshold value and force a reset if the power goes past those thresholds.
in my case i am controlling a bunch of relays and at some point the maple mini enters a strange state where the on board led quickly fades in and out.
obviously i have to re-design my circuit about being able to set the brown out would be great too.
thx
The data sheet clearly states that the CPU gets a reset when the volatage is ~2V. You can not change this reset voltage level. You can set up the CPU to cause an interrupt when a specific level is reached.
The fading LED sounds like the __error() function in util.c. Use a debugger or connect USART1 to find out what causes the problem.
You could also disconnect the relays to check if they cause the problem.
You must log in to post.