CategoryEmbedded Systems

Automotive most used protocols – KWP2000 and UDS.

KWP2000/UDS devices are essential tools for anyone who wants to tinker with a vehicle’s onboard computer system. Whether you’ll use yours for chip tuning a hobby-racing vehicle or you need to equip your auto-shop business with better on-board vehicle diagnostics (OBD) programming tools. KWP2000 actually stands for Keyword Protocol 2000, which is the name of a set of communications...

STM32 Firmware Upgrade Through CANbus

Using the  the current project aims to update a board through CANbus. The workflow: The first board has a firmware loaded into the SD Card. At the beginning it requests to transmit the firmware through CANbus. If the second board accepts the request, then the firmware is transmitted through the CANBus to the SD Card of the client. After the completion of the firmware transfer process, the system...

STM32 Firmware Upgrade

Usually a firmware upgrade of the STM32FXXX boards are is not an easy task for customers. They have to plug the board and use several different tools to flash the memory. For that reason i have made a simple, effective and easy way to upgrade your firmware using an SD Card. The upgrade task is simple, just write your firmware in the first sector of the SD Card (use HxD application to perform this...

CAN Frames Echoing Thread for STM32F779-Eval board

Sometimes, we need an easy way to test and verify that our board works correctly, especially if we are using breadboards and cables. The following simple FreeRTOS thread is able to echo each incoming CAN frame. To use this thread you must enable FreeRTOS using the ST’s CubeMX software which will generate the appropriate startup source code and afterwards you have to include some extra...

CAN frames buffer (received by interrupt) for STM32F779-Eval board

In a previous post we saw a simple CAN library to handle the CAN interfaces of STM32 board. However one basic issue that we had to solve is the frames buffering (especially when we receive the frames). This issue came up by the processing time that each frame needs and the limitation that the receive interrupt routine should be as fast as possible. For that reason, the following source code...

Self-Adaptive Orchestration of energy efficiency capabilities In Heterogeneous Systems

Dynamic resources allocation has become even more attractive as a research direction with commodity computing gaining momentum and bringing new requirements regarding elasticity and flexibility and with the growing importance of cloud computing.  The aim is to deliver high-performance computational while leveraging on other aspects, such as energy consumption. Admittedly, heterogeneity comes at...

CANBus library for STM32F779-Eval board

The Controller Area Network (CAN, also known as CAN Bus) is a vehicle bus standard designed to allow electronic control units and devices to communicate with each other in applications without a host computer. STM32F779-Eval board has 3 CAN interfaces, however only the two of them have their own clock (master). For that reason the following library provides some C methods to activate and use...

USARTx DMA ring buffer for STM32F779-Eval board

I have recently been playing with UART and DMA, although i’m still getting my head around it,. DMA allows you to transfer large amounts of data through the system without getting the processor core involved. Rather than the CPU laboriously reading a byte, the writing a byte from one buffer to another, you’d give the DMA controller a pointer to the start of a source buffer, a pointer...

Using the SD Card of STM32F779NI-Eval board

Are you in need of an additional memory larger than EEPROM? Although EEPROM is a very easy and effective way of storing data on the board, the built in EEPROM only offers only a few bytes of storage. When working with larger or more advanced projects we may need to store additional data so an external memory solution. For that reason, MicroSD card enables you to do this quickly and easily. The...

Disclaimer: The present content may not be used for training artificial intelligence or machine learning algorithms. All other uses, including search, entertainment, and commercial use, are permitted.

Categories

Tags