]> rtime.felk.cvut.cz Git - pes-rpp/rpp-test-sw.git/blob - rpp-test-sw/commands/main.c
Merge branch 'maint-rm48' into rm48/master
[pes-rpp/rpp-test-sw.git] / rpp-test-sw / commands / main.c
1 /*\r
2  * Copyright (C) 2012-2014 Czech Technical University in Prague\r
3  *\r
4  * Created on: 15.3.2012\r
5  *\r
6  * Authors:\r
7  *     - Michal Horn\r
8  *     - Carlos Jenkins <carlos@jenkins.co.cr>\r
9  *\r
10  * This document contains proprietary information belonging to Czech\r
11  * Technical University in Prague. Passing on and copying of this\r
12  * document, and communication of its contents is not permitted\r
13  * without prior written authorization.\r
14  *\r
15  * File : main.c\r
16  *\r
17  * Abstract:\r
18  *      This file contains main function and Hook functions used by IDLE task.\r
19  *\r
20  */\r
21 \r
22 /* Include Files */\r
23 #include "rpp/sci.h"\r
24 #include "rpp/adc.h"\r
25 #include "rpp/gio.h"\r
26 #include "os/os.h"\r
27 #include "cmdproc_freertos_tms570.h"\r
28 #include "version.h" // Generated by Eclipse in the pre-build step\r
29 \r
30 /** @fn void main(void)\r
31  *   @brief Application main function\r
32  *\r
33  *   This function is called after startup.\r
34  */\r
35 void main(void)\r
36 {\r
37         rpp_adc_init();\r
38         rpp_gio_init(RPP_GIO_PORT_ALL);\r
39         rpp_sci_init();\r
40 \r
41         // Speed up the SCI\r
42         rpp_sci_setup(115200);\r
43 \r
44         rpp_sci_printf("\nTi HDK RM48L952, FreeRTOS %d.%d.%d\n", FREERTOS_VERSION_NUMBER_MAYOR, FREERTOS_VERSION_NUMBER_MINOR, FREERTOS_VERSION_NUMBER_REV);\r
45         rpp_sci_printf("Test Software version " GIT_VERSION "\n");\r
46         rpp_sci_printf("CTU in Prague 10/2014\n");\r
47 \r
48         initCmdProc(0);\r
49         vTaskStartScheduler();\r
50 \r
51         //We should never get here\r
52         while (1)\r
53                 ;\r
54 }\r
55 \r
56 #if configUSE_MALLOC_FAILED_HOOK == 1\r
57 /**\r
58  * FreeRTOS malloc() failed hook.\r
59  */\r
60 void vApplicationMallocFailedHook(void)\r
61 {\r
62         #ifdef DEBUG\r
63         rpp_sci_printf("ERROR: manual memory allocation failed.\r\n");\r
64         #endif\r
65 }\r
66 #endif\r
67 \r
68 \r
69 #if configCHECK_FOR_STACK_OVERFLOW > 0\r
70 /**\r
71  * FreeRTOS stack overflow hook.\r
72  */\r
73 void vApplicationStackOverflowHook(xTaskHandle xTask,\r
74                                                                    signed portCHAR *pcTaskName)\r
75 {\r
76         #ifdef DEBUG\r
77         rpp_sci_printf("ERROR: Stack overflow : \"%s\".\r\n", pcTaskName);\r
78         #endif\r
79 }\r
80 #endif\r