Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Import Macro Repair
Panel
bgColor#ffffff
titleQ

How to make use of the BOD?

Panel
bgColor#ffffff
titleA

The basic circuit (source: technical data reference guide) is shown below.

with With the following values:


Symbol

Min

Typ

Max

Unit

BOD

0


3.6

V

BOD_T

1.11

1.14

1.17

V

BOD_H

47

60

73

mV

BOD_P

5


20

μs

So if the power supply splitt The 24V is split up by the resistors drops between R1 and R2. If it drops below 1.14V as the typical BOD threshold with an hystresis of 60mV for more than maximal 5μs to 20μs with a hysteresis of 60mV, an internal signal is generated.

The usage of this signal will depend on the kind of power supply that was monitored and how it is available inside the system.

In the netX90 the internal signal is bound to a bit of a register in the asic_ctrl and as an interrupt input of the nested vector interrupt controller (NVIC). The generated interrupt might be used in case that the supervised voltage was the main power supply to finish critical tasks and close non-reentrant contexts.

Panel
bgColor#ffffff
titleQ

Does the Communication Side make use of the BOD?

Panel
bgColor#ffffff
titleA

The Communication Side does not use the BOD at the moment.

Panel
bgColor#ffffff
titleQ

Is there a driver available?

Panel
bgColor#ffffff
titleA

The peripheral driver package of the netX90 has an integration of the BOD as an input via the DIO drivers.

Code Block
languagecpp
firstline1
titleExample
#include "Examples.h"
#include "netx_drv.h"

void bodcallback(void* pvDriver, void* pvUser){
  __NOP();
}

void voidbodexamplebodexample(void) {
  // Attach the BOD callback to the bod signal
  (void) DRV_DIO_ChannelIRQAttach(DRV_DIO_ID_BOD,bodcallback,(void*)0xaa55aa55);
  // Issue the interrupt controller to generate the interrupt for testing purposes
  DRV_NVIC_SetPendingIRQ(DRV_BOD_IRQ);
}
Panel
bgColor#ffffff
titleSee also...

Filter by label (Content by label)
showLabelsfalse
spaces@self
showSpacefalse
cqllabel = "faq" and space = currentSpace ( )
labelsfaq