]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - msp430-bsl/msp430-bsl.git/blob - source/driverlib/MSP430F5xx_6xx/bak_batt.h
MSP-BSL v3.0
[msp430-bsl/msp430-bsl.git] / source / driverlib / MSP430F5xx_6xx / bak_batt.h
1 /* --COPYRIGHT--,BSD\r
2  * Copyright (c) 2014, Texas Instruments Incorporated\r
3  * All rights reserved.\r
4  *\r
5  * Redistribution and use in source and binary forms, with or without\r
6  * modification, are permitted provided that the following conditions\r
7  * are met:\r
8  *\r
9  * *  Redistributions of source code must retain the above copyright\r
10  *    notice, this list of conditions and the following disclaimer.\r
11  *\r
12  * *  Redistributions in binary form must reproduce the above copyright\r
13  *    notice, this list of conditions and the following disclaimer in the\r
14  *    documentation and/or other materials provided with the distribution.\r
15  *\r
16  * *  Neither the name of Texas Instruments Incorporated nor the names of\r
17  *    its contributors may be used to endorse or promote products derived\r
18  *    from this software without specific prior written permission.\r
19  *\r
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"\r
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,\r
22  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\r
23  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\r
24  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\r
25  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\r
26  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;\r
27  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,\r
28  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR\r
29  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\r
30  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
31  * --/COPYRIGHT--*/\r
32 //*****************************************************************************\r
33 //\r
34 // bak_batt.h - Driver for the BAK_BATT Module.\r
35 //\r
36 //*****************************************************************************\r
37 \r
38 #ifndef __MSP430WARE_BAK_BATT_H__\r
39 #define __MSP430WARE_BAK_BATT_H__\r
40 \r
41 #include "inc/hw_memmap.h"\r
42 \r
43 #ifdef __MSP430_HAS_BATTERY_CHARGER__\r
44 \r
45 //*****************************************************************************\r
46 //\r
47 // If building with a C++ compiler, make all of the definitions in this header\r
48 // have a C binding.\r
49 //\r
50 //*****************************************************************************\r
51 #ifdef __cplusplus\r
52 extern "C"\r
53 {\r
54 #endif\r
55 \r
56 //*****************************************************************************\r
57 //\r
58 // The following are values that can be passed toThe following are values that\r
59 // can be returned by the BAK_BATT_unlockBackupSubSystem() function.\r
60 //\r
61 //*****************************************************************************\r
62 #define BAK_BATT_UNLOCKFAILURE                                        (LOCKBAK)\r
63 #define BAK_BATT_UNLOCKSUCCESS                                            (0x0)\r
64 \r
65 //*****************************************************************************\r
66 //\r
67 // The following are values that can be passed to the chargerEndVoltage\r
68 // parameter for functions: BAK_BATT_chargerInitAndEnable().\r
69 //\r
70 //*****************************************************************************\r
71 #define BAK_BATT_CHARGERENDVOLTAGE_VCC                                (BAKCHV0)\r
72 #define BAK_BATT_CHARGERENDVOLTAGE2_7V                                (BAKCHV1)\r
73 \r
74 //*****************************************************************************\r
75 //\r
76 // The following are values that can be passed to the chargeCurrent parameter\r
77 // for functions: BAK_BATT_chargerInitAndEnable().\r
78 //\r
79 //*****************************************************************************\r
80 #define BAK_BATT_CHARGECURRENT_5KOHM                                  (BAKCHC0)\r
81 #define BAK_BATT_CHARGECURRENT_10KOHM                                 (BAKCHC1)\r
82 #define BAK_BATT_CHARGECURRENT_20KOHM                       (BAKCHC0 + BAKCHC1)\r
83 \r
84 //*****************************************************************************\r
85 //\r
86 // The following are values that can be passed to the backupRAMSelect parameter\r
87 // for functions: BAK_BATT_setBackupRAMData(), and BAK_BATT_getBackupRAMData().\r
88 //\r
89 //*****************************************************************************\r
90 #define BAK_BATT_RAMSELECT_0                                           (0x0000)\r
91 #define BAK_BATT_RAMSELECT_1                                           (0x0002)\r
92 #define BAK_BATT_RAMSELECT_2                                           (0x0004)\r
93 #define BAK_BATT_RAMSELECT_3                                           (0x0006)\r
94 \r
95 //*****************************************************************************\r
96 //\r
97 // Prototypes for the APIs.\r
98 //\r
99 //*****************************************************************************\r
100 extern uint16_t BAK_BATT_unlockBackupSubSystem(uint16_t baseAddress);\r
101 \r
102 extern void BAK_BATT_enableBackupSupplyToADC(uint16_t baseAddress);\r
103 \r
104 extern void BAK_BATT_disableBackupSupplyToADC(uint16_t baseAddress);\r
105 \r
106 extern void BAK_BATT_manuallySwitchToBackupSupply(uint16_t baseAddress);\r
107 \r
108 extern void BAK_BATT_disable(uint16_t baseAddress);\r
109 \r
110 extern void BAK_BATT_chargerInitAndEnable(uint16_t baseAddress,\r
111                                           uint8_t chargerEndVoltage,\r
112                                           uint8_t chargeCurrent);\r
113 \r
114 extern void BAK_BATT_disableCharger(uint16_t baseAddress);\r
115 \r
116 extern void BAK_BATT_setBackupRAMData(uint16_t baseAddress,\r
117                                       uint8_t backupRAMSelect,\r
118                                       uint16_t data);\r
119 \r
120 extern uint16_t BAK_BATT_getBackupRAMData(uint16_t baseAddress,\r
121                                           uint8_t backupRAMSelect);\r
122 \r
123 //*****************************************************************************\r
124 //\r
125 // Mark the end of the C bindings section for C++ compilers.\r
126 //\r
127 //*****************************************************************************\r
128 #ifdef __cplusplus\r
129 }\r
130 #endif\r
131 \r
132 #endif\r
133 #endif // __MSP430WARE_BAK_BATT_H__\r