Difference between revisions of "Technical topic: TASTE on MSP430 with FreeRTOS"

From TASTE
Jump to: navigation, search
Line 1: Line 1:
 
This page describes how FreeRTOS support was added to TASTE.
 
This page describes how FreeRTOS support was added to TASTE.
 +
 +
== Hardware Description ==
 +
This article describes steps of adding support for MSP43FR5969 processor [http://www.ti.com/product/MSP430FR5969].
 +
The MSP430FR5969 LaunchPad Development Kit [http://www.ti.com/tool/MSP-EXP430FR5969] was used for testing purposes.
 +
 +
Features of this microcontroller:
 +
* 16-bit RISC architecture;
 +
* 16‑MHz Clock;
 +
* 64KB FRAM / 2KB SRAM.
 +
  
 
== New execution platform ==
 
== New execution platform ==

Revision as of 09:21, 13 December 2019

This page describes how FreeRTOS support was added to TASTE.

Hardware Description

This article describes steps of adding support for MSP43FR5969 processor [1]. The MSP430FR5969 LaunchPad Development Kit [2] was used for testing purposes.

Features of this microcontroller:

  • 16-bit RISC architecture;
  • 16‑MHz Clock;
  • 64KB FRAM / 2KB SRAM.


New execution platform

Add new platform Platform_MSP430_FreeRTOS to TASTE. Follow instructions from Technical topic: Add a new target platform to TASTE. TBC

Source code generation for Concurrency View

The Concurrency View code is responsible for initialization of devices, drivers, threads and other structures. The created structures are responsible for passing information between functions and thread synchronization. Generally this code is generated by Ocarina. The generated code uses PolyORB-HI-Ada or PolyORB-HI-C as a middleware.

Kazoo templates for Concurrency View has parameters, which describes threads, mutexes, functions, etc. and relations between them. These parameters may be used to generate code without PolyORB-HI-Ada or PolyORB-HI-C. This section described this approach.

TBC

Mapping of TASTE structures

The threads will be mapped to FreeRTOS tasks [3].

The communication and synchronization between tasks will be realised using queues and semaphores or mutexes [4].

Cyclic provided interfaces of functions will be implemented using software timers [5].

TBC

main.c

TBD

FreeRTOSConfig.h

TBD

Modification in Makefiles and GNAT Project Manager files

TBD

Adding device drivers

The device drivers are described in file ocarina_components.aadl.

TBC