Porting and Optimization of Kvaser CANopen Stack for STM32 Microcontrollers
Le, Thinh (2024)
Le, Thinh
2024
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2024052214602
https://urn.fi/URN:NBN:fi:amk-2024052214602
Tiivistelmä
This bachelor thesis, conducted within the Bachelor of Information Technology program, focuses on the development of a Hardware Abstraction Layer (HAL) for the STM32 platform, tailored specifically for integrating the Kvaser CANopen protocol stack provided by TK Engineering (TKE) into embedded systems. The CANopen protocol serves as a higher-layer protocol atop the Controller Area Network (CAN) bus, offering standardized communication profiles for embedded systems.
The primary objective of this thesis was to implement the source code for the HAL on the NUCLEO-F446RE development board, which has the STM32F446RE microcontroller on it, providing functions for seamless communication between the CANopen protocol stack and the STM32 hardware, including the CAN driver and timer functionalities. Furthermore, a demo CANopen node will be developed using the HAL on this board, and thorough testing was conducted using the CANopen Conformance Test tool from CiA (CAN in Automation).
The outcomes of this thesis are expected to significantly benefit both TKE and the broader embedded systems community. By successfully porting and optimizing the Kvaser CANopen Stack for STM32 microcontrollers, this research contributes to enhancing the compatibility and applicability of the stack across a wider range of embedded systems, thereby improving efficiency, reliability, and interoperability in industrial and automotive environments.
The primary objective of this thesis was to implement the source code for the HAL on the NUCLEO-F446RE development board, which has the STM32F446RE microcontroller on it, providing functions for seamless communication between the CANopen protocol stack and the STM32 hardware, including the CAN driver and timer functionalities. Furthermore, a demo CANopen node will be developed using the HAL on this board, and thorough testing was conducted using the CANopen Conformance Test tool from CiA (CAN in Automation).
The outcomes of this thesis are expected to significantly benefit both TKE and the broader embedded systems community. By successfully porting and optimizing the Kvaser CANopen Stack for STM32 microcontrollers, this research contributes to enhancing the compatibility and applicability of the stack across a wider range of embedded systems, thereby improving efficiency, reliability, and interoperability in industrial and automotive environments.