Master CAN Protocol for embedded system in (Arabic) بالعربي
Deep Dive in CAN protocol/controller (Theoretical & Practical)
Overview
CAN Protocol for Embedded Systems in Arabic
This course will teach you everything you need to know about the CAN protocol for embedded systems. You will learn about the CAN protocol, CAN frames, CAN bus characteristics, and how to read a CAN controller from a TRM. You will also learn how to use Linux CAN sockets to communicate with CAN devices.
Course Outline
Theoretical Part
- In-vehicle networks (IVN)
- Evolution of in-vehicle networks
- Classic flat wiring harness architecture
- Domain architecture
- Zonal architecture
- A typical wiring harness for a car
- Central compute based zonal architecture
- CAN bus introduction
- What is CAN bus?
- Who uses CAN bus?
- CAN bus history
- CAN bus timeline
- Bus characteristics
- OSI model
- Physical layer
- CAN protocol specification
- General characteristics
- Types of CAN messages
- Data frame
- Remote frame
- Error frame
- Overload frame
- CAN bus characteristics
- CAN node
- Single ended vs. differential
- Recessive and dominant signals
- Bit rate / bus length
- CAN transceiver
- CAN bus errors
- Bit error
- Stuff error
- CRC error
- Acknowledgment error
- Form error
- Error confinement mechanism
- CAN bit monitoring and stuffing
Practical Part
Case Study 1
- How to read a CAN controller from a technical reference manual (TRM) for a SoC based on Cortex M3
- CAN bit timing and calculation
- TX & RX based on polling mechanism
- Filtration mechanisms
- Retransmission mechanism based on error
- CAN test modes
- Using simulation mode for debugging
- Troubleshooting for CAN bus single node
- Running case study 1 on the physical board
- Analyzing the physical CAN bus traffic
Case Study 2
- Understanding interrupt mechanism from TRM
- Implementing TX/RX functions based on interrupt mechanism
- Two ECUs communicating together
- Trying on physical board
- Figuring out different issues on physical CAN bus
Case Study 3
- Linux networking
- SocketCAN concept
- Kernel add CAN support
- CAN utilities
- CAN socket:
- Reading a frame
- Setting up a filter
- Sending a frame
I hope you Enjoy the course.
For more knowledge in Embedded Systems, My Master C/Embedded C for embedded system
For more information about CAN Protocol
Curriculum
Instructor
Reviews
Requirements
- strong knowledge in MCU fundamentals, interfacing and embedded C programming
Target audiences
- Senior Embedded System Engineer
- Computer Engineer
- Communication and electronics engineer
- Mechatronics engineer
- Computer Science