Updating FreeRTOS v7.1.1 to V8.0.1

The version of FreeRTOS currently being used by AEMB is long outdated and has not been updated since two years ago. The version used is V7.1.1 while the latest version is already V8.0.1. Therefore, it is time to update it. Working on a cloned git repository from AEMB FreeRTOS repository, Read more…

LwIP on AVR32

Since the basic function for HAL is able to run without serious problem. I have to put HAL on hold and start to do net layer for AVR32. However, I will come back to HAL when bugs ‘fly’ out or when the time I want to increase the performance of Read more…

AVR32 Development

These two weeks, my task is writing a Hardware Abstraction Layer (HAL) for AVR32. So I need to work on AVR32 along with AVR32 studio and development board. The AVR32 is 32-bit micro-controller family developed by Atmel. Atmel provides most of the drivers for the on-chip peripherals and on-board components Read more…

FreeRTOS: Inter-Task Communication

FreeRTOS is a type of real-time operating system. It is similar to all RTOS, having a serious problem with inter-task communication and resource sharing. In RTOS, inter-task communication is not like passing variables between normal functions. Normal functions can pass the data to a global variable or pass it to Read more…

LLVM: Compiling FreeRTOS with LLVM (Part 2)

Continue from my previous post, LLVM: Compiling FreeRTOS with LLVM (Part 1). Anybody who might have some basic skills in programming, creating Makefiles especially, must be laughing hysterically if they come across and read my previous post in this topic. When I google the phrase “Compiling freertos with llvm” or Read more…

LLVM: Compiling FreeRTOS with LLVM

It is about two more weeks before my internship at Aeste ends. Yesterday, I finished my task of cleaning up LLVM floating points instructions and cache instructions. What I did was just hunt all these unwanted instructions inside AEMB target directory files and remove it without damaging the files or Read more…

FreeRTOS Preemptive Kernel

This post presents the sixth and the last phase of porting FreeRTOS for AEMB processor. In the previous post, both interrupt and interrupt handling were implemented to serve the mechanism of the preemptive kernel. Although, things seemed fine and set, yet the kernel failed to work when FreeRTOS tasks were Read more…

FreeRTOS Tick and Tick Handling

This post represents the fifth phase of porting FreeRTOS for AEMB processor. The main concern of this phase is to get the FreeRTOS configured to demonstrate the Preemptive Multitasking. By far this phase deals with the following: Setting up the timer to generate the RTOS Tick Handling the RTOS Tick Read more…

FreeRTOS Cooperative Kernel

In the previous post, I wrote about creating a simple FreeRTOS task. However, to demonstrate the FreeRTOS cooperative kernel, more than one task is needed. Basically when starting the FreeRTOS scheduler, an Idle task is automatically created which is an infinite loop so when the kernel starts running, it will Read more…

Running a FreeRTOS Task

Continuing the series of the posts about my work in porting FreeRTOS for AEMB processor, this represents the third phase of the project which is running a simple FreeRTOS task. In my previous post I mentioned about a problem that I faced during simulating FreeRTOS by using Icarus Verilog. While Read more…