Skip to main content

Microcontroller Abstraction Layer (MCAL)

MCAL is a software module that directly accesses on-chip MCU peripheral modules and external devices that are mapped to memory, and makes the upper software layer independent of the MCU. Details of the MCAL software module are shown below.

MCAL Block Diagram

AUTOSAR MCAL

Description of MCAL Software Module

Module group Module Explanation
Microcontroller Drivers GPT Driver GPT (General Purpose Timer) Driver
Device driver using on-chip MCU timer
Initializes GPT, performs timer count
WDG Driver WDG (Watchdog) Driver
On-chip WDG device driver
Initializes WDG, performs WDG mode settings, etc.
MCU Driver MCU (Micro Controller Unit) Driver
Device driver that performs MCU settings
Initializes clock, performs power mode settings
Memory Drivers FLS Driver FLS (Flash) Driver
Initializes FLS, reads/writes to FLS memory
Communication Drivers SPI Handler/Driver SPI (Serial Peripheral Interface) Handler/Driver
Device driver for on-chip clock serial function
Initializes SPI, performs SPI input/output and SPI I/O buffer settings
LIN Driver LIN (Local Interconnected network) Driver
Initializes LIN, performs LIN input/output
CAN Driver CAN (Controller Area Network) Driver
Initializes CAN, performs CAN input/output
FlexRay Driver FlexRay Driver
Initializes FlexRay, performs FlexRay input/output
Ethernet Driver Ethernet Driver
Initializes Ethernet Driver, performs Ethernet Driver input/output
I/O Drivers ICU Driver ICU (Input Capture Unit) Driver
Device driver using on-chip MCU timer
Initializes ICU, measures PWM waveforms, etc.
PWM Driver PWM (Pulse Width Modulation) Driver
Device driver using on-chip MCU timer
Initializes PWM, outputs PWM waveforms, etc.
ADC Driver ADC (Analog Digital Converter) Driver
Device driver for on-chip ADC
Initializes ADC, starts/stops AD conversion, sets AD conversion result buffer, reads AD conversion results, etc.
DIO Driver DIO (Digital Input/Output) Driver
MCU port device driver
Performs port signal input/output, etc.
PORT Driver PORT Driver
MCU port device driver
Performs MCU pin settings (I/O, shared functions)