8-bit PIC® MCU Brown-Out Reset

Last modified by Microchip on 2023/11/22 16:31

BOR will hold a PIC® MCU in reset when the Vdd drops below a brown-out threshold voltage. Not all devices have BOR, but most do, and some have multiple voltage thresholds to select from. Between a BOR and Power On Reset the whole range of startup voltages can be covered to protect for proper operation after a power drop at the Vdd line. It is also recommended that the Power-Up Timer (PWRT) be enabled to increase the delay in returning from a BOR event.

The BOR can be set to always on or always off through BOREN bit settings in a configuration register. This is covered in detail further below. The BOR can also be enabled or disabled from the software. This is also covered in the section below.

Brown-Out Reset Options

On enhanced 8-bit devices (part numbers PIC1xF1xxx) the BOR has four operating modes (older devices don't offer all these options). The BOR can be enabled or disabled at programming time through the setting or clearing of the BOREN bits. Once these are set they cannot be changed unless the device is reprogrammed.

  • BOR always on
  • BOR is off when in Sleep mode
  • BOR is controlled by software
  • BOR is always off

The BOR can be enabled with a software override. This allows the software designer to turn the BOR on or off during the running of the application.

For low power applications, the BOR can also be set to automatically disable when the device is put into Low Power Sleep mode.

The BOREN bits options are shown in the accompanying image.

BOREN bits options

Brown-Out Reset Threshold

Brown Out Reset Threshold is the voltage level at which the reset begins. Some devices have multiple BOR thresholds while others have only one. The BOR threshold(s) are defined in the Electrical Characteristics of the device datasheet, listed as the Vbor level.

On released devices, the BOR may have more than one threshold to select from. The BORV bit is used to select the threshold level. The BORV bit is located in a configuration register. An example taken from the PIC16F1713/6 datasheet is shown in the accompanying image.

The BORV bit is located in a configuration register

Brown-Out Reset Control Register (BORCON)

The operation of the BOR can be controlled through the BORCON register for enhanced devices (PIC1xF1xxx).
Bits within the BORCON include:

  • SBOREN bit - Enable or Disable the BOR through software
  • BORFS bit - BOR Fast Start Enable or Disable
  • BORRDY bit - Status bit that indicates if BOR is Active or Inactive.

BORCON register

BORCON bits

SBOREN

The SBOREN bit allows the software to disable the BOR at any point in time as long as the "BOR is controlled by software" was selected in the BOREN bits of the configuration register. This allows the software designer to prevent BOR resets during an operation but still have the option to run the BOR at a later point in the application.

BORFS

The BORFS bit maintains an internal voltage reference that is used by the BOR. Setting the BORFS will keep this voltage reference running even if the BOR is disabled in Sleep mode. This allows a faster BOR capability after powering back up from low power sleep mode. If the BORFS is not set, then the voltage reference is not maintained and the BOR will have to wait for the reference to become stable again before BORs can engage.

BORRDY

This is an indicator flag that the software designer can use to monitor if the BOR has been disabled by the software.