LPCOpen Platform
LPCOpen Platform for NXP LPC Microcontrollers
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
GUI_X.c
Go to the documentation of this file.
1 /*********************************************************************
2 * SEGGER MICROCONTROLLER SYSTEME GmbH *
3 * Solutions for real time microcontroller applications *
4 **********************************************************************
5 * *
6 * (C) 1996 SEGGER Microcontroller Systeme GmbH *
7 * *
8 * Internet: www.segger.com Support: support@segger.com *
9 * *
10 **********************************************************************
11 
12 ----------------------------------------------------------------------
13 File : GUI_X.C
14 Purpose : Config / System dependent externals for GUI
15 ---------------------------END-OF-HEADER------------------------------
16 */
17 
18 #include "GUI.h"
19 #include "lpc_types.h"
20 
21 /*********************************************************************
22 *
23 * Global data
24 */
25 extern volatile uint32_t systick_timems;
26 
27 /*********************************************************************
28 *
29 * Timing:
30 * GUI_X_GetTime()
31 * GUI_X_Delay(int)
32 
33  Some timing dependent routines require a GetTime
34  and delay function. Default time unit (tick), normally is
35 1 ms.
36 */
37 
38 int GUI_X_GetTime(void) {
39  return (int)systick_timems;
40 }
41 
42 void GUI_X_Delay(int ms) {
43  int tEnd = (int) systick_timems + ms;
44  while ((tEnd - (int)systick_timems) > 0);
45 }
46 
47 /*********************************************************************
48 *
49 * GUI_X_Init()
50 *
51 * Note:
52 * GUI_X_Init() is called from GUI_Init is a possibility to init
53 * some hardware which needs to be up and running before the GUI.
54 * If not required, leave this routine blank.
55 */
56 
57 void GUI_X_Init(void) {
58 
59 }
60 
61 
62 /*********************************************************************
63 *
64 * GUI_X_ExecIdle
65 *
66 * Note:
67 * Called if WM is in idle state
68 */
69 
70 void GUI_X_ExecIdle(void) {}
71 
72 /*********************************************************************
73 *
74 * Multitasking:
75 *
76 * GUI_X_InitOS()
77 * GUI_X_GetTaskId()
78 * GUI_X_Lock()
79 * GUI_X_Unlock()
80 *
81 * Note:
82 * The following routines are required only if emWin is used in a
83 * true multi task environment, which means you have more than one
84 * thread using the emWin API.
85 * In this case the
86 * #define GUI_OS 1
87 * needs to be in GUIConf.h
88 */
89 
90 
91 //static OS_RSEMA RSema;
92 
93 void GUI_X_InitOS(void) { /*OS_CreateRSema(&RSema);*/ }
94 void GUI_X_Unlock(void) { /*OS_Unuse(&RSema);*/ }
95 void GUI_X_Lock(void) { /*OS_Use(&RSema);*/ }
96 U32 GUI_X_GetTaskId(void) { return 0; /*(U32)OS_GetTaskID();*/ }
97 
98 /*********************************************************************
99 *
100 * Logging: OS dependent
101 
102 Note:
103  Logging is used in higher debug levels only. The typical target
104  build does not use logging and does therefor not require any of
105  the logging routines below. For a release build without logging
106  the routines below may be eliminated to save some space.
107  (If the linker is not function aware and eliminates unreferenced
108  functions automatically)
109 
110 */
111 
112 void GUI_X_Log (const char *s) { GUI_USE_PARA(s); }
113 void GUI_X_Warn (const char *s) { GUI_USE_PARA(s); }
114 void GUI_X_ErrorOut(const char *s) { GUI_USE_PARA(s); }
115 
116 /*************************** End of file ****************************/