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:
AnnaBridge
Date:
Fri Feb 16 16:16:41 2018 +0000
Revision:
161:aa5281ff4a02
Child:
165:d1b4690b3f8b
mbed library. Release version 159.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 161:aa5281ff4a02 1 /*******************************************************************************
AnnaBridge 161:aa5281ff4a02 2 * DISCLAIMER
AnnaBridge 161:aa5281ff4a02 3 * This software is supplied by Renesas Electronics Corporation and is only
AnnaBridge 161:aa5281ff4a02 4 * intended for use with Renesas products. No other uses are authorized. This
AnnaBridge 161:aa5281ff4a02 5 * software is owned by Renesas Electronics Corporation and is protected under
AnnaBridge 161:aa5281ff4a02 6 * all applicable laws, including copyright laws.
AnnaBridge 161:aa5281ff4a02 7 * THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING
AnnaBridge 161:aa5281ff4a02 8 * THIS SOFTWARE, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT
AnnaBridge 161:aa5281ff4a02 9 * LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
AnnaBridge 161:aa5281ff4a02 10 * AND NON-INFRINGEMENT. ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.
AnnaBridge 161:aa5281ff4a02 11 * TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY LAW, NEITHER RENESAS
AnnaBridge 161:aa5281ff4a02 12 * ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE
AnnaBridge 161:aa5281ff4a02 13 * FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR
AnnaBridge 161:aa5281ff4a02 14 * ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR ITS AFFILIATES HAVE
AnnaBridge 161:aa5281ff4a02 15 * BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
AnnaBridge 161:aa5281ff4a02 16 * Renesas reserves the right, without notice, to make changes to this software
AnnaBridge 161:aa5281ff4a02 17 * and to discontinue the availability of this software. By using this software,
AnnaBridge 161:aa5281ff4a02 18 * you agree to the additional terms and conditions found by accessing the
AnnaBridge 161:aa5281ff4a02 19 * following link:
AnnaBridge 161:aa5281ff4a02 20 * http://www.renesas.com/disclaimer*
AnnaBridge 161:aa5281ff4a02 21 * Copyright (C) 2013-2015 Renesas Electronics Corporation. All rights reserved.
AnnaBridge 161:aa5281ff4a02 22 *******************************************************************************/
AnnaBridge 161:aa5281ff4a02 23 /*******************************************************************************
AnnaBridge 161:aa5281ff4a02 24 * File Name : iodefine_typedef.h
AnnaBridge 161:aa5281ff4a02 25 * $Rev: $
AnnaBridge 161:aa5281ff4a02 26 * $Date:: $
AnnaBridge 161:aa5281ff4a02 27 * Description : Definition of I/O Register for RZ/A1H,M (V2.00h)
AnnaBridge 161:aa5281ff4a02 28 ******************************************************************************/
AnnaBridge 161:aa5281ff4a02 29 #ifndef IODEFINE_TYPEDEF_H
AnnaBridge 161:aa5281ff4a02 30 #define IODEFINE_TYPEDEF_H
AnnaBridge 161:aa5281ff4a02 31 /* ->QAC 0639 : Over 127 members (C90) */
AnnaBridge 161:aa5281ff4a02 32 /* ->QAC 0857 : Over 1024 #define (C90) */
AnnaBridge 161:aa5281ff4a02 33 /* ->MISRA 18.4 : Pack unpack union */ /* ->SEC M1.6.2 */
AnnaBridge 161:aa5281ff4a02 34 /* ->SEC M1.10.1 : Not magic number */
AnnaBridge 161:aa5281ff4a02 35
AnnaBridge 161:aa5281ff4a02 36 /* Shared types and macros for iodefine.h */
AnnaBridge 161:aa5281ff4a02 37
AnnaBridge 161:aa5281ff4a02 38 /***********************************************************************
AnnaBridge 161:aa5281ff4a02 39 * Macro: IODEFINE_H_VERSION
AnnaBridge 161:aa5281ff4a02 40 ************************************************************************/
AnnaBridge 161:aa5281ff4a02 41 #define IODEFINE_H_VERSION (200)
AnnaBridge 161:aa5281ff4a02 42
AnnaBridge 161:aa5281ff4a02 43
AnnaBridge 161:aa5281ff4a02 44 /***********************************************************************
AnnaBridge 161:aa5281ff4a02 45 * Enum: iodefine_byte_select_t
AnnaBridge 161:aa5281ff4a02 46 *
AnnaBridge 161:aa5281ff4a02 47 * R_IO_L - Low 16bit or Low 8 bit
AnnaBridge 161:aa5281ff4a02 48 * R_IO_H - High 16bit or Low 8 bit
AnnaBridge 161:aa5281ff4a02 49 * R_IO_LL - Low 8 bit
AnnaBridge 161:aa5281ff4a02 50 * R_IO_LH - Middle Low 8 bit
AnnaBridge 161:aa5281ff4a02 51 * R_IO_HL - Middle High 8 bit
AnnaBridge 161:aa5281ff4a02 52 * R_IO_HH - High 8 bit
AnnaBridge 161:aa5281ff4a02 53 ************************************************************************/
AnnaBridge 161:aa5281ff4a02 54 typedef enum iodefine_byte_select_t
AnnaBridge 161:aa5281ff4a02 55 {
AnnaBridge 161:aa5281ff4a02 56 R_IO_L = 0, R_IO_H = 1,
AnnaBridge 161:aa5281ff4a02 57 R_IO_LL= 0, R_IO_LH = 1, R_IO_HL = 2, R_IO_HH = 3
AnnaBridge 161:aa5281ff4a02 58 } iodefine_byte_select_t;
AnnaBridge 161:aa5281ff4a02 59
AnnaBridge 161:aa5281ff4a02 60
AnnaBridge 161:aa5281ff4a02 61 /***********************************************************************
AnnaBridge 161:aa5281ff4a02 62 * Type: iodefine_reg32_t
AnnaBridge 161:aa5281ff4a02 63 * 32/16/8 bit access register
AnnaBridge 161:aa5281ff4a02 64 *
AnnaBridge 161:aa5281ff4a02 65 * - Padding : sizeof(iodefine_reg32_t) == 4
AnnaBridge 161:aa5281ff4a02 66 * - Alignment(Offset) : &UINT32==0, &UINT16[0]==0, &UINT16[1]==2
AnnaBridge 161:aa5281ff4a02 67 * &UINT8[0]==0, &UINT8[1]==1, &UINT8[2]==2, &UINT8[3]==3
AnnaBridge 161:aa5281ff4a02 68 * - Endian : Independent (Same as CPU endian as register endian)
AnnaBridge 161:aa5281ff4a02 69 * - Bit-Order : Independent
AnnaBridge 161:aa5281ff4a02 70 ************************************************************************/
AnnaBridge 161:aa5281ff4a02 71 typedef union iodefine_reg32_t
AnnaBridge 161:aa5281ff4a02 72 {
AnnaBridge 161:aa5281ff4a02 73 volatile uint32_t UINT32; /* 32-bit Access */
AnnaBridge 161:aa5281ff4a02 74 volatile uint16_t UINT16[2]; /* 16-bit Access */
AnnaBridge 161:aa5281ff4a02 75 volatile uint8_t UINT8[4]; /* 8-bit Access */
AnnaBridge 161:aa5281ff4a02 76 } iodefine_reg32_t;
AnnaBridge 161:aa5281ff4a02 77
AnnaBridge 161:aa5281ff4a02 78
AnnaBridge 161:aa5281ff4a02 79 /***********************************************************************
AnnaBridge 161:aa5281ff4a02 80 * Type: iodefine_reg32_16_t
AnnaBridge 161:aa5281ff4a02 81 * 32/16 bit access register
AnnaBridge 161:aa5281ff4a02 82 *
AnnaBridge 161:aa5281ff4a02 83 * - Padding : sizeof(iodefine_reg32_16_t) == 4
AnnaBridge 161:aa5281ff4a02 84 * - Alignment(Offset) : &UINT32==0, &UINT16[0]==0, &UINT16[1]==2
AnnaBridge 161:aa5281ff4a02 85 * - Endian : Independent (Same as CPU endian as register endian)
AnnaBridge 161:aa5281ff4a02 86 * - Bit-Order : Independent
AnnaBridge 161:aa5281ff4a02 87 ************************************************************************/
AnnaBridge 161:aa5281ff4a02 88 typedef union iodefine_reg32_16_t
AnnaBridge 161:aa5281ff4a02 89 {
AnnaBridge 161:aa5281ff4a02 90 volatile uint32_t UINT32; /* 32-bit Access */
AnnaBridge 161:aa5281ff4a02 91 volatile uint16_t UINT16[2]; /* 16-bit Access */
AnnaBridge 161:aa5281ff4a02 92 } iodefine_reg32_16_t;
AnnaBridge 161:aa5281ff4a02 93
AnnaBridge 161:aa5281ff4a02 94
AnnaBridge 161:aa5281ff4a02 95 /***********************************************************************
AnnaBridge 161:aa5281ff4a02 96 * Type: iodefine_reg16_8_t
AnnaBridge 161:aa5281ff4a02 97 * 16/8 bit access register
AnnaBridge 161:aa5281ff4a02 98 *
AnnaBridge 161:aa5281ff4a02 99 * - Padding : sizeof(iodefine_reg16_8_t) == 2
AnnaBridge 161:aa5281ff4a02 100 * - Alignment(Offset) : &UINT16==0, &UINT8[0]==0, &UINT8[1]==1
AnnaBridge 161:aa5281ff4a02 101 * - Endian : Independent (Same as CPU endian as register endian)
AnnaBridge 161:aa5281ff4a02 102 * - Bit-Order : Independent
AnnaBridge 161:aa5281ff4a02 103 ************************************************************************/
AnnaBridge 161:aa5281ff4a02 104 typedef union iodefine_reg16_8_t
AnnaBridge 161:aa5281ff4a02 105 {
AnnaBridge 161:aa5281ff4a02 106 volatile uint16_t UINT16; /* 16-bit Access */
AnnaBridge 161:aa5281ff4a02 107 volatile uint8_t UINT8[2]; /* 8-bit Access */
AnnaBridge 161:aa5281ff4a02 108 } iodefine_reg16_8_t;
AnnaBridge 161:aa5281ff4a02 109
AnnaBridge 161:aa5281ff4a02 110
AnnaBridge 161:aa5281ff4a02 111 /* End of shared types and macros for iodefine.h */
AnnaBridge 161:aa5281ff4a02 112 /* <-SEC M1.10.1 */
AnnaBridge 161:aa5281ff4a02 113 /* <-MISRA 18.4 */ /* <-SEC M1.6.2 */
AnnaBridge 161:aa5281ff4a02 114 /* <-QAC 0857 */
AnnaBridge 161:aa5281ff4a02 115 /* <-QAC 0639 */
AnnaBridge 161:aa5281ff4a02 116 #endif