mbed library sources

Dependents:   Encrypted my_mbed lklk CyaSSL_DTLS_Cellular ... more

Superseded

This library was superseded by mbed-dev - https://os.mbed.com/users/mbed_official/code/mbed-dev/.

Development branch of the mbed library sources. This library is kept in synch with the latest changes from the mbed SDK and it is not guaranteed to work.

If you are looking for a stable and tested release, please import one of the official mbed library releases:

Import librarymbed

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

Committer:
mbed_official
Date:
Wed Jul 01 09:45:11 2015 +0100
Revision:
579:53297373a894
Child:
592:a274ee790e56
Synchronized with git revision d5b4d2ab9c47edb4dc5776e7177b0c2263459081

Full URL: https://github.com/mbedmicro/mbed/commit/d5b4d2ab9c47edb4dc5776e7177b0c2263459081/

Initial version of drivers for SAMR21

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 579:53297373a894 1 /* mbed Microcontroller Library
mbed_official 579:53297373a894 2 * Copyright (c) 2006-2013 ARM Limited
mbed_official 579:53297373a894 3 *
mbed_official 579:53297373a894 4 * Licensed under the Apache License, Version 2.0 (the "License");
mbed_official 579:53297373a894 5 * you may not use this file except in compliance with the License.
mbed_official 579:53297373a894 6 * You may obtain a copy of the License at
mbed_official 579:53297373a894 7 *
mbed_official 579:53297373a894 8 * http://www.apache.org/licenses/LICENSE-2.0
mbed_official 579:53297373a894 9 *
mbed_official 579:53297373a894 10 * Unless required by applicable law or agreed to in writing, software
mbed_official 579:53297373a894 11 * distributed under the License is distributed on an "AS IS" BASIS,
mbed_official 579:53297373a894 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
mbed_official 579:53297373a894 13 * See the License for the specific language governing permissions and
mbed_official 579:53297373a894 14 * limitations under the License.
mbed_official 579:53297373a894 15 */
mbed_official 579:53297373a894 16 #ifndef MBED_OBJECTS_H
mbed_official 579:53297373a894 17 #define MBED_OBJECTS_H
mbed_official 579:53297373a894 18
mbed_official 579:53297373a894 19 #include "cmsis.h"
mbed_official 579:53297373a894 20 #include "PortNames.h"
mbed_official 579:53297373a894 21 #include "PeripheralNames.h"
mbed_official 579:53297373a894 22 #include "gpio_object.h"
mbed_official 579:53297373a894 23
mbed_official 579:53297373a894 24 #ifdef __cplusplus
mbed_official 579:53297373a894 25 extern "C" {
mbed_official 579:53297373a894 26 #endif
mbed_official 579:53297373a894 27
mbed_official 579:53297373a894 28 struct gpio_irq_s {
mbed_official 579:53297373a894 29 uint32_t port;
mbed_official 579:53297373a894 30 uint32_t pin;
mbed_official 579:53297373a894 31 uint32_t ch;
mbed_official 579:53297373a894 32 };
mbed_official 579:53297373a894 33
mbed_official 579:53297373a894 34 struct port_s {
mbed_official 579:53297373a894 35 __IO uint32_t *OUTCLR;
mbed_official 579:53297373a894 36 __IO uint32_t *OUTSET;
mbed_official 579:53297373a894 37 __I uint32_t *IN;
mbed_official 579:53297373a894 38
mbed_official 579:53297373a894 39 PortName port;
mbed_official 579:53297373a894 40 uint32_t mask;
mbed_official 579:53297373a894 41 };
mbed_official 579:53297373a894 42
mbed_official 579:53297373a894 43 struct serial_s {
mbed_official 579:53297373a894 44 Sercom *usart;
mbed_official 579:53297373a894 45 uint32_t index;
mbed_official 579:53297373a894 46 uint32_t parity;
mbed_official 579:53297373a894 47 uint32_t stopbits;
mbed_official 579:53297373a894 48 uint32_t character_size;
mbed_official 579:53297373a894 49 uint32_t mux_setting;
mbed_official 579:53297373a894 50 uint32_t baudrate;
mbed_official 579:53297373a894 51 uint32_t pinmux_pad0;
mbed_official 579:53297373a894 52 uint32_t pinmux_pad1;
mbed_official 579:53297373a894 53 uint32_t pinmux_pad2;
mbed_official 579:53297373a894 54 uint32_t pinmux_pad3;
mbed_official 579:53297373a894 55 PinName rxpin;
mbed_official 579:53297373a894 56 PinName txpin;
mbed_official 579:53297373a894 57 #if DEVICE_SERIAL_ASYNCH
mbed_official 579:53297373a894 58 uint32_t events;
mbed_official 579:53297373a894 59 #endif
mbed_official 579:53297373a894 60 };
mbed_official 579:53297373a894 61 /*
mbed_official 579:53297373a894 62 struct pwmout_s {
mbed_official 579:53297373a894 63 __IO uint32_t *MR;
mbed_official 579:53297373a894 64 PWMName pwm;
mbed_official 579:53297373a894 65 };
mbed_official 579:53297373a894 66
mbed_official 579:53297373a894 67 struct serial_s {
mbed_official 579:53297373a894 68 LPC_UART_TypeDef *uart;
mbed_official 579:53297373a894 69 int index;
mbed_official 579:53297373a894 70 };
mbed_official 579:53297373a894 71
mbed_official 579:53297373a894 72 struct analogin_s {
mbed_official 579:53297373a894 73 ADCName adc;
mbed_official 579:53297373a894 74 };
mbed_official 579:53297373a894 75
mbed_official 579:53297373a894 76 struct dac_s {
mbed_official 579:53297373a894 77 DACName dac;
mbed_official 579:53297373a894 78 };
mbed_official 579:53297373a894 79
mbed_official 579:53297373a894 80 struct can_s {
mbed_official 579:53297373a894 81 LPC_CAN_TypeDef *dev;
mbed_official 579:53297373a894 82 int index;
mbed_official 579:53297373a894 83 };
mbed_official 579:53297373a894 84
mbed_official 579:53297373a894 85 struct i2c_s {
mbed_official 579:53297373a894 86 LPC_I2C_TypeDef *i2c;
mbed_official 579:53297373a894 87 };
mbed_official 579:53297373a894 88 */
mbed_official 579:53297373a894 89
mbed_official 579:53297373a894 90 struct spi_s {
mbed_official 579:53297373a894 91 Sercom *spi;
mbed_official 579:53297373a894 92 uint8_t mode;
mbed_official 579:53297373a894 93 #if DEVICE_SPI_ASYNCH
mbed_official 579:53297373a894 94 uint8_t status;
mbed_official 579:53297373a894 95 uint32_t mask;
mbed_official 579:53297373a894 96 uint32_t event;
mbed_official 579:53297373a894 97 void *tx_buffer;
mbed_official 579:53297373a894 98 void *rx_buffer;
mbed_official 579:53297373a894 99 uint8_t dma_usage;
mbed_official 579:53297373a894 100 #endif
mbed_official 579:53297373a894 101 };
mbed_official 579:53297373a894 102
mbed_official 579:53297373a894 103 #ifdef __cplusplus
mbed_official 579:53297373a894 104 }
mbed_official 579:53297373a894 105 #endif
mbed_official 579:53297373a894 106
mbed_official 579:53297373a894 107 #endif