III - Advanced Project » History » Version 25

« Previous - Version 25/59 (diff) - Next » - Current version
COLIN, Tony, 12/14/2015 09:28 AM


III - Advanced Project.

1. Adapting project to elementary task.

See Tutorial page for project bases
In this part, you will have to modify particular files of the previous Test/.

1.1 Integrating C Source files into task.

  • task_name.c stating void task_name (void) { ... }.
    Here you can either call the C main function in the task_name function or adapting your main file into a task.
  • task_name.h stating extern void task_name (void); and other intern functions.

1.2

  • tasks.h defining OSTCBP of all predifined tasks (way of specifying a pointer to a particular Salvo Task Control Block). More information available on Salvo User Manual.
  • task_cmd.c which is a tool provided by Test/ that allows to resume/stop your task.
  • main.c which is the basic implementation to call your task(s).

2. Integration of a Reed-Solomon encoder/decoder.

A highly convenient implementation of a Reed-Solomon code is available on RS Code Website and will be integrated in the following.

2.1 Presentation of Reed-Solomon.

2.2 Task Example.


3. Displaying results.

3.1 In simulation.


Message of 87 characters


Code of adding errors


Checking Output UART Window


Displayed result

3.2 On board.

- Char Code ASCII Hexadecimal Binary
Codeword 2 50 0x32 0b00110010
Erroneous Codeword 3 51 0x33 0b00110011


__________ a. Codeword : 0bXX110010 ________________ b. Erroneous codeword : 0bXX110011 ____________ c. Corrected codeword : 0bXX110010 ______


4. Measurement of encoding/decoding time.


1000 ticks per milliseconds


Time measurement of data encoding


Printing clock data


Chart of Reed Solomon time measurement