S32K1xx Automotive MCU course
- Home
- S32K1xx Automotive MCU course
Objective: What in this course
- To learn about peripherals of microcontroller and how to use them via Hardware Abstraction Layers software stack of microcontroller.
- To relate and understand register level of Microcontroller peripheral’s and see which HAL API’s effect which registers of MCU Peripherals.
- To understand specs and explore different features of the Microcontroller peripherals by understanding their application.
- Peripherals of MCU: Clock, GPIO, UART, I2C, SPI, TIMERS, ADC, Interrupts, DMA.
Motive : Why this course
- Gonna make your strong foundation for
For whom is this course
- College Students
- Working Professionals
- R&D `
PreRequite
- Familiarity with S32K Microcontrollers and their toolchains (S32 Design Studio).
- Understanding of different software stacks of microcontroller (Bare metal programming and HAL).
- Microcontroller Block Diagram.
- Elecronicsv2 debugger
- ProBug Debugger
Detail Curriculum
Clock
GPIO
UART
SPI
I2C
ADC
TIMER
DMA
Interrupts
Clock
Tab Content
GPIO
- GPIO Peripheral Theory Understanding.
- GPIO and PORT peripheral overview in S32K1xx: Pins description, ports description and feature explanation of GPIO and PORT peripheral.
- How to configure GPIO peripheral in S32 Design Studio. GUI configuration for GPIO.
- GPIO and PORT peripheral Hardware abstraction Layer SDK Explanation: Explanation of how GPIO HAL SDK API’s to be used, what parameters to send and how to use different HAL API’s.
- GPIO and PORT peripheral register relation with HAL SDK API’s: Explanation of Which registers to monitor with which HAL SDK API’s
- GPIO and PORT peripheral use case demos (Via polling, Interrupts and DMA configuration). Also showing signals on multimeter and logic analyzer
- Single Button, LED ON-OFF
- Pull-up and Pull-down configuration Button LED examples
- Keypad Module Interfacing via GPIO Peripheral
Via the examples concept of Bit Shifting and Bit Manipulation will also be Made to understand and learnt.
UART
- UART Peripheral Theory Understanding (LPUART).
- What is UART Communication protocol?
- How is it used in microcontroller’s: Introduction on UART Peripheral (How UART protocol is used in microcontroller)
- Specifications and features of UART peripheral in Microcontrollers (Pins, signals, baud rate and etc.)
- Use cases and applications of UART Peripheral. (Why UART Protocol)
- LPUART peripheral overview in S32K1xx
- Block Diagram, Pins description, ports description and feature explanation of LPUART peripheral.
- Difference between LPUART and UART.
- LPUART specs in S32K1xx (number of pins, port of LPUART in S32K1xx).
- LPUART features explanation in S32K1xx (Interrupts, DMA, data modes and etc.)
- LPUART block diagram explanation in S32K1xx.
- How to configure LPUART peripheral in S32 Design Studio
- GUI configuration for LPUART.
- How to use LPUART peripheral (Explanation from software point of view).
- Things required to program LPUART peripheral of microcontroller. (IDE, SDK and etc.)
- How to configure LPUART peripheral of microcontroller via GUI interface (What steps to follow in which chronology)
- Explanation of GUI sections for configuring LPUART peripheral
- Code Generation part for LPUART peripheral via GUI.
- LPUART peripheral Hardware Abstraction Layer (HAL) SDK Explanation
- Explanation of how LPUART HAL SDK API’s to be used, what parameters to send and how to use different HAL API’s.
- Understanding of LPUART API’s (), which to use and their file structure.
- Understanding of function parameters, structures and return types which are used in LPUART APIs.
- Chronology in which LPUART API’s () to be used.
- Internal Flow of LPUART APIs from HAL to register level.
- LPUART peripheral register relation with HAL SDK API’s
- Explanation of Which registers to monitor with which HAL SDK API’s.
- LPUART Peripheral Registers understanding with respect to HAL SDK API’s
- Understanding of which LPUART Status registers and configuration registers to monitor with HAL SDK API’s
- LPUART Interrupt/DMA configuration registers
- Debugging of LPUART Api’s with respect to peripheral registers getting change.
- LPUART peripheral use case demos (Via polling, Interrupts and DMA configuration). Also showing signals on logic analyzer:
- LPUART Debugging via Screen Terminal (FTDI Connector): Via this example concept of how to transmit and receive data in LPUART peripheral would be explored
- Printing of different number formats (Hex, Binary, Decimal, Octal and ASCII): Via this example concept of number system in microcontroller would also be explored
- ESP8266 Wi-Fi module via AT Commands (UART Ring Buffer Implementation): Via this example concept of how to interface IoT modules with S32K1xx would be explored.
- Working of LPUART peripheral and how to use in S32K1xx MCU. In addition, too that concept of number system in microcontroller and implementation of ring buffer to connect different IoT modules.
- LPUART Peripheral feature and capabilities exploration:
- Exploration of different data modes in LPUART peripheral: Data Mode, Loop Mode, Idle length and single wire mode.
- Exploration of infrared IrDa interface feature to send and receive infrared signals via LPUART.
- LIN protocol via UART
SPI
- SPI Peripheral Theory Understanding.
- What is SPI Communication protocol?
- How is it used in microcontroller’s: Introduction on SPI Peripheral (How SPI protocol is used in microcontroller)
- Specifications and features of SPI peripheral in Microcontrollers (Pins, signals, baud rate and etc.)
- Use cases and applications of SPI Peripheral. (Why SPI Protocol)
- LPSPI peripheral overview in S32K1xx
- Block Diagram, Pins description, ports description and feature explanation of LPSPI peripheral.
- Difference between LPSPI and SPI.
- LPSPI specs in S32K1xx (number of pins, port of LPSPI in S32K1xx).
- LPSPI features explanation in S32K1xx (Interrupts, DMA, data modes and etc.)
- LPSPI block diagram explanation in S32K1xx.
- How to configure LPSPI peripheral in S32 Design Studio.
- GUI configuration for LPSPI.
- How to use LPSPI peripheral (Explanation from software point of view).
- Things required to program LPSPI peripheral of microcontroller. (IDE, SDK and etc.)
- How to configure LPSPI peripheral of microcontroller via GUI interface (What steps to follow in which chronology)
- Explanation of GUI sections for configuring LPSPI peripheral
- Code Generation part for LPSPI peripheral via GUI.
- LPSPI peripheral Hardware Abstraction Layer (HAL) SDK Explanation
- Explanation of how LPSPI HAL SDK API’s to be used, what parameters to send and how to use different HAL API’s.
- Understanding of LPSPI API’s (), which to use and their file structure.
- Understanding of function parameters, structures and return types which are used in LPSPI APIs.
- Chronology in which LPSPI API’s () to be used.
- Internal Flow of LPSPI APIs from HAL to register level.
- LPSPI peripheral register relation with HAL SDK API’s.
- Explanation of Which registers to monitor with which HAL SDK API’s.
- LPSPI Peripheral Registers understanding with respect to HAL SDK API’s
- Understanding of which LPSPI Status registers and configuration registers to monitor with HAL SDK API’s
- LPSPI Interrupt/DMA configuration registers
- Debugging of LPSPI Api’s with respect to peripheral registers getting change.
- LPSPI peripheral use case demos (Via polling, Interrupts and DMA configuration). Also showing signals on logic analyzer:
- LPSPI Master -Slave demo between 2 elecronicsv2 development boards
- Showcase of LPSPI Arbitration concept
- LPSPI master-slave different combinations demo codes.
- SPI Peripheral interfacing of NRF24L01 RF transceiver IC showing different capabilities of LPSPI and how to use LPSPI peripheral for sensor/module interfacing.
I2C
- I2C Peripheral Theory Understanding ().
- What is I2C Communication protocol?
- How is it used in microcontroller’s: Introduction on I2C Peripheral (How I2C protocol is used in microcontroller)
- Specifications and features of I2C peripheral in Microcontrollers (Pins, signals, baud rate and etc.)
- Use cases and applications of I2C Peripheral. (Why I2C Protocol)
- LPI2C peripheral overview in S32K1xx
- Block Diagram, Pins description, ports description and feature explanation of LPI2C peripheral.
- Difference between LPI2C and I2C.
- LPI2C specs in S32K1xx (number of pins, port of LPI2C in S32K1xx).
- LPI2C features explanation in S32K1xx (Interrupts, DMA, data modes and etc.)
- LPI2C block diagram explanation in S32K1xx.
- How to configure LPI2C peripheral in S32 Design Studio.
- GUI configuration for LPI2C.
- How to use LPI2C peripheral (Explanation from software point of view).
- Things required to program LPI2C peripheral of microcontroller. (IDE, SDK and etc.)
- How to configure LPI2C peripheral of microcontroller via GUI interface (What steps to follow in which chronology)
- Explanation of GUI sections for configuring LPI2C peripheral
- Code Generation part for LPI2C peripheral via GUI.
- LPI2C peripheral Hardware Abstraction Layer (HAL) SDK Explanation
- Explanation of how LPI2C HAL SDK API’s to be used, what parameters to send and how to use different HAL API’s.
- Understanding of LPI2C API’s (), which to use and their file structure.
- Understanding of function parameters, structures and return types which are used in LPI2C APIs.
- Chronology in which LPI2C API’s () to be used.
- Internal Flow of LPI2C APIs from HAL to register level.
- LPI2C peripheral register relation with HAL SDK API’s
- Explanation of Which registers to monitor with which HAL SDK API’s.
- LPI2C Peripheral Registers understanding with respect to HAL SDK API’s
- Understanding of which LPI2C Status registers and configuration registers to monitor with HAL SDK API’s
- LPI2C Interrupt/DMA configuration registers
- Debugging of LPI2C Api’s with respect to peripheral registers getting change.
- LPI2C peripheral use case demos (Via polling, Interrupts and DMA configuration). Also showing signals on logic analyzer
- LPI2C Master -Slave demo between 2 elecronicsv2 development boards
- Showcase of LPI2C Arbitration concept
- LPI2C master-slave different combinations demo codes.
- I2C Peripheral interfacing of Bosch IMU Sensor showing different capabilities of LPI2C and how to use LPI2C peripheral for sensor/module interfacing.
ADC
- ADC Peripheral Theory Understanding ().
- What is ADC in electronics?
- How is it used in microcontroller’s: Introduction on ADC Peripheral (How ADC protocol is used in microcontroller)
- Specifications and features of ADC peripheral in Microcontrollers (Pins, concept of channels, pins, resolution, reference voltages and etc)
- Use cases and applications of ADC Peripheral. (Why ADC)
- ADC peripheral overview in S32K1xx
- Block Diagram, Pins description, ports description and feature explanation of ADC peripheral.
- ADC specs in S32K1xx (number of pins, channels of ADC in S32K1xx).
- ADC features explanation in S32K1xx (Interrupts, DMA, trigger modes, sampling configurations and etc.)
- ADC block diagram explanation in S32K1xx.
- ADC Trigger configuration and feature explanation.
- ADC Conversion control feature in S32K144
- ADC calibration and Automatic compare functions.
- How to configure ADC peripheral in S32 Design Studio
- GUI configuration for ADC.
- How to use ADC peripheral (Explanation from software point of view).
- Things required to program ADC peripheral of microcontroller. (IDE, SDK and etc.)
- How to configure ADC peripheral of microcontroller via GUI interface (What steps to follow in which chronology)
- Explanation of GUI sections for configuring ADC peripheral
- Code Generation part for ADC peripheral via GUI.
- ADC peripheral Hardware Abstraction Layer (HAL) SDK Explanation
- Explanation of how ADC HAL SDK API’s to be used for its different features, what parameters to send and how to use different HAL API’s.
- Understanding of ADC API’s (), which to use and their file structure.
- Understanding of function parameters, structures and return types which are used in ADC APIs.
- Chronology in which ADC API’s () to be used.
- Internal Flow of ADC APIs from HAL to register level.
- ADC peripheral register relation with HAL SDK API’s: Explanation of Which registers to monitor with which HAL SDK API’s.
- ADC Peripheral Registers understanding with respect to HAL SDK API’s
- Understanding of which ADC Status registers and configuration registers to monitor with HAL SDK API’s
- ADC Interrupt/DMA configuration registers
- Debugging of ADC Api’s with respect to peripheral registers getting change.
- ADC peripheral use case demos (Via polling, Interrupts and DMA configuration). Also showing signals on oscillscope
- ADC single channel demo
- ADC multiple channel democodes
- ADC demo codes for showing Sampling techniques and compare function working.
- ADC demo codes showing trigger selection and configuration features.
- DC Current sensor and battery charging IC’s interfacing via ADC peripheral
TIMER
- ADC Peripheral Theory Understanding ().
- What is ADC in electronics?
- How is it used in microcontroller’s: Introduction on ADC Peripheral (How ADC protocol is used in microcontroller)
- Specifications and features of ADC peripheral in Microcontrollers (Pins, concept of channels, pins, resolution, reference voltages and etc)
- Use cases and applications of ADC Peripheral. (Why ADC)
- ADC peripheral overview in S32K1xx
- Block Diagram, Pins description, ports description and feature explanation of ADC peripheral.
- ADC specs in S32K1xx (number of pins, channels of ADC in S32K1xx).
- ADC features explanation in S32K1xx (Interrupts, DMA, trigger modes, sampling configurations and etc.)
- ADC block diagram explanation in S32K1xx.
- ADC Trigger configuration and feature explanation.
- ADC Conversion control feature in S32K144
- ADC calibration and Automatic compare functions.
- How to configure ADC peripheral in S32 Design Studio
- GUI configuration for ADC.
- How to use ADC peripheral (Explanation from software point of view).
- Things required to program ADC peripheral of microcontroller. (IDE, SDK and etc.)
- How to configure ADC peripheral of microcontroller via GUI interface (What steps to follow in which chronology)
- Explanation of GUI sections for configuring ADC peripheral
- Code Generation part for ADC peripheral via GUI.
- ADC peripheral Hardware Abstraction Layer (HAL) SDK Explanation
- Explanation of how ADC HAL SDK API’s to be used for its different features, what parameters to send and how to use different HAL API’s.
- Understanding of ADC API’s (), which to use and their file structure.
- Understanding of function parameters, structures and return types which are used in ADC APIs.
- Chronology in which ADC API’s () to be used.
- Internal Flow of ADC APIs from HAL to register level.
- ADC peripheral register relation with HAL SDK API’s: Explanation of Which registers to monitor with which HAL SDK API’s.
- ADC Peripheral Registers understanding with respect to HAL SDK API’s
- Understanding of which ADC Status registers and configuration registers to monitor with HAL SDK API’s
- ADC Interrupt/DMA configuration registers
- Debugging of ADC Api’s with respect to peripheral registers getting change.
- ADC peripheral use case demos (Via polling, Interrupts and DMA configuration). Also showing signals on oscillscope
- ADC single channel demo
- ADC multiple channel democodes
- ADC demo codes for showing Sampling techniques and compare function working.
- ADC demo codes showing trigger selection and configuration features.
- DC Current sensor and battery charging IC’s interfacing via ADC peripheral
DMA
- DMA Peripheral Theory Understanding ().
- What is DMAin electronics?
- How is it used in microcontroller’s: Introduction on DMA Peripheral (How DMA protocol is used in microcontroller)
- Specifications and features of DMA peripheral in Microcontrollers (no of channels, transfer mechnaishms, cpu bus connection and etc)
- Use cases and applications of DMA Peripheral. (Why DMA)
- DMA and EdDMA peripheral overview in S32K1xx
- Block Diagram, channel’s, sources, feature explanation of DMA and EDMA(Enhanced DMA) peripheral.
- DMA and EDMA specs in S32K1xx (number of pins, channels of DMA/EDMA in S32K1xx).
- DMA and EDMA features explanation (Trigger/transfer mechanism, channels, peripherals supported and etc)
- DMA and EDMA block diagram explanation in S32K1xx.
- Initialisation and configuration of DMA and EDMA channels for different peripheral
- How to configure DMA/EDMA peripheral in S32 Design Studio
- GUI configuration for DMA/EDMA
- How to use DMA/EDMA peripheral (Explanation from software point of view).
- Things required to program DMA/EDMA peripheral of microcontroller. (IDE, SDK and etc.)
- How to configure DMA/EDMA peripheral of microcontroller via GUI interface (What steps to follow in which chronology)
- Explanation of GUI sections for configuring DMA/EDMA peripheral
- Code Generation part for DMA/EDMA peripheral via GUI.
- DMA/EDMA peripheral Hardware Abstraction Layer (HAL) SDK Explanation
- Explanation of how DMA/EDMA HAL SDK API’s to be used for its different features, what parameters to send and how to use different HAL API’s.
- Understanding of DMA/EDMA API’s (), which to use and their file structure.
- Understanding of function parameters, structures and return types which are used in DMA/EDMA APIs.
- Chronology in which DMA/EDMA API’s () to be used.
- Internal Flow of DMA/EDMA APIs from HAL to register level.
- DMA/EDMA peripheral register relation with HAL SDK API’s
- Explanation of Which registers to monitor with which HAL SDK API’s.
- DMA/EDMA Peripheral Registers understanding with respect to HAL SDK API’s
- Understanding of which DMA/EDMA Status registers and configuration registers to monitor with HAL SDK API’s
- DMA/EDMA Interrupt/DMA configuration registers
- Debugging of DMA/EDMA Api’s with respect to peripheral registers getting change.
- DMA/EDMA peripheral use case demos (Via UART, I2C, SPI, ADC and TIMER). Also showing memory transfer on memory addresses
- DMA basic configuration and demo code (data transfer) with listed peripherals
- EDMA/DMA feature explanation demo codes for corresponding peripherals
Interrupts
- Interrupts Peripheral Theory Understanding ().
- What are Interrupts.
- How is it used in microcontroller’s: Introduction on NVIC Peripheral (How NVIC peripheral is used in microcontroller).
- Specifications and features of NVIC peripheral in ARM Cortex.
- Use cases and applications of Interrupts Peripheral.
- Interrupts/NVIC peripheral overview in S32K1xx
- Interrupt Vector Table (IVT) understanding and
- Interrupt specs in S32K1xx (number of pins, channels of DMA/EDMA in S32K1xx).
- Interrupt features explanation (Trigger/transfer mechanism, channels, peripherals supported and etc.)
- Interrupt block diagram explanation in S32K1xx.
- Initialization and configuration of Interrupt channels for different peripheral
- How to configure Interrupts in S32 Design Studio
- GUI configuration for Interrupts of different peripherals
- How to use Interrupts peripheral (Explanation from software point of view)
- Interrupt handler, interrupt callback functions.
- Interrupt peripheral Hardware Abstraction Layer (HAL) SDK Explanation.
- Interrupt peripheral register relation with HAL SDK API’s.
- Interrupts peripheral use case demos (Via UART, I2C, SPI, ADC and TIMER), for different interrupt usecases.
- UART Interrupt different cases: TX, RX, Error codes.
- Same for SPI, I2C, ADC and Timer.
Skills Gained
Register's of microcontroller peripherals
Which registers to monitor for different peripherals || Change in register values corresponding to which HAL API's || Status and error registers to monitor for debugging ||
Microcontroller Datasheet reading
How to read Datasheet || How to fetch || How to fetch peripheral register information
Interrupt/DMA configurations
NVIC || Nested Interrupts || Interrupt handlers || Vector Table || DMA configurations || DMA memory buffers || DMA and Interrupt combinations
Embedded System Level Understanding
Microcontroller System level Understanding || Sensor/Module Interfacing || Application Development
Uppon Successful Completion
- Get to know how to do microcontroller coding for NXP Semiconductor S32 automotive grade MCU’s.
- Get knowledge on how to use, understand, navigate and explore Hardware Abstraction Layers of microcontroller for using its peripherals.
- Understanding on Embedded Software Architecture, file structure and API flow for assessing different peripherals of Microcontroller.
- Get to know how to configure and use basic peripherals of S32K1xx series of Microcontroller.
- Get Handson level understanding on Eclipse Based IDE’s S32 Design Studio from project generation to code generation and hacks of S32 Design Studio.
- Get system level understanding on how to connect any sensor/module with S32K1xx Microcontroller’s
- In this course we will be exploring, UART, I2C, SPI, GPIO. TIMERS, ADC peripherals of automotive grade microcontroller S32K1xx
- All these peripherals will be explored by via DMA, Polling and Interrupt configurations to see their different use cases.
- How to read datasheet of microcontroller and understand different peripherals of it.
- Exposure and Handson with listed peripherals of microcontroller: seeing signals on logic analyzer, multimeter and oscilloscope to get physical layer level understanding of signals transmitted and received on microcontroller pins.