AVR SD Safety Framework 1.0.0
Loading...
Searching...
No Matches
Driver Layer

Contains simple Drivers to specific hardware peripherals and modules for register access. More...

Topics

 BODCTRL Driver
 Contains API prototypes for the BODCTRL (Brown-out Detector Control) driver.
 CCP Utility Driver
 Contains assembly API prototypes for the CCP (Configuration Change Protection) utility driver.
 CLKCTRL Driver
 Contains API prototypes for the CLKCTRL (Clock Controller) driver.
 CPUCTRL Driver
 Contains API prototypes for the CPUCTRL (CPU Control) driver.
 CPUINT Driver
 Contains API prototypes for the CPUINT (CPU Interrupt Controller) driver.
 CRCSCAN Driver
 Contains API prototypes for the CRCSCAN (Cyclic Redundancy Check Memory Scan) driver.
 ERRCTRL Driver
 Contains API prototypes for the ERRCTRL (Error Controller) driver.
 GPR Driver
 Contains API prototypes for the GPR (General Purpose Registers) driver.
 NVMCTRL Driver
 Contains API prototypes for the NVMCTRL (Nonvolatile Memory Controller) driver.
 RAMCTRL Driver
 Contains API prototypes for the RAMCTRL (RAM Controller) driver.
 RSTCTRL Driver
 Contains API prototypes for the RSTCTRL (Reset Controller) driver.
 SLPCTRL Driver
 Contains API prototypes for the SLPCTRL (Sleep Controller) driver.
 SWDT Driver
 Contains API prototypes for the SWDT (Synchronous Watchdog Timer) driver.
 WDT Driver
 Contains API prototypes for the WDT (Watchdog Timer) driver.

Detailed Description

Contains simple Drivers to specific hardware peripherals and modules for register access.

The Driver layer is the lowest software layer, and is the sole layer permitted to interact directly with the device hardware peripheral/module Special Function Registers (SFRs). They perform single, straightforward register operations without intrinsic validation or complex logic. The responsibility for ensuring correct usage and sequence of these operations lies with the Middleware Layer, which builds upon these basic actions to create more comprehensive functionalities. The Driver Layer is mainly included to allow encapsulation of each register access in a function to not require hardware-in-the-loop (HIL) unit testing of the Middleware layer during development.

UML Component Diagrams

UML Activity Diagrams
Every driver API follows one of the following template implementation patterns: