Subversion Repositories FuelGauge

Rev

Rev 2 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2 Rev 6
Line 103... Line 103...
103
/**
103
/**
104
  * @}
104
  * @}
105
  */
105
  */
106
 
106
 
107
/** @defgroup GPIO_mode GPIO mode
107
/** @defgroup GPIO_mode GPIO mode
108
  * @brief GPIO Configuration Mode
108
  * @brief GPIO Configuration Mode
109
  *        Elements values convention: 0xX0yz00YZ
109
  *        Elements values convention: 0x00WX00YZ
110
  *           - X  : GPIO mode or EXTI Mode
110
  *           - W  : EXTI trigger detection on 3 bits
111
  *           - y  : External IT or Event trigger detection
111
  *           - X  : EXTI mode (IT or Event) on 2 bits
112
  *           - z  : IO configuration on External IT or Event
-
 
113
  *           - Y  : Output type (Push Pull or Open Drain)
112
  *           - Y  : Output type (Push Pull or Open Drain) on 1 bit
114
  *           - Z  : IO Direction mode (Input, Output, Alternate or Analog)
113
  *           - Z  : GPIO mode (Input, Output, Alternate or Analog) on 2 bits
115
  * @{
114
  * @{
116
  */
115
  */
117
#define  GPIO_MODE_INPUT                        (0x00000000U)   /*!< Input Floating Mode                   */
116
#define  GPIO_MODE_INPUT                        MODE_INPUT                                                  /*!< Input Floating Mode                   */
118
#define  GPIO_MODE_OUTPUT_PP                    (0x00000001U)   /*!< Output Push Pull Mode                 */
117
#define  GPIO_MODE_OUTPUT_PP                    (MODE_OUTPUT | OUTPUT_PP)                                   /*!< Output Push Pull Mode                 */
119
#define  GPIO_MODE_OUTPUT_OD                    (0x00000011U)   /*!< Output Open Drain Mode                */
118
#define  GPIO_MODE_OUTPUT_OD                    (MODE_OUTPUT | OUTPUT_OD)                                   /*!< Output Open Drain Mode                */
120
#define  GPIO_MODE_AF_PP                        (0x00000002U)   /*!< Alternate Function Push Pull Mode     */
119
#define  GPIO_MODE_AF_PP                        (MODE_AF | OUTPUT_PP)                                       /*!< Alternate Function Push Pull Mode     */
121
#define  GPIO_MODE_AF_OD                        (0x00000012U)   /*!< Alternate Function Open Drain Mode    */
120
#define  GPIO_MODE_AF_OD                        (MODE_AF | OUTPUT_OD)                                       /*!< Alternate Function Open Drain Mode    */
-
 
121
 
122
#define  GPIO_MODE_ANALOG                       (0x00000003U)   /*!< Analog Mode  */  
122
#define  GPIO_MODE_ANALOG                       MODE_ANALOG                                                 /*!< Analog Mode  */
-
 
123
   
123
#define  GPIO_MODE_IT_RISING                    (0x10110000U)   /*!< External Interrupt Mode with Rising edge trigger detection          */
124
#define  GPIO_MODE_IT_RISING                    (MODE_INPUT | EXTI_IT | TRIGGER_RISING)                     /*!< External Interrupt Mode with Rising edge trigger detection          */
124
#define  GPIO_MODE_IT_FALLING                   (0x10210000U)   /*!< External Interrupt Mode with Falling edge trigger detection         */
125
#define  GPIO_MODE_IT_FALLING                   (MODE_INPUT | EXTI_IT | TRIGGER_FALLING)                    /*!< External Interrupt Mode with Falling edge trigger detection         */
125
#define  GPIO_MODE_IT_RISING_FALLING            (0x10310000U)   /*!< External Interrupt Mode with Rising/Falling edge trigger detection  */
126
#define  GPIO_MODE_IT_RISING_FALLING            (MODE_INPUT | EXTI_IT | TRIGGER_RISING | TRIGGER_FALLING)   /*!< External Interrupt Mode with Rising/Falling edge trigger detection  */
-
 
127
 
126
#define  GPIO_MODE_EVT_RISING                   (0x10120000U)   /*!< External Event Mode with Rising edge trigger detection               */
128
#define  GPIO_MODE_EVT_RISING                   (MODE_INPUT | EXTI_EVT | TRIGGER_RISING)                     /*!< External Event Mode with Rising edge trigger detection             */
127
#define  GPIO_MODE_EVT_FALLING                  (0x10220000U)   /*!< External Event Mode with Falling edge trigger detection              */
129
#define  GPIO_MODE_EVT_FALLING                  (MODE_INPUT | EXTI_EVT | TRIGGER_FALLING)                    /*!< External Event Mode with Falling edge trigger detection            */
128
#define  GPIO_MODE_EVT_RISING_FALLING           (0x10320000U)   /*!< External Event Mode with Rising/Falling edge trigger detection       */
130
#define  GPIO_MODE_EVT_RISING_FALLING           (MODE_INPUT | EXTI_EVT | TRIGGER_RISING | TRIGGER_FALLING)   /*!< External Event Mode with Rising/Falling edge trigger detection     *//**
129
/**
-
 
130
  * @}
131
  * @}
131
  */
132
  */
132
                                                         
133
                                                         
133
/** @defgroup GPIO_speed GPIO speed
134
/** @defgroup GPIO_speed GPIO speed
134
  * @brief GPIO Output Maximum frequency
135
  * @brief GPIO Output Maximum frequency
Line 204... Line 205...
204
/**
205
/**
205
  * @}
206
  * @}
206
  */
207
  */
207
 
208
 
208
/* Private macros ------------------------------------------------------------*/
209
/* Private macros ------------------------------------------------------------*/
-
 
210
/** @defgroup GPIO_Private_Constants GPIO Private Constants
-
 
211
  * @{
-
 
212
  */
-
 
213
#define GPIO_MODE_Pos                           0U
-
 
214
#define GPIO_MODE                               (0x3UL << GPIO_MODE_Pos)
-
 
215
#define MODE_INPUT                              (0x0UL << GPIO_MODE_Pos)
-
 
216
#define MODE_OUTPUT                             (0x1UL << GPIO_MODE_Pos)
-
 
217
#define MODE_AF                                 (0x2UL << GPIO_MODE_Pos)
-
 
218
#define MODE_ANALOG                             (0x3UL << GPIO_MODE_Pos)
-
 
219
#define OUTPUT_TYPE_Pos                         4U
-
 
220
#define OUTPUT_TYPE                             (0x1UL << OUTPUT_TYPE_Pos)
-
 
221
#define OUTPUT_PP                               (0x0UL << OUTPUT_TYPE_Pos)
-
 
222
#define OUTPUT_OD                               (0x1UL << OUTPUT_TYPE_Pos)
-
 
223
#define EXTI_MODE_Pos                           16U
-
 
224
#define EXTI_MODE                               (0x3UL << EXTI_MODE_Pos)
-
 
225
#define EXTI_IT                                 (0x1UL << EXTI_MODE_Pos)
-
 
226
#define EXTI_EVT                                (0x2UL << EXTI_MODE_Pos)
-
 
227
#define TRIGGER_MODE_Pos                        20U
-
 
228
#define TRIGGER_MODE                            (0x7UL << TRIGGER_MODE_Pos)
-
 
229
#define TRIGGER_RISING                          (0x1UL << TRIGGER_MODE_Pos)
-
 
230
#define TRIGGER_FALLING                         (0x2UL << TRIGGER_MODE_Pos)
-
 
231
/**
-
 
232
  * @}
-
 
233
  */
-
 
234
 
209
/** @addtogroup GPIO_Private_Macros GPIO Private Macros
235
/** @addtogroup GPIO_Private_Macros GPIO Private Macros
210
  * @{
236
  * @{
211
  */
237
  */
212
#define IS_GPIO_PIN_ACTION(ACTION)  (((ACTION) == GPIO_PIN_RESET) || ((ACTION) == GPIO_PIN_SET))
238
#define IS_GPIO_PIN_ACTION(ACTION)  (((ACTION) == GPIO_PIN_RESET) || ((ACTION) == GPIO_PIN_SET))
213
 
239