AG903ライブラリリファレンス
内容インデックスホーム
Body Source
本文ソース
1: 8: 9: 13: 14: #ifndef _AG903_GPIO_REGMAP_H_ 15: #define _AG903_GPIO_REGMAP_H_ 16: 17: 18: #include "AG903_regmap.h" 19: 20: #ifndef __I 21: 22: #define __I volatile const 23: #endif 24: #ifndef __O 25: 26: #define __O volatile 27: #endif 28: #ifndef __IO 29: 30: #define __IO volatile 31: #endif 32: 33: 34: typedef struct { 35: 36: union { 37: __IO uint32_t DTOUT; 38: }; 39: 40: union { 41: __I uint32_t DTIN; 42: }; 43: 44: union { 45: __IO uint32_t DIR; 46: }; 47: 48: union { 49: __IO uint32_t IOTYPE; 50: }; 51: 52: union { 53: __IO uint32_t POSEDGE; 54: }; 55: 56: union { 57: __IO uint32_t NEGEDGE; 58: }; 59: 60: union { 61: __I uint32_t EDGESTAT; 62: }; 63: 64: union { 65: __O uint32_t EDGECLR; 66: }; 67: 68: union { 69: __IO uint32_t INTMASK; 70: }; 71: 72: 73: }AG903_GPIOn_Type; 74: 75: #define AG903_GPIOn(ch) ((volatile AG903_GPIOn_Type *)(AG903_GPIO0_BASE + 0x100000 * ch)) 76: #define AG903_GPIOn_DTOUT(ch) AG903_GPIOn(ch)->DTOUT 77: #define AG903_GPIOn_DTIN(ch) AG903_GPIOn(ch)->DTIN 78: #define AG903_GPIOn_DIR(ch) AG903_GPIOn(ch)->DIR 79: #define AG903_GPIOn_IOTYPE(ch) AG903_GPIOn(ch)->IOTYPE 80: #define AG903_GPIOn_POSEDGE(ch) AG903_GPIOn(ch)->POSEDGE 81: #define AG903_GPIOn_NEGEDGE(ch) AG903_GPIOn(ch)->NEGEDGE 82: #define AG903_GPIOn_EDGESTAT(ch) AG903_GPIOn(ch)->EDGESTAT 83: #define AG903_GPIOn_EDGECLR(ch) AG903_GPIOn(ch)->EDGECLR 84: #define AG903_GPIOn_INTMASK(ch) AG903_GPIOn(ch)->INTMASK 85: 86: #define AG903_GPIO0 ((volatile AG903_GPIOn_Type *) AG903_GPIO0_BASE) 87: #define AG903_GPIO1 ((volatile AG903_GPIOn_Type *) AG903_GPIO1_BASE) 88: #define AG903_GPIO2 ((volatile AG903_GPIOn_Type *) AG903_GPIO2_BASE) 89: #define AG903_GPIO3 ((volatile AG903_GPIOn_Type *) AG903_GPIO3_BASE) 90: 91: 92: #define AG903_GPIOn_DTOUT_BIT_POS 0 93: #define AG903_GPIOn_DTOUT_BIT_MSK (0xffffffffUL << AG903_GPIOn_DTOUT_BIT_POS) 94: 95: #define AG903_GPIOn_DTIN_BIT_POS 0 96: #define AG903_GPIOn_DTIN_BIT_MSK (0xffffffffUL << AG903_GPIOn_DTIN_BIT_POS) 97: 98: #define AG903_GPIOn_DIR_BIT_POS 0 99: #define AG903_GPIOn_DIR_BIT_MSK (0xffffffffUL << AG903_GPIOn_DIR_BIT_POS) 100: 101: #define AG903_GPIOn_IOTYPE_BIT_POS 0 102: #define AG903_GPIOn_IOTYPE_BIT_MSK (0xffffffffUL << AG903_GPIOn_IOTYPE_BIT_POS) 103: 104: #define AG903_GPIOn_POSEDGE_BIT_POS 0 105: #define AG903_GPIOn_POSEDGE_BIT_MSK (0xffffffffUL << AG903_GPIOn_POSEDGE_BIT_POS) 106: 107: #define AG903_GPIOn_NEGEDGE_BIT_POS 0 108: #define AG903_GPIOn_NEGEDGE_BIT_MSK (0xffffffffUL << AG903_GPIOn_NEGEDGE_BIT_POS) 109: 110: #define AG903_GPIOn_EDGESTAT_BIT_POS 0 111: #define AG903_GPIOn_EDGESTAT_BIT_MSK (0xffffffffUL << AG903_GPIOn_EDGESTAT_BIT_POS) 112: 113: #define AG903_GPIOn_EDGECLR_BIT_POS 0 114: #define AG903_GPIOn_EDGECLR_BIT_MSK (0xffffffffUL << AG903_GPIOn_EDGECLR_BIT_POS) 115: 116: #define AG903_GPIOn_INTMASK_BIT_POS 0 117: #define AG903_GPIOn_INTMASK_BIT_MSK (0xffffffffUL << AG903_GPIOn_INTMASK_BIT_POS) 118: 119: #endif 120:
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.