III - Advanced Project » History » Version 28
COLIN, Tony, 12/14/2015 09:44 AM
1 | 25 | COLIN, Tony | h1. III - Advanced Project. |
---|---|---|---|
2 | 1 | COLIN, Tony | |
3 | 1 | COLIN, Tony | {{>toc}} |
4 | 1 | COLIN, Tony | |
5 | 25 | COLIN, Tony | h2. 1. Adapting project to elementary task. |
6 | 1 | COLIN, Tony | |
7 | 26 | COLIN, Tony | See [[Wiki#"3. Creation of a simple MPLAB X IDE project"|Tutorial page]] for project bases. |
8 | 25 | COLIN, Tony | In this part, you will have to modify particular files of the previous Test/. |
9 | 1 | COLIN, Tony | |
10 | 26 | COLIN, Tony | h3. 1.1 Integration of C Source files into task(s). |
11 | 25 | COLIN, Tony | |
12 | 27 | COLIN, Tony | * *task_name.c* stating _void task_name (void) { ... }_. |
13 | 26 | COLIN, Tony | Here you can either call the C main function in the task_name function or adapting your main file into one or several tasks (for simultaneity during process). |
14 | 25 | COLIN, Tony | |
15 | 27 | COLIN, Tony | * *task_name.h* stating _extern void task_name (void);_ and other intern functions. |
16 | 25 | COLIN, Tony | |
17 | 26 | COLIN, Tony | h3. 1.2 Definition of your task(s) to be called. |
18 | 25 | COLIN, Tony | |
19 | 28 | COLIN, Tony | * *tasks.h* defining OSTCBP of all predifined tasks i.e. the way of specifying a pointer to a particular Salvo _Task Control Block_. More information is available on Salvo User Manual. |
20 | 25 | COLIN, Tony | |
21 | 27 | COLIN, Tony | * *task_cmd.c* which is a tool provided by Test/ that allows to resume/stop your task(s). |
22 | 1 | COLIN, Tony | !task_cmd.png! |
23 | 25 | COLIN, Tony | |
24 | 28 | COLIN, Tony | * *main.c* i.e. the basic implementation to call your task(s). All statements are essential for Salvo and CSK to work. |
25 | 24 | COLIN, Tony | !main.png! |
26 | 1 | COLIN, Tony | |
27 | 1 | COLIN, Tony | --- |
28 | 1 | COLIN, Tony | |
29 | 25 | COLIN, Tony | h2. 2. Integration of a Reed-Solomon encoder/decoder. |
30 | 1 | COLIN, Tony | |
31 | 25 | COLIN, Tony | A highly convenient implementation of a Reed-Solomon code is available on "RS Code Website":http://rscode.sourceforge.net/ and will be integrated in the following. |
32 | 1 | COLIN, Tony | |
33 | 1 | COLIN, Tony | h3. 2.1 Presentation of Reed-Solomon. |
34 | 28 | COLIN, Tony | |
35 | 28 | COLIN, Tony | More information is available on attachment:rs.doc and attachment:config.doc. |
36 | 1 | COLIN, Tony | |
37 | 25 | COLIN, Tony | h3. 2.2 Task Example. |
38 | 1 | COLIN, Tony | |
39 | 25 | COLIN, Tony | --- |
40 | 1 | COLIN, Tony | |
41 | 25 | COLIN, Tony | h2. 3. Displaying results. |
42 | 1 | COLIN, Tony | |
43 | 25 | COLIN, Tony | h3. 3.1 In simulation. |
44 | 17 | COLIN, Tony | |
45 | 20 | COLIN, Tony | p=. !CodingWin3.png! |
46 | 1 | COLIN, Tony | *Message of 87 characters* |
47 | 17 | COLIN, Tony | |
48 | 20 | COLIN, Tony | p=. !CodingWin2.png! |
49 | 1 | COLIN, Tony | *Code of adding errors* |
50 | 17 | COLIN, Tony | |
51 | 20 | COLIN, Tony | p=. !UART1.png! |
52 | 1 | COLIN, Tony | *Checking Output UART Window* |
53 | 1 | COLIN, Tony | |
54 | 1 | COLIN, Tony | p=. !CodingWin1.png! |
55 | 17 | COLIN, Tony | *Displayed result* |
56 | 20 | COLIN, Tony | |
57 | 25 | COLIN, Tony | h3. 3.2 On board. |
58 | 17 | COLIN, Tony | |
59 | 17 | COLIN, Tony | |_.- |_.Char |_.Code ASCII |_.Hexadecimal |_. Binary | |
60 | 15 | COLIN, Tony | |_.Codeword |=. 2 |=. 50 |=. 0x32 | 0b00110010 | |
61 | 15 | COLIN, Tony | |_.Erroneous Codeword |=. 3 |=. 51 |=. 0x33 | 0b00110011 | |
62 | 2 | COLIN, Tony | |
63 | 15 | COLIN, Tony | !LEDs_resized.png! !LEDs_error_resized.png! !LEDs_resized.png! |
64 | 7 | COLIN, Tony | __________________ *a. Codeword : 0bXX110010* ________________________ *b. Erroneous codeword : 0bXX110011* ____________________ *c. Corrected codeword : 0bXX110010* ______________ |
65 | 22 | COLIN, Tony | |
66 | 25 | COLIN, Tony | --- |
67 | 1 | COLIN, Tony | |
68 | 25 | COLIN, Tony | h2. 4. Measurement of encoding/decoding time. |
69 | 6 | COLIN, Tony | |
70 | 23 | COLIN, Tony | p=. !Clock1.png! |
71 | 23 | COLIN, Tony | *1000 ticks per milliseconds* |
72 | 1 | COLIN, Tony | |
73 | 23 | COLIN, Tony | p=. !Clock2.png! |
74 | 23 | COLIN, Tony | *Time measurement of data encoding* |
75 | 23 | COLIN, Tony | |
76 | 23 | COLIN, Tony | p=. !Clock3.png! |
77 | 23 | COLIN, Tony | *Printing clock data* |
78 | 23 | COLIN, Tony | |
79 | 1 | COLIN, Tony | p=. !Time_RS_resized.PNG! |
80 | 23 | COLIN, Tony | *Chart of Reed Solomon time measurement* |