Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of mbed-src by
Revision 239:8cadf13dff33, committed 2014-06-26
- Comitter:
- mbed_official
- Date:
- Thu Jun 26 09:15:07 2014 +0100
- Parent:
- 238:bda0417c579a
- Child:
- 240:9a7c54113eaf
- Commit message:
- Synchronized with git revision ea64ad4ac220cd7180724d8bb43310da3e692767
Full URL: https://github.com/mbedmicro/mbed/commit/ea64ad4ac220cd7180724d8bb43310da3e692767/
[NUCLEO_F072RB] mbed assert addition
Changed in this revision
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/analogin_api.c Thu Jun 26 09:00:08 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/analogin_api.c Thu Jun 26 09:15:07 2014 +0100
@@ -25,6 +25,7 @@
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include "mbed_assert.h"
#include "analogin_api.h"
#if DEVICE_ANALOGIN
@@ -32,7 +33,6 @@
#include "wait_api.h"
#include "cmsis.h"
#include "pinmap.h"
-#include "error.h"
static const PinMap PinMap_ADC[] = {
{PA_0, ADC_1, STM_PIN_DATA(STM_MODE_ANALOG, GPIO_NOPULL, 0)}, // ADC1_IN0
@@ -61,10 +61,7 @@
void analogin_init(analogin_t *obj, PinName pin) {
// Get the peripheral name from the pin and assign it to the object
obj->adc = (ADCName)pinmap_peripheral(pin, PinMap_ADC);
-
- if (obj->adc == (ADCName)NC) {
- error("ADC error: pinout mapping failed.");
- }
+ MBED_ASSERT(obj->adc != (ADCName)NC);
// Configure GPIO
pinmap_pinout(pin, PinMap_ADC);
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/analogout_api.c Thu Jun 26 09:00:08 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/analogout_api.c Thu Jun 26 09:15:07 2014 +0100
@@ -25,6 +25,7 @@
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include "mbed_assert.h"
#include "analogout_api.h"
#if DEVICE_ANALOGOUT
@@ -50,10 +51,7 @@
// Get the peripheral name (DAC_1, ...) from the pin and assign it to the object
obj->dac = (DACName)pinmap_peripheral(pin, PinMap_DAC);
-
- if (obj->dac == (DACName)NC) {
- error("DAC pin mapping failed");
- }
+ MBED_ASSERT(obj->dac != (DACName)NC);
// Configure GPIO
pinmap_pinout(pin, PinMap_DAC);
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/gpio_api.c Thu Jun 26 09:00:08 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/gpio_api.c Thu Jun 26 09:15:07 2014 +0100
@@ -27,6 +27,7 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*******************************************************************************
*/
+#include "mbed_assert.h"
#include "gpio_api.h"
#include "pinmap.h"
#include "error.h"
@@ -34,7 +35,7 @@
extern uint32_t Set_GPIO_Clock(uint32_t port_idx);
uint32_t gpio_set(PinName pin) {
- if (pin == NC) return 0;
+ MBED_ASSERT(pin != (PinName)NC);
pin_function(pin, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, 0));
@@ -42,7 +43,10 @@
}
void gpio_init(gpio_t *obj, PinName pin) {
- if (pin == NC) return;
+ obj->pin = pin;
+ if (pin == (PinName)NC) {
+ return;
+ }
uint32_t port_index = STM_PORT(pin);
@@ -51,7 +55,6 @@
GPIO_TypeDef *gpio = (GPIO_TypeDef *)gpio_add;
// Fill GPIO object structure for future use
- obj->pin = pin;
obj->mask = gpio_set(pin);
obj->reg_in = &gpio->IDR;
obj->reg_set = &gpio->BSRRL;
@@ -63,6 +66,7 @@
}
void gpio_dir(gpio_t *obj, PinDirection direction) {
+ MBED_ASSERT(obj->pin != (PinName)NC);
if (direction == PIN_OUTPUT) {
pin_function(obj->pin, STM_PIN_DATA(STM_MODE_OUTPUT_PP, GPIO_NOPULL, 0));
} else { // PIN_INPUT
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/gpio_object.h Thu Jun 26 09:00:08 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/gpio_object.h Thu Jun 26 09:15:07 2014 +0100
@@ -30,6 +30,7 @@
#ifndef MBED_GPIO_OBJECT_H
#define MBED_GPIO_OBJECT_H
+#include "mbed_assert.h"
#include "cmsis.h"
#include "PortNames.h"
#include "PeripheralNames.h"
@@ -48,6 +49,7 @@
} gpio_t;
static inline void gpio_write(gpio_t *obj, int value) {
+ MBED_ASSERT(obj->pin != (PinName)NC);
if (value) {
*obj->reg_set = obj->mask;
} else {
@@ -56,6 +58,7 @@
}
static inline int gpio_read(gpio_t *obj) {
+ MBED_ASSERT(obj->pin != (PinName)NC);
return ((*obj->reg_in & obj->mask) ? 1 : 0);
}
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/i2c_api.c Thu Jun 26 09:00:08 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/i2c_api.c Thu Jun 26 09:15:07 2014 +0100
@@ -27,13 +27,13 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*******************************************************************************
*/
+#include "mbed_assert.h"
#include "i2c_api.h"
#if DEVICE_I2C
#include "cmsis.h"
#include "pinmap.h"
-#include "error.h"
/* Timeout values for flags and events waiting loops. These timeouts are
not based on accurate values, they just guarantee that the application will
@@ -65,10 +65,7 @@
I2CName i2c_scl = (I2CName)pinmap_peripheral(scl, PinMap_I2C_SCL);
obj->i2c = (I2CName)pinmap_merge(i2c_sda, i2c_scl);
-
- if (obj->i2c == (I2CName)NC) {
- error("I2C error: pinout mapping failed.");
- }
+ MBED_ASSERT(obj->i2c != (I2CName)NC);
// Enable I2C clock
if (obj->i2c == I2C_1) {
@@ -93,6 +90,8 @@
}
void i2c_frequency(i2c_t *obj, int hz) {
+ MBED_ASSERT((hz == 100000) || (hz == 400000) || (hz == 1000000));
+
I2cHandle.Instance = (I2C_TypeDef *)(obj->i2c);
// Common settings: I2C clock = 48 MHz, Analog filter = ON, Digital filter coefficient = 0
@@ -107,7 +106,6 @@
I2cHandle.Init.Timing = 0x00700818; // Fast mode Plus with Rise Time = 60ns and Fall Time = 100ns
break;
default:
- error("Only 100kHz, 400kHz and 1MHz I2C frequencies are supported.");
break;
}
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/pinmap.c Thu Jun 26 09:00:08 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/pinmap.c Thu Jun 26 09:15:07 2014 +0100
@@ -27,6 +27,7 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*******************************************************************************
*/
+#include "mbed_assert.h"
#include "pinmap.h"
#include "PortNames.h"
#include "error.h"
@@ -82,7 +83,7 @@
* Configure pin (mode, speed, output type and pull-up/pull-down)
*/
void pin_function(PinName pin, int data) {
- if (pin == NC) return;
+ MBED_ASSERT(pin != (PinName)NC);
// Get the pin informations
uint32_t mode = STM_PIN_MODE(data);
@@ -116,7 +117,7 @@
* Configure pin pull-up/pull-down
*/
void pin_mode(PinName pin, PinMode mode) {
- if (pin == NC) return;
+ MBED_ASSERT(pin != (PinName)NC);
uint32_t port_index = STM_PORT(pin);
uint32_t pin_index = STM_PIN(pin);
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/serial_api.c Thu Jun 26 09:00:08 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/serial_api.c Thu Jun 26 09:15:07 2014 +0100
@@ -27,13 +27,13 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*******************************************************************************
*/
+#include "mbed_assert.h"
#include "serial_api.h"
#if DEVICE_SERIAL
#include "cmsis.h"
#include "pinmap.h"
-#include "error.h"
#include <string.h>
static const PinMap PinMap_UART_TX[] = {
@@ -100,10 +100,7 @@
// Get the peripheral name (UART_1, UART_2, ...) from the pin and assign it to the object
obj->uart = (UARTName)pinmap_merge(uart_tx, uart_rx);
-
- if (obj->uart == (UARTName)NC) {
- error("Serial error: pinout mapping failed.");
- }
+ MBED_ASSERT(obj->uart != (UARTName)NC);
// Enable USART clock
if (obj->uart == UART_1) {
--- a/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/spi_api.c Thu Jun 26 09:00:08 2014 +0100
+++ b/targets/hal/TARGET_STM/TARGET_NUCLEO_F072RB/spi_api.c Thu Jun 26 09:15:07 2014 +0100
@@ -27,6 +27,7 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*******************************************************************************
*/
+#include "mbed_assert.h"
#include "spi_api.h"
#if DEVICE_SPI
@@ -34,7 +35,6 @@
#include <math.h>
#include "cmsis.h"
#include "pinmap.h"
-#include "error.h"
static const PinMap PinMap_SPI_MOSI[] = {
{PA_7, SPI_1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)},
@@ -103,10 +103,7 @@
SPIName spi_cntl = (SPIName)pinmap_merge(spi_sclk, spi_ssel);
obj->spi = (SPIName)pinmap_merge(spi_data, spi_cntl);
-
- if (obj->spi == (SPIName)NC) {
- error("SPI error: pinout mapping failed.");
- }
+ MBED_ASSERT(obj->spi != (SPIName)NC);
// Enable SPI clock
if (obj->spi == SPI_1) {
