diff --git a/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/TARGET_SAMR21G18A/device.h b/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/TARGET_SAMR21G18A/device.h index 614987008e..2f8646162c 100644 --- a/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/TARGET_SAMR21G18A/device.h +++ b/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/TARGET_SAMR21G18A/device.h @@ -42,7 +42,7 @@ #define DEVICE_ETHERNET 0 -#define DEVICE_PWMOUT 0 +#define DEVICE_PWMOUT 1 #define DEVICE_SEMIHOST 0 #define DEVICE_LOCALFILESYSTEM 0 diff --git a/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/objects.h b/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/objects.h index cbc2973f0b..b64497c7aa 100644 --- a/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/objects.h +++ b/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/objects.h @@ -67,9 +67,9 @@ struct analogin_s { struct adc_module adc_instance; struct adc_config config_adc; }; -/* + struct pwmout_s { -};*/ +}; struct spi_s { Sercom *spi; diff --git a/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/port_api.c b/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/port_api.c index 196c406559..1dfc8e3c2d 100644 --- a/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/port_api.c +++ b/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/port_api.c @@ -44,7 +44,7 @@ void port_init(port_t *obj, PortName port, int mask, PinDirection dir) MBED_ASSERT(obj); struct port_config pin_conf; int i, j; - uint32_t start; + int start; PortGroup *const port_base = (PortGroup*)port_get_group_from_gpio_pin(port * 32); // 32 pins in port // function reused to get the port base switch (port) { @@ -92,7 +92,7 @@ void port_mode(port_t *obj, PinMode mode) { MBED_ASSERT(obj); int i, j; - uint32_t start; + int start; start = start_pin(obj->port); if(start == NC) return; @@ -108,7 +108,7 @@ void port_dir(port_t *obj, PinDirection dir) MBED_ASSERT(obj); struct port_config pin_conf; int i, j; - uint32_t start; + int start; start = start_pin(obj->port); if(start == NC) return; @@ -137,7 +137,7 @@ void port_write(port_t *obj, int value) { MBED_ASSERT(obj); int i; - uint32_t start; + int start; start = start_pin(obj->port); if(start == NC) return; diff --git a/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/pwmout_api.c b/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/pwmout_api.c new file mode 100644 index 0000000000..4c1cf257d0 --- /dev/null +++ b/libraries/mbed/targets/hal/TARGET_Atmel/TARGET_SAM21/pwmout_api.c @@ -0,0 +1,62 @@ +/* mbed Microcontroller Library + * Copyright (c) 2006-2013 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#include "mbed_assert.h" +#include "pwmout_api.h" + +#include "cmsis.h" +#include "pinmap.h" +#include "PeripheralPins.h" + + +void pwmout_init(pwmout_t* obj, PinName pin) +{ +} + +void pwmout_free(pwmout_t* obj) +{ +} + +void pwmout_write(pwmout_t* obj, float value) +{ +} + +float pwmout_read(pwmout_t* obj) +{ +} + +void pwmout_period(pwmout_t* obj, float seconds) +{ +} + +void pwmout_period_ms(pwmout_t* obj, int ms) +{ +} + +void pwmout_period_us(pwmout_t* obj, int us) +{ +} + +void pwmout_pulsewidth(pwmout_t* obj, float seconds) +{ +} + +void pwmout_pulsewidth_ms(pwmout_t* obj, int ms) +{ +} + +void pwmout_pulsewidth_us(pwmout_t* obj, int us) +{ +}