Skip to end of banner
Go to start of banner

BOD - Brown Out Detection

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Q

How to make use of the BOD?

A

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

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

The 24V is splitt up by the resistors R1 and R2. If it will drop below 1.14V with an hystresis of 60mV for more than 5μs to 20μs, 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 interupt might be used in case that the supervised voltage was the main power supply to finish critical tasks and close non reentrant contexts.

Q

Is there a driver available?

A

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

Example
#include "Examples.h"
#include "netx_drv.h"

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

voidbodexample(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);
}
  • No labels