The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

mbed 2

This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.

Committer:
bogdanm
Date:
Thu Nov 27 13:33:22 2014 +0000
Revision:
92:4fc01daae5a5
Parent:
91:031413cf7a89
Release 92 of the mbed libray

Main changes:

- nRF51822: fixed pin assignment issues
- ST targets moving to the STM32Cube driver
- LPC1439: fixed serial interrupt issue
- first Cortex-A platform supported in mbed (RZ_A1H)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kojto 91:031413cf7a89 1 /* mbed Microcontroller Library
Kojto 91:031413cf7a89 2 * Copyright (c) 2013 Nordic Semiconductor
Kojto 91:031413cf7a89 3 *
Kojto 91:031413cf7a89 4 * Licensed under the Apache License, Version 2.0 (the "License");
Kojto 91:031413cf7a89 5 * you may not use this file except in compliance with the License.
Kojto 91:031413cf7a89 6 * You may obtain a copy of the License at
Kojto 91:031413cf7a89 7 *
Kojto 91:031413cf7a89 8 * http://www.apache.org/licenses/LICENSE-2.0
Kojto 91:031413cf7a89 9 *
Kojto 91:031413cf7a89 10 * Unless required by applicable law or agreed to in writing, software
Kojto 91:031413cf7a89 11 * distributed under the License is distributed on an "AS IS" BASIS,
Kojto 91:031413cf7a89 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Kojto 91:031413cf7a89 13 * See the License for the specific language governing permissions and
Kojto 91:031413cf7a89 14 * limitations under the License.
Kojto 91:031413cf7a89 15 */
Kojto 91:031413cf7a89 16 #ifndef MBED_OBJECTS_H
Kojto 91:031413cf7a89 17 #define MBED_OBJECTS_H
Kojto 91:031413cf7a89 18
Kojto 91:031413cf7a89 19 #include "cmsis.h"
Kojto 91:031413cf7a89 20 #include "PortNames.h"
Kojto 91:031413cf7a89 21 #include "PeripheralNames.h"
Kojto 91:031413cf7a89 22 #include "PinNames.h"
Kojto 91:031413cf7a89 23
Kojto 91:031413cf7a89 24 #ifdef __cplusplus
Kojto 91:031413cf7a89 25 extern "C" {
Kojto 91:031413cf7a89 26 #endif
Kojto 91:031413cf7a89 27
bogdanm 92:4fc01daae5a5 28 #define I2C_SPI_PERIPHERAL_FOR_I2C 1
bogdanm 92:4fc01daae5a5 29 #define I2C_SPI_PERIPHERAL_FOR_SPI 2
bogdanm 92:4fc01daae5a5 30
bogdanm 92:4fc01daae5a5 31 typedef struct {
bogdanm 92:4fc01daae5a5 32 uint8_t usage; // I2C: 1, SPI: 2
bogdanm 92:4fc01daae5a5 33 uint8_t sda_mosi;
bogdanm 92:4fc01daae5a5 34 uint8_t scl_miso;
bogdanm 92:4fc01daae5a5 35 uint8_t sclk;
bogdanm 92:4fc01daae5a5 36 } i2c_spi_peripheral_t;
bogdanm 92:4fc01daae5a5 37
Kojto 91:031413cf7a89 38 struct serial_s {
Kojto 91:031413cf7a89 39 NRF_UART_Type *uart;
Kojto 91:031413cf7a89 40 int index;
Kojto 91:031413cf7a89 41 };
Kojto 91:031413cf7a89 42
Kojto 91:031413cf7a89 43 struct spi_s {
Kojto 91:031413cf7a89 44 NRF_SPI_Type *spi;
Kojto 91:031413cf7a89 45 NRF_SPIS_Type *spis;
bogdanm 92:4fc01daae5a5 46 uint8_t peripheral;
Kojto 91:031413cf7a89 47 };
Kojto 91:031413cf7a89 48
Kojto 91:031413cf7a89 49 struct port_s {
Kojto 91:031413cf7a89 50 __IO uint32_t *reg_cnf;
Kojto 91:031413cf7a89 51 __IO uint32_t *reg_out;
Kojto 91:031413cf7a89 52 __I uint32_t *reg_in;
Kojto 91:031413cf7a89 53 PortName port;
Kojto 91:031413cf7a89 54 uint32_t mask;
Kojto 91:031413cf7a89 55 };
Kojto 91:031413cf7a89 56
Kojto 91:031413cf7a89 57 struct pwmout_s {
Kojto 91:031413cf7a89 58 PWMName pwm;
Kojto 91:031413cf7a89 59 PinName pin;
Kojto 91:031413cf7a89 60 };
Kojto 91:031413cf7a89 61
Kojto 91:031413cf7a89 62 struct i2c_s {
Kojto 91:031413cf7a89 63 NRF_TWI_Type *i2c;
Kojto 91:031413cf7a89 64 PinName sda;
Kojto 91:031413cf7a89 65 PinName scl;
Kojto 91:031413cf7a89 66 int freq;
Kojto 91:031413cf7a89 67 uint8_t address_set;
bogdanm 92:4fc01daae5a5 68 uint8_t peripheral;
Kojto 91:031413cf7a89 69 };
Kojto 91:031413cf7a89 70
Kojto 91:031413cf7a89 71 struct analogin_s {
Kojto 91:031413cf7a89 72 ADCName adc;
Kojto 91:031413cf7a89 73 uint8_t adc_pin;
Kojto 91:031413cf7a89 74 };
Kojto 91:031413cf7a89 75
Kojto 91:031413cf7a89 76 struct gpio_irq_s {
Kojto 91:031413cf7a89 77 uint32_t ch;
Kojto 91:031413cf7a89 78 };
Kojto 91:031413cf7a89 79
Kojto 91:031413cf7a89 80 #include "gpio_object.h"
Kojto 91:031413cf7a89 81
Kojto 91:031413cf7a89 82 #ifdef __cplusplus
Kojto 91:031413cf7a89 83 }
Kojto 91:031413cf7a89 84 #endif
Kojto 91:031413cf7a89 85
Kojto 91:031413cf7a89 86 #endif