Skip to content

Commit f77155f

Browse files
author
Laurent MEUNIER
committed
[STM32L0] place holder for common object definition
Some of the objects in object.h are the same for all targets. Create a place where to define those common definitions, and start using it for pwm object.
1 parent 42498e9 commit f77155f

File tree

6 files changed

+63
-45
lines changed

6 files changed

+63
-45
lines changed

hal/targets/hal/TARGET_STM/TARGET_STM32L0/TARGET_DISCO_L053C8/objects.h

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -95,15 +95,7 @@ struct i2c_s {
9595
I2CName i2c;
9696
};
9797

98-
struct pwmout_s {
99-
PWMName pwm;
100-
PinName pin;
101-
uint32_t period;
102-
uint32_t pulse;
103-
uint32_t channel;
104-
uint32_t inverted;
105-
};
106-
98+
#include "common_objects.h"
10799
#include "gpio_object.h"
108100

109101
#ifdef __cplusplus

hal/targets/hal/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L011K4/objects.h

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -89,15 +89,7 @@ struct i2c_s {
8989
I2CName i2c;
9090
};
9191

92-
struct pwmout_s {
93-
PWMName pwm;
94-
PinName pin;
95-
uint32_t period;
96-
uint32_t pulse;
97-
uint32_t channel;
98-
uint32_t inverted;
99-
};
100-
92+
#include "common_objects.h"
10193
#include "gpio_object.h"
10294

10395
#ifdef __cplusplus

hal/targets/hal/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L031K6/objects.h

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -89,15 +89,7 @@ struct i2c_s {
8989
I2CName i2c;
9090
};
9191

92-
struct pwmout_s {
93-
PWMName pwm;
94-
PinName pin;
95-
uint32_t period;
96-
uint32_t pulse;
97-
uint32_t channel;
98-
uint32_t inverted;
99-
};
100-
92+
#include "common_objects.h"
10193
#include "gpio_object.h"
10294

10395
#ifdef __cplusplus

hal/targets/hal/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/objects.h

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -95,15 +95,7 @@ struct i2c_s {
9595
I2CName i2c;
9696
};
9797

98-
struct pwmout_s {
99-
PWMName pwm;
100-
PinName pin;
101-
uint32_t period;
102-
uint32_t pulse;
103-
uint32_t channel;
104-
uint32_t inverted;
105-
};
106-
98+
#include "common_objects.h"
10799
#include "gpio_object.h"
108100

109101
#ifdef __cplusplus

hal/targets/hal/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L073RZ/objects.h

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -95,15 +95,7 @@ struct i2c_s {
9595
I2CName i2c;
9696
};
9797

98-
struct pwmout_s {
99-
PWMName pwm;
100-
PinName pin;
101-
uint32_t period;
102-
uint32_t pulse;
103-
uint32_t channel;
104-
uint32_t inverted;
105-
};
106-
98+
#include "common_objects.h"
10799
#include "gpio_object.h"
108100

109101
#ifdef __cplusplus
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
/* mbed Microcontroller Library
2+
*******************************************************************************
3+
* Copyright (c) 2016, STMicroelectronics
4+
* All rights reserved.
5+
*
6+
* Redistribution and use in source and binary forms, with or without
7+
* modification, are permitted provided that the following conditions are met:
8+
*
9+
* 1. Redistributions of source code must retain the above copyright notice,
10+
* this list of conditions and the following disclaimer.
11+
* 2. Redistributions in binary form must reproduce the above copyright notice,
12+
* this list of conditions and the following disclaimer in the documentation
13+
* and/or other materials provided with the distribution.
14+
* 3. Neither the name of STMicroelectronics nor the names of its contributors
15+
* may be used to endorse or promote products derived from this software
16+
* without specific prior written permission.
17+
*
18+
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19+
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20+
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21+
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
22+
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23+
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
24+
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
25+
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
26+
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27+
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28+
*******************************************************************************
29+
*/
30+
#ifndef MBED_COMMON_OBJECTS_H
31+
#define MBED_COMMON_OBJECTS_H
32+
33+
#include "cmsis.h"
34+
#include "PortNames.h"
35+
#include "PeripheralNames.h"
36+
#include "PinNames.h"
37+
38+
#ifdef __cplusplus
39+
extern "C" {
40+
#endif
41+
42+
struct pwmout_s {
43+
PWMName pwm;
44+
PinName pin;
45+
uint32_t period;
46+
uint32_t pulse;
47+
uint8_t channel;
48+
uint8_t inverted;
49+
};
50+
51+
#include "gpio_object.h"
52+
53+
#ifdef __cplusplus
54+
}
55+
#endif
56+
57+
#endif
58+

0 commit comments

Comments
 (0)