version_2.0

Dependents:   cc3000_ping_demo_try_2

Fork of mbed by mbed official

Committer:
emilmont
Date:
Mon Feb 18 11:12:58 2013 +0000
Revision:
59:0883845fe643
Parent:
54:71b101360fb9
Add pinmap NC terminators for LPC1768 CAN.
Update the license from MIT to Apache v2.
Make the semihost code target independent using opportune defines for the UID and MAC.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
emilmont 44:24d45a770a51 1 /* mbed Microcontroller Library
emilmont 54:71b101360fb9 2 * Copyright (c) 2006-2013 ARM Limited
emilmont 44:24d45a770a51 3 *
emilmont 59:0883845fe643 4 * Licensed under the Apache License, Version 2.0 (the "License");
emilmont 59:0883845fe643 5 * you may not use this file except in compliance with the License.
emilmont 59:0883845fe643 6 * You may obtain a copy of the License at
emilmont 59:0883845fe643 7 *
emilmont 59:0883845fe643 8 * http://www.apache.org/licenses/LICENSE-2.0
emilmont 44:24d45a770a51 9 *
emilmont 59:0883845fe643 10 * Unless required by applicable law or agreed to in writing, software
emilmont 59:0883845fe643 11 * distributed under the License is distributed on an "AS IS" BASIS,
emilmont 59:0883845fe643 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
emilmont 59:0883845fe643 13 * See the License for the specific language governing permissions and
emilmont 59:0883845fe643 14 * limitations under the License.
emilmont 44:24d45a770a51 15 */
emilmont 44:24d45a770a51 16 #ifndef MBED_OBJECTS_H
emilmont 44:24d45a770a51 17 #define MBED_OBJECTS_H
emilmont 44:24d45a770a51 18
emilmont 44:24d45a770a51 19 #include "cmsis.h"
emilmont 44:24d45a770a51 20 #include "PortNames.h"
emilmont 44:24d45a770a51 21 #include "PeripheralNames.h"
emilmont 44:24d45a770a51 22 #include "PinNames.h"
emilmont 44:24d45a770a51 23
emilmont 44:24d45a770a51 24 #ifdef __cplusplus
emilmont 44:24d45a770a51 25 extern "C" {
emilmont 44:24d45a770a51 26 #endif
emilmont 44:24d45a770a51 27
emilmont 44:24d45a770a51 28 struct gpio_irq_s {
emilmont 44:24d45a770a51 29 uint32_t port;
emilmont 44:24d45a770a51 30 uint32_t pin;
emilmont 44:24d45a770a51 31 uint32_t ch;
emilmont 44:24d45a770a51 32 };
emilmont 44:24d45a770a51 33
emilmont 44:24d45a770a51 34 struct port_s {
emilmont 44:24d45a770a51 35 __IO uint32_t *reg_dir;
emilmont 44:24d45a770a51 36 __IO uint32_t *reg_out;
emilmont 44:24d45a770a51 37 __I uint32_t *reg_in;
emilmont 44:24d45a770a51 38 PortName port;
emilmont 44:24d45a770a51 39 uint32_t mask;
emilmont 44:24d45a770a51 40 };
emilmont 44:24d45a770a51 41
emilmont 44:24d45a770a51 42 struct pwmout_s {
emilmont 44:24d45a770a51 43 __IO uint32_t *MR;
emilmont 44:24d45a770a51 44 PWMName pwm;
emilmont 44:24d45a770a51 45 };
emilmont 44:24d45a770a51 46
emilmont 44:24d45a770a51 47 struct serial_s {
emilmont 44:24d45a770a51 48 LPC_UART_TypeDef *uart;
emilmont 44:24d45a770a51 49 int index;
emilmont 44:24d45a770a51 50 };
emilmont 44:24d45a770a51 51
emilmont 44:24d45a770a51 52 struct analogin_s {
emilmont 44:24d45a770a51 53 ADCName adc;
emilmont 44:24d45a770a51 54 };
emilmont 44:24d45a770a51 55
emilmont 44:24d45a770a51 56 struct dac_s {
emilmont 44:24d45a770a51 57 DACName dac;
emilmont 44:24d45a770a51 58 };
emilmont 44:24d45a770a51 59
emilmont 44:24d45a770a51 60 struct can_s {
emilmont 44:24d45a770a51 61 LPC_CAN_TypeDef *dev;
emilmont 44:24d45a770a51 62 };
emilmont 44:24d45a770a51 63
emilmont 44:24d45a770a51 64 struct i2c_s {
emilmont 44:24d45a770a51 65 LPC_I2C_TypeDef *i2c;
emilmont 44:24d45a770a51 66 };
emilmont 44:24d45a770a51 67
emilmont 44:24d45a770a51 68 struct spi_s {
emilmont 44:24d45a770a51 69 LPC_SSP_TypeDef *spi;
emilmont 44:24d45a770a51 70 };
emilmont 44:24d45a770a51 71
emilmont 44:24d45a770a51 72 #include "gpio_object.h"
emilmont 44:24d45a770a51 73
emilmont 44:24d45a770a51 74 #ifdef __cplusplus
emilmont 44:24d45a770a51 75 }
emilmont 44:24d45a770a51 76 #endif
emilmont 44:24d45a770a51 77
emilmont 44:24d45a770a51 78 #endif