Browse code

Power saving changes, add new fonts, bitmaps and screens

Nils Faerber authored on 19/05/2013 00:07:04
Showing 1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,78 @@
1
+/*******************************************************************************
2
+ *
3
+ * HAL_PMAP.c
4
+ * Port Mapper Library for PMAP controller of MSP430F5xx/6xx family
5
+ * 
6
+ *
7
+ * Copyright (C) 2010 Texas Instruments Incorporated - http://www.ti.com/ 
8
+ * 
9
+ * 
10
+ *  Redistribution and use in source and binary forms, with or without 
11
+ *  modification, are permitted provided that the following conditions 
12
+ *  are met:
13
+ *
14
+ *    Redistributions of source code must retain the above copyright 
15
+ *    notice, this list of conditions and the following disclaimer.
16
+ *
17
+ *    Redistributions in binary form must reproduce the above copyright
18
+ *    notice, this list of conditions and the following disclaimer in the 
19
+ *    documentation and/or other materials provided with the   
20
+ *    distribution.
21
+ *
22
+ *    Neither the name of Texas Instruments Incorporated nor the names of
23
+ *    its contributors may be used to endorse or promote products derived
24
+ *    from this software without specific prior written permission.
25
+ *
26
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
27
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
28
+ *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
29
+ *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 
30
+ *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
31
+ *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 
32
+ *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
33
+ *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
34
+ *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 
35
+ *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
36
+ *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37
+ * 
38
+ * Created: Version 1.0 11/24/2009
39
+ * Updated: Version 2.0 12/15/2010
40
+ *  
41
+ ******************************************************************************/
42
+
43
+#include "msp430.h"
44
+#include "HAL_PMAP.h" 
45
+#include "portmacro.h"
46
+
47
+// Check and define PMAP function only if the device has port mapping capability
48
+// Note: This macro is defined in the device-specific header file if this
49
+// feature is available on a given MSP430.
50
+#ifdef __MSP430_HAS_PORT_MAPPING__ 
51
+
52
+void configure_ports(const unsigned char *port_mapping, unsigned char *PxMAPy, 
53
+                    unsigned char num_of_ports, unsigned char port_map_reconfig)
54
+{
55
+  uint16_t i;
56
+  
57
+  portENTER_CRITICAL();
58
+  
59
+  // Get write-access to port mapping registers:
60
+  PMAPPWD = PMAPPW;
61
+  
62
+  if (port_map_reconfig) {
63
+    // Allow reconfiguration during runtime:
64
+    PMAPCTL = PMAPRECFG;
65
+  }
66
+  
67
+  // Configure Port Mapping: 
68
+  for (i = 0; i < num_of_ports * 8; i++) {
69
+    PxMAPy[i] = port_mapping[i];
70
+  }
71
+  
72
+  // Disable write-access to port mapping registers:
73
+  PMAPPWD = 0;
74
+  
75
+  portEXIT_CRITICAL();
76
+}
77
+
78
+#endif  /* __MSP430_HAS_PORT_MAPPING__ */