123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299 |
- /******************************************************************************
- * Filename: hw_gpio.h
- * Revised: $Date: 2013-04-30 17:13:44 +0200 (Tue, 30 Apr 2013) $
- * Revision: $Revision: 9943 $
- *
- * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
- *
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * Neither the name of Texas Instruments Incorporated nor the names of
- * its contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- ******************************************************************************/
- #ifndef __HW_GPIO_H__
- #define __HW_GPIO_H__
- //*****************************************************************************
- //
- // The following are defines for the GPIO register offsets.
- //
- //*****************************************************************************
- #define GPIO_O_DATA 0x00000000 // This is the data register. In
- // software control mode, values
- // written in the GPIODATA register
- // are transferred onto the GPOUT
- // pins if the respective pins have
- // been configured as outputs
- // through the GPIODIR register. A
- // read from GPIODATA returns the
- // last bit value written if the
- // respective pins are configured
- // as output, or it returns the
- // value on the corresponding input
- // GPIN bit when these are
- // configured as inputs.
- #define GPIO_O_DIR 0x00000400 // The DIR register is the data
- // direction register. All bits are
- // cleared by a reset; therefore,
- // the GPIO pins are input by
- // default.
- #define GPIO_O_IS 0x00000404 // The IS register is the
- // interrupt sense register.
- #define GPIO_O_IBE 0x00000408 // The IBE register is the
- // interrupt both-edges register.
- // When the corresponding bit in IS
- // is set to detect edges, bits set
- // to high in IBE configure the
- // corresponding pin to detect both
- // rising and falling edges,
- // regardless of the corresponding
- // bit in the IEV (interrupt event
- // register). Clearing a bit
- // configures the pin to be
- // controlled by IEV.
- #define GPIO_O_IEV 0x0000040C // The IEV register is the
- // interrupt event register. Bits
- // set to high in IEV configure the
- // corresponding pin to detect
- // rising edges or high levels,
- // depending on the corresponding
- // bit value in IS. Clearing a bit
- // configures the pin to detect
- // falling edges or low levels,
- // depending on the corresponding
- // bit value in IS.
- #define GPIO_O_IE 0x00000410 // The IE register is the
- // interrupt mask register. Bits
- // set to high in IE allow the
- // corresponding pins to trigger
- // their individual interrupts and
- // the combined GPIOINTR line.
- // Clearing a bit disables
- // interrupt triggering on that
- // pin.
- #define GPIO_O_RIS 0x00000414 // The RIS register is the raw
- // interrupt status register. Bits
- // read high in RIS reflect the
- // status of interrupts trigger
- // conditions detected (raw, before
- // masking), indicating that all
- // the requirements are met, before
- // they are finally allowed to
- // trigger by IE. Bits read as 0
- // indicate that corresponding
- // input pins have not initiated an
- // interrupt.
- #define GPIO_O_MIS 0x00000418 // The MIS register is the masked
- // interrupt status register. Bits
- // read high in MIS reflect the
- // status of input lines triggering
- // an interrupt. Bits read as low
- // indicate that either no
- // interrupt has been generated, or
- // the interrupt is masked. MIS is
- // the state of the interrupt after
- // masking.
- #define GPIO_O_IC 0x0000041C // The IC register is the
- // interrupt clear register.
- // Writing 1 to a bit in this
- // register clears the
- // corresponding interrupt edge
- // detection logic register.
- // Writing 0 has no effect.
- #define GPIO_O_AFSEL 0x00000420 // The AFSEL register is the mode
- // control select register. Writing
- // 1 to any bit in this register
- // selects the hardware
- // (peripheral) control for the
- // corresponding GPIO line. All
- // bits are cleared by a reset,
- // therefore no GPIO line is set to
- // hardware control by default.
- #define GPIO_O_GPIOLOCK 0x00000520 // A write of the value 0x4C4F434B
- // to the GPIOLOCK register unlocks
- // the GPIO commit register
- // (GPIOCR) for write access. A
- // write of any other value
- // reapplies the lock, preventing
- // any register updates. Any write
- // to the commit register (GPIOCR)
- // causes the lock register to be
- // locked.
- #define GPIO_O_GPIOCR 0x00000524 // The GPIOCR register is the
- // commit register. The value of
- // the GPIOCR register determines
- // which bits of the AFSEL register
- // is committed when a write to the
- // AFSEL register is performed. If
- // a bit in the GPIOCR register is
- // 0, the data being written to the
- // corresponding bit in the AFSEL
- // register is not committed and
- // retains its previous value. If a
- // bit in the GPIOCR register is
- // set to 1, the data being written
- // to the corresponding bit of the
- // AFSEL register is committed to
- // the register and will reflect
- // the new value. The contents of
- // the GPIOCR register can only be
- // modified if the GPIOLOCK
- // register is unlocked. Writes to
- // the GPIOCR register will be
- // ignored if the GPIOLOCK register
- // is locked. Any write to the
- // commit register causes the lock
- // register to be locked.
- #define GPIO_O_PMUX 0x00000700 // The PMUX register can be used
- // to output external decouple
- // control and clock_32k on I/O
- // pins. Decouple control can be
- // output on specific PB pins and
- // clock_32k can be output on a
- // specific PA or PB pin. These
- // features override the current
- // setting of the selected pin when
- // enabled. The pin is set to
- // output, pull-up and -down
- // disabled, and analog mode
- // disabled.
- #define GPIO_O_P_EDGE_CTRL 0x00000704 // The port edge control register
- // is used to control which edge of
- // each port input causes that port
- // to generate a power-up interrupt
- // to the system.
- #define GPIO_O_USB_CTRL 0x00000708 // This register is used to
- // control which edge of the USB
- // controller input generates a
- // power-up interrupt to the
- // system.
- #define GPIO_O_PI_IEN 0x00000710 // The power-up interrupt enable
- // register selects, for its
- // corresponding port A-D pin,
- // whether interrupts are enabled
- // or disabled.
- #define GPIO_O_IRQ_DETECT_ACK 0x00000718 // If the IRQ detect ACK register
- // is read, the value returned can
- // be used to determine which
- // enabled I/O port is responsible
- // for creating a power-up
- // interrupt to the system. Writing
- // the IRQ detect ACK register is
- // used to clear any number of
- // individual port bits that may be
- // signaling that an edge was
- // detected as configured by the
- // port edge control register and
- // the interrupt control register.
- // There is a self-clearing
- // function to this register that
- // generates a reset pulse to clear
- // any interrupt which has its
- // corresponding bit set to 1.
- #define GPIO_O_USB_IRQ_ACK 0x0000071C // Same functionality as
- // IRQ_DETECT_ACK, but for USB
- #define GPIO_O_IRQ_DETECT_UNMASK \
- 0x00000720 // Same functionality as
- // IRQ_DETECT_ACK, but this
- // register handles masked
- // interrupts
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_DATA register.
- //
- //*****************************************************************************
- #define GPIO_DATA_DATA_M 0x000000FF // Input and output data
- #define GPIO_DATA_DATA_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_DIR register.
- //
- //*****************************************************************************
- #define GPIO_DIR_DIR_M 0x000000FF // Bits set: Corresponding pin is
- // output Bits cleared:
- // Corresponding pin is input
- #define GPIO_DIR_DIR_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_IS register.
- //
- //*****************************************************************************
- #define GPIO_IS_IS_M 0x000000FF // Bits set: Level on
- // corresponding pin is detected
- // Bits cleared: Edge on
- // corresponding pin is detected
- #define GPIO_IS_IS_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_IBE register.
- //
- //*****************************************************************************
- #define GPIO_IBE_IBE_M 0x000000FF // Bits set: Both edges on
- // corresponding pin trigger an
- // interrupt Bits cleared:
- // Interrupt generation event is
- // controlled by GPIOIEV Single
- // edge: Determined by
- // corresponding bit in GPIOIEV
- // register
- #define GPIO_IBE_IBE_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_IEV register.
- //
- //*****************************************************************************
- #define GPIO_IEV_IEV_M 0x000000FF // Bits set: Rising edges or high
- // levels on corresponding pin
- // trigger interrupts Bits cleared:
- // Falling edges or low levels on
- // corresponding pin trigger
- // interrupts
- #define GPIO_IEV_IEV_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_IE register.
- //
- //*****************************************************************************
- #define GPIO_IE_IE_M 0x000000FF // Bits set: Corresponding pin is
- // not masked Bits cleared:
- // Corresponding pin is masked
- #define GPIO_IE_IE_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_RIS register.
- //
- //*****************************************************************************
- #define GPIO_RIS_RIS_M 0x000000FF // Reflects the status of
- // interrupts trigger conditions
- // detected on pins (raw, before
- // masking) Bits set: Requirements
- // met by corresponding pins Bits
- // clear: Requirements not met
- #define GPIO_RIS_RIS_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_MIS register.
- //
- //*****************************************************************************
- #define GPIO_MIS_MIS_M 0x000000FF // Masked value of interrupt due
- // to corresponding pin Bits clear:
- // GPIO line interrupt not active
- // Bits set: GPIO line asserting
- // interrupt
- #define GPIO_MIS_MIS_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_IC register.
- //
- //*****************************************************************************
- #define GPIO_IC_IC_M 0x000000FF // Bit written as 1: Clears edge
- // detection logic Bit written as
- // 0: Has no effect
- #define GPIO_IC_IC_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_AFSEL register.
- //
- //*****************************************************************************
- #define GPIO_AFSEL_AFSEL_M 0x000000FF // Bit set: Enables hardware
- // (peripheral) control mode Bit
- // cleared: Enables software
- // control mode
- #define GPIO_AFSEL_AFSEL_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the
- // GPIO_O_GPIOLOCK register.
- //
- //*****************************************************************************
- #define GPIO_GPIOLOCK_LOCK_M 0xFFFFFFFF // A read of this register returns
- // the following values: Locked:
- // 0x00000001 Unlocked: 0x00000000
- #define GPIO_GPIOLOCK_LOCK_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_GPIOCR register.
- //
- //*****************************************************************************
- #define GPIO_GPIOCR_CR_M 0x000000FF // On a bit-wise basis, any bit
- // set allows the corresponding
- // GPIOAFSEL bit to be set to its
- // alternate function.
- #define GPIO_GPIOCR_CR_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_PMUX register.
- //
- //*****************************************************************************
- #define GPIO_PMUX_CKOEN 0x00000080 // Clock out enable When this bit
- // is set, the 32-kHz clock is
- // routed to either PA[0] or PB[7]
- // pins. PMUX.CKOPIN selects the
- // pin to use. This overrides the
- // current configuration setting
- // for this pin. The pullup or
- // pulldown is disabled and the
- // direction is set to output for
- // this pin.
- #define GPIO_PMUX_CKOEN_M 0x00000080
- #define GPIO_PMUX_CKOEN_S 7
- #define GPIO_PMUX_CKOPIN 0x00000010 // Decouple control pin select
- // This control only has relevance
- // when CKOEN is set. When 0, PA[0]
- // becomes the 32-kHz clock output.
- // When 1, PB[7] becomes the 32-kHz
- // clock output.
- #define GPIO_PMUX_CKOPIN_M 0x00000010
- #define GPIO_PMUX_CKOPIN_S 4
- #define GPIO_PMUX_DCEN 0x00000008 // Decouple control enable When
- // this bit is set, the on-die
- // digital regulator status is
- // routed to either PB[1] or PB[0]
- // pins. PMUX.DCPIN selects the pin
- // to use. This overrides the
- // current configuration setting
- // for this pin. The pullup or
- // pulldown is disabled and the
- // direction is set to output for
- // this pin.
- #define GPIO_PMUX_DCEN_M 0x00000008
- #define GPIO_PMUX_DCEN_S 3
- #define GPIO_PMUX_DCPIN 0x00000001 // Decouple control pin select
- // This control has relevance only
- // when DCEN is set. When 0, PB[1]
- // becomes the on-die digital
- // regulator status (1 indicates
- // the on-die digital regulator is
- // active); when 1, PB[0] becomes
- // the on-die digital regulator
- // status. NOTE: PB[1] and PB[0]
- // can also be controlled with
- // other override features. In
- // priority order for PB[1]: When
- // POR/BOD test mode is active,
- // PB[1] becomes the active low
- // brown-out detected indicator.
- // When DCEN is set and DCPIN is
- // not set, PB[1] becomes the
- // on-dir digital regulator status.
- // In priority order for PB[0]:
- // When POR/BOD test mode is
- // active, PB[0] becomes the
- // power-on-reset indicator. When
- // DCEN and DCPIN are set, PB[0]
- // becomes the on-die digital
- // regulator status.
- #define GPIO_PMUX_DCPIN_M 0x00000001
- #define GPIO_PMUX_DCPIN_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the
- // GPIO_O_P_EDGE_CTRL register.
- //
- //*****************************************************************************
- #define GPIO_P_EDGE_CTRL_PDIRC7 0x80000000 // Port D bit 7 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PDIRC7_M \
- 0x80000000
- #define GPIO_P_EDGE_CTRL_PDIRC7_S 31
- #define GPIO_P_EDGE_CTRL_PDIRC6 0x40000000 // Port D bit 6 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PDIRC6_M \
- 0x40000000
- #define GPIO_P_EDGE_CTRL_PDIRC6_S 30
- #define GPIO_P_EDGE_CTRL_PDIRC5 0x20000000 // Port D bit 5 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PDIRC5_M \
- 0x20000000
- #define GPIO_P_EDGE_CTRL_PDIRC5_S 29
- #define GPIO_P_EDGE_CTRL_PDIRC4 0x10000000 // Port D bit 4 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PDIRC4_M \
- 0x10000000
- #define GPIO_P_EDGE_CTRL_PDIRC4_S 28
- #define GPIO_P_EDGE_CTRL_PDIRC3 0x08000000 // Port D bit 3 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PDIRC3_M \
- 0x08000000
- #define GPIO_P_EDGE_CTRL_PDIRC3_S 27
- #define GPIO_P_EDGE_CTRL_PDIRC2 0x04000000 // Port D bit 2 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PDIRC2_M \
- 0x04000000
- #define GPIO_P_EDGE_CTRL_PDIRC2_S 26
- #define GPIO_P_EDGE_CTRL_PDIRC1 0x02000000 // Port D bit 1 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PDIRC1_M \
- 0x02000000
- #define GPIO_P_EDGE_CTRL_PDIRC1_S 25
- #define GPIO_P_EDGE_CTRL_PDIRC0 0x01000000 // Port D bit 0 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PDIRC0_M \
- 0x01000000
- #define GPIO_P_EDGE_CTRL_PDIRC0_S 24
- #define GPIO_P_EDGE_CTRL_PCIRC7 0x00800000 // Port C bit 7 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PCIRC7_M \
- 0x00800000
- #define GPIO_P_EDGE_CTRL_PCIRC7_S 23
- #define GPIO_P_EDGE_CTRL_PCIRC6 0x00400000 // Port C bit 6 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PCIRC6_M \
- 0x00400000
- #define GPIO_P_EDGE_CTRL_PCIRC6_S 22
- #define GPIO_P_EDGE_CTRL_PCIRC5 0x00200000 // Port C bit 5 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PCIRC5_M \
- 0x00200000
- #define GPIO_P_EDGE_CTRL_PCIRC5_S 21
- #define GPIO_P_EDGE_CTRL_PCIRC4 0x00100000 // Port C bit 4 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PCIRC4_M \
- 0x00100000
- #define GPIO_P_EDGE_CTRL_PCIRC4_S 20
- #define GPIO_P_EDGE_CTRL_PCIRC3 0x00080000 // Port C bit 3 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PCIRC3_M \
- 0x00080000
- #define GPIO_P_EDGE_CTRL_PCIRC3_S 19
- #define GPIO_P_EDGE_CTRL_PCIRC2 0x00040000 // Port C bit 2 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PCIRC2_M \
- 0x00040000
- #define GPIO_P_EDGE_CTRL_PCIRC2_S 18
- #define GPIO_P_EDGE_CTRL_PCIRC1 0x00020000 // Port C bit 1 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PCIRC1_M \
- 0x00020000
- #define GPIO_P_EDGE_CTRL_PCIRC1_S 17
- #define GPIO_P_EDGE_CTRL_PCIRC0 0x00010000 // Port C bit 0 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PCIRC0_M \
- 0x00010000
- #define GPIO_P_EDGE_CTRL_PCIRC0_S 16
- #define GPIO_P_EDGE_CTRL_PBIRC7 0x00008000 // Port B bit 7 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PBIRC7_M \
- 0x00008000
- #define GPIO_P_EDGE_CTRL_PBIRC7_S 15
- #define GPIO_P_EDGE_CTRL_PBIRC6 0x00004000 // Port B bit 6 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PBIRC6_M \
- 0x00004000
- #define GPIO_P_EDGE_CTRL_PBIRC6_S 14
- #define GPIO_P_EDGE_CTRL_PBIRC5 0x00002000 // Port B bit 5 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PBIRC5_M \
- 0x00002000
- #define GPIO_P_EDGE_CTRL_PBIRC5_S 13
- #define GPIO_P_EDGE_CTRL_PBIRC4 0x00001000 // Port B bit 4 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PBIRC4_M \
- 0x00001000
- #define GPIO_P_EDGE_CTRL_PBIRC4_S 12
- #define GPIO_P_EDGE_CTRL_PBIRC3 0x00000800 // Port B bit 3 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PBIRC3_M \
- 0x00000800
- #define GPIO_P_EDGE_CTRL_PBIRC3_S 11
- #define GPIO_P_EDGE_CTRL_PBIRC2 0x00000400 // Port B bit 2 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PBIRC2_M \
- 0x00000400
- #define GPIO_P_EDGE_CTRL_PBIRC2_S 10
- #define GPIO_P_EDGE_CTRL_PBIRC1 0x00000200 // Port B bit 1 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PBIRC1_M \
- 0x00000200
- #define GPIO_P_EDGE_CTRL_PBIRC1_S 9
- #define GPIO_P_EDGE_CTRL_PBIRC0 0x00000100 // Port B bit 0 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PBIRC0_M \
- 0x00000100
- #define GPIO_P_EDGE_CTRL_PBIRC0_S 8
- #define GPIO_P_EDGE_CTRL_PAIRC7 0x00000080 // Port A bit 7 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PAIRC7_M \
- 0x00000080
- #define GPIO_P_EDGE_CTRL_PAIRC7_S 7
- #define GPIO_P_EDGE_CTRL_PAIRC6 0x00000040 // Port A bit 6 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PAIRC6_M \
- 0x00000040
- #define GPIO_P_EDGE_CTRL_PAIRC6_S 6
- #define GPIO_P_EDGE_CTRL_PAIRC5 0x00000020 // Port A bit 5 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PAIRC5_M \
- 0x00000020
- #define GPIO_P_EDGE_CTRL_PAIRC5_S 5
- #define GPIO_P_EDGE_CTRL_PAIRC4 0x00000010 // Port A bit 4 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PAIRC4_M \
- 0x00000010
- #define GPIO_P_EDGE_CTRL_PAIRC4_S 4
- #define GPIO_P_EDGE_CTRL_PAIRC3 0x00000008 // Port A bit 3 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PAIRC3_M \
- 0x00000008
- #define GPIO_P_EDGE_CTRL_PAIRC3_S 3
- #define GPIO_P_EDGE_CTRL_PAIRC2 0x00000004 // Port A bit 2 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PAIRC2_M \
- 0x00000004
- #define GPIO_P_EDGE_CTRL_PAIRC2_S 2
- #define GPIO_P_EDGE_CTRL_PAIRC1 0x00000002 // Port A bit 1 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PAIRC1_M \
- 0x00000002
- #define GPIO_P_EDGE_CTRL_PAIRC1_S 1
- #define GPIO_P_EDGE_CTRL_PAIRC0 0x00000001 // Port A bit 0 interrupt request
- // condition: 0: Rising 1: Falling
- // edge
- #define GPIO_P_EDGE_CTRL_PAIRC0_M \
- 0x00000001
- #define GPIO_P_EDGE_CTRL_PAIRC0_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the
- // GPIO_O_USB_CTRL register.
- //
- //*****************************************************************************
- #define GPIO_USB_CTRL_USB_EDGE_CTL \
- 0x00000001 // Used to set the edge which
- // triggers the USB power up
- // interrupt 0: Rising 1: Falling
- #define GPIO_USB_CTRL_USB_EDGE_CTL_M \
- 0x00000001
- #define GPIO_USB_CTRL_USB_EDGE_CTL_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the GPIO_O_PI_IEN register.
- //
- //*****************************************************************************
- #define GPIO_PI_IEN_PDIEN7 0x80000000 // Port D bit 7 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PDIEN7_M 0x80000000
- #define GPIO_PI_IEN_PDIEN7_S 31
- #define GPIO_PI_IEN_PDIEN6 0x40000000 // Port D bit 6 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PDIEN6_M 0x40000000
- #define GPIO_PI_IEN_PDIEN6_S 30
- #define GPIO_PI_IEN_PDIEN5 0x20000000 // Port D bit 5 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PDIEN5_M 0x20000000
- #define GPIO_PI_IEN_PDIEN5_S 29
- #define GPIO_PI_IEN_PDIEN4 0x10000000 // Port D bit 4 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PDIEN4_M 0x10000000
- #define GPIO_PI_IEN_PDIEN4_S 28
- #define GPIO_PI_IEN_PDIEN3 0x08000000 // Port D bit 3 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PDIEN3_M 0x08000000
- #define GPIO_PI_IEN_PDIEN3_S 27
- #define GPIO_PI_IEN_PDIEN2 0x04000000 // Port D bit 2 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PDIEN2_M 0x04000000
- #define GPIO_PI_IEN_PDIEN2_S 26
- #define GPIO_PI_IEN_PDIEN1 0x02000000 // Port D bit 1 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PDIEN1_M 0x02000000
- #define GPIO_PI_IEN_PDIEN1_S 25
- #define GPIO_PI_IEN_PDIEN0 0x01000000 // Port D bit 0 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PDIEN0_M 0x01000000
- #define GPIO_PI_IEN_PDIEN0_S 24
- #define GPIO_PI_IEN_PCIEN7 0x00800000 // Port C bit 7 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PCIEN7_M 0x00800000
- #define GPIO_PI_IEN_PCIEN7_S 23
- #define GPIO_PI_IEN_PCIEN6 0x00400000 // Port C bit 6 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PCIEN6_M 0x00400000
- #define GPIO_PI_IEN_PCIEN6_S 22
- #define GPIO_PI_IEN_PCIEN5 0x00200000 // Port C bit 5 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PCIEN5_M 0x00200000
- #define GPIO_PI_IEN_PCIEN5_S 21
- #define GPIO_PI_IEN_PCIEN4 0x00100000 // Port C bit 4 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PCIEN4_M 0x00100000
- #define GPIO_PI_IEN_PCIEN4_S 20
- #define GPIO_PI_IEN_PCIEN3 0x00080000 // Port C bit 3 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PCIEN3_M 0x00080000
- #define GPIO_PI_IEN_PCIEN3_S 19
- #define GPIO_PI_IEN_PCIEN2 0x00040000 // Port C bit 2 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PCIEN2_M 0x00040000
- #define GPIO_PI_IEN_PCIEN2_S 18
- #define GPIO_PI_IEN_PCIEN1 0x00020000 // Port C bit 1 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PCIEN1_M 0x00020000
- #define GPIO_PI_IEN_PCIEN1_S 17
- #define GPIO_PI_IEN_PCIEN0 0x00010000 // Port C bit 0 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PCIEN0_M 0x00010000
- #define GPIO_PI_IEN_PCIEN0_S 16
- #define GPIO_PI_IEN_PBIEN7 0x00008000 // Port B bit 7 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PBIEN7_M 0x00008000
- #define GPIO_PI_IEN_PBIEN7_S 15
- #define GPIO_PI_IEN_PBIEN6 0x00004000 // Port B bit 6 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PBIEN6_M 0x00004000
- #define GPIO_PI_IEN_PBIEN6_S 14
- #define GPIO_PI_IEN_PBIEN5 0x00002000 // Port B bit 5 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PBIEN5_M 0x00002000
- #define GPIO_PI_IEN_PBIEN5_S 13
- #define GPIO_PI_IEN_PBIEN4 0x00001000 // Port B bit 4 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PBIEN4_M 0x00001000
- #define GPIO_PI_IEN_PBIEN4_S 12
- #define GPIO_PI_IEN_PBIEN3 0x00000800 // Port B bit 3 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PBIEN3_M 0x00000800
- #define GPIO_PI_IEN_PBIEN3_S 11
- #define GPIO_PI_IEN_PBIEN2 0x00000400 // Port B bit 2 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PBIEN2_M 0x00000400
- #define GPIO_PI_IEN_PBIEN2_S 10
- #define GPIO_PI_IEN_PBIEN1 0x00000200 // Port B bit 1 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PBIEN1_M 0x00000200
- #define GPIO_PI_IEN_PBIEN1_S 9
- #define GPIO_PI_IEN_PBIEN0 0x00000100 // Port B bit 0 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PBIEN0_M 0x00000100
- #define GPIO_PI_IEN_PBIEN0_S 8
- #define GPIO_PI_IEN_PAIEN7 0x00000080 // Port A bit 7 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PAIEN7_M 0x00000080
- #define GPIO_PI_IEN_PAIEN7_S 7
- #define GPIO_PI_IEN_PAIEN6 0x00000040 // Port A bit 6 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PAIEN6_M 0x00000040
- #define GPIO_PI_IEN_PAIEN6_S 6
- #define GPIO_PI_IEN_PAIEN5 0x00000020 // Port A bit 5 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PAIEN5_M 0x00000020
- #define GPIO_PI_IEN_PAIEN5_S 5
- #define GPIO_PI_IEN_PAIEN4 0x00000010 // Port A bit 4 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PAIEN4_M 0x00000010
- #define GPIO_PI_IEN_PAIEN4_S 4
- #define GPIO_PI_IEN_PAIEN3 0x00000008 // Port A bit 3 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PAIEN3_M 0x00000008
- #define GPIO_PI_IEN_PAIEN3_S 3
- #define GPIO_PI_IEN_PAIEN2 0x00000004 // Port A bit 2 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PAIEN2_M 0x00000004
- #define GPIO_PI_IEN_PAIEN2_S 2
- #define GPIO_PI_IEN_PAIEN1 0x00000002 // Port A bit 1 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PAIEN1_M 0x00000002
- #define GPIO_PI_IEN_PAIEN1_S 1
- #define GPIO_PI_IEN_PAIEN0 0x00000001 // Port A bit 0 interrupt enable:
- // 1: Enabled 2: Disabled
- #define GPIO_PI_IEN_PAIEN0_M 0x00000001
- #define GPIO_PI_IEN_PAIEN0_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the
- // GPIO_O_IRQ_DETECT_ACK register.
- //
- //*****************************************************************************
- #define GPIO_IRQ_DETECT_ACK_PDIACK7 \
- 0x80000000 // Port D bit 7 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PDIACK7_M \
- 0x80000000
- #define GPIO_IRQ_DETECT_ACK_PDIACK7_S 31
- #define GPIO_IRQ_DETECT_ACK_PDIACK6 \
- 0x40000000 // Port D bit 6 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PDIACK6_M \
- 0x40000000
- #define GPIO_IRQ_DETECT_ACK_PDIACK6_S 30
- #define GPIO_IRQ_DETECT_ACK_PDIACK5 \
- 0x20000000 // Port D bit 5 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PDIACK5_M \
- 0x20000000
- #define GPIO_IRQ_DETECT_ACK_PDIACK5_S 29
- #define GPIO_IRQ_DETECT_ACK_PDIACK4 \
- 0x10000000 // Port D bit 4 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PDIACK4_M \
- 0x10000000
- #define GPIO_IRQ_DETECT_ACK_PDIACK4_S 28
- #define GPIO_IRQ_DETECT_ACK_PDIACK3 \
- 0x08000000 // Port D bit 3 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PDIACK3_M \
- 0x08000000
- #define GPIO_IRQ_DETECT_ACK_PDIACK3_S 27
- #define GPIO_IRQ_DETECT_ACK_PDIACK2 \
- 0x04000000 // Port D bit 2 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PDIACK2_M \
- 0x04000000
- #define GPIO_IRQ_DETECT_ACK_PDIACK2_S 26
- #define GPIO_IRQ_DETECT_ACK_PDIACK1 \
- 0x02000000 // Port D bit 1 masked interrupt
- // status: 1: Detected0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PDIACK1_M \
- 0x02000000
- #define GPIO_IRQ_DETECT_ACK_PDIACK1_S 25
- #define GPIO_IRQ_DETECT_ACK_PDIACK0 \
- 0x01000000 // Port D bit 0 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PDIACK0_M \
- 0x01000000
- #define GPIO_IRQ_DETECT_ACK_PDIACK0_S 24
- #define GPIO_IRQ_DETECT_ACK_PCIACK7 \
- 0x00800000 // Port C bit 7 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PCIACK7_M \
- 0x00800000
- #define GPIO_IRQ_DETECT_ACK_PCIACK7_S 23
- #define GPIO_IRQ_DETECT_ACK_PCIACK6 \
- 0x00400000 // Port C bit 6 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PCIACK6_M \
- 0x00400000
- #define GPIO_IRQ_DETECT_ACK_PCIACK6_S 22
- #define GPIO_IRQ_DETECT_ACK_PCIACK5 \
- 0x00200000 // Port C bit 5 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PCIACK5_M \
- 0x00200000
- #define GPIO_IRQ_DETECT_ACK_PCIACK5_S 21
- #define GPIO_IRQ_DETECT_ACK_PCIACK4 \
- 0x00100000 // Port C bit 4 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PCIACK4_M \
- 0x00100000
- #define GPIO_IRQ_DETECT_ACK_PCIACK4_S 20
- #define GPIO_IRQ_DETECT_ACK_PCIACK3 \
- 0x00080000 // Port C bit 3 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PCIACK3_M \
- 0x00080000
- #define GPIO_IRQ_DETECT_ACK_PCIACK3_S 19
- #define GPIO_IRQ_DETECT_ACK_PCIACK2 \
- 0x00040000 // Port C bit 2 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PCIACK2_M \
- 0x00040000
- #define GPIO_IRQ_DETECT_ACK_PCIACK2_S 18
- #define GPIO_IRQ_DETECT_ACK_PCIACK1 \
- 0x00020000 // Port C bit 1 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PCIACK1_M \
- 0x00020000
- #define GPIO_IRQ_DETECT_ACK_PCIACK1_S 17
- #define GPIO_IRQ_DETECT_ACK_PCIACK0 \
- 0x00010000 // Port C bit 0 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PCIACK0_M \
- 0x00010000
- #define GPIO_IRQ_DETECT_ACK_PCIACK0_S 16
- #define GPIO_IRQ_DETECT_ACK_PBIACK7 \
- 0x00008000 // Port B bit 7 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PBIACK7_M \
- 0x00008000
- #define GPIO_IRQ_DETECT_ACK_PBIACK7_S 15
- #define GPIO_IRQ_DETECT_ACK_PBIACK6 \
- 0x00004000 // Port B bit 6 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PBIACK6_M \
- 0x00004000
- #define GPIO_IRQ_DETECT_ACK_PBIACK6_S 14
- #define GPIO_IRQ_DETECT_ACK_PBIACK5 \
- 0x00002000 // Port B bit 5 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PBIACK5_M \
- 0x00002000
- #define GPIO_IRQ_DETECT_ACK_PBIACK5_S 13
- #define GPIO_IRQ_DETECT_ACK_PBIACK4 \
- 0x00001000 // Port B bit 4 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PBIACK4_M \
- 0x00001000
- #define GPIO_IRQ_DETECT_ACK_PBIACK4_S 12
- #define GPIO_IRQ_DETECT_ACK_PBIACK3 \
- 0x00000800 // Port B bit 3 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PBIACK3_M \
- 0x00000800
- #define GPIO_IRQ_DETECT_ACK_PBIACK3_S 11
- #define GPIO_IRQ_DETECT_ACK_PBIACK2 \
- 0x00000400 // Port B bit 2 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PBIACK2_M \
- 0x00000400
- #define GPIO_IRQ_DETECT_ACK_PBIACK2_S 10
- #define GPIO_IRQ_DETECT_ACK_PBIACK1 \
- 0x00000200 // Port B bit 1 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PBIACK1_M \
- 0x00000200
- #define GPIO_IRQ_DETECT_ACK_PBIACK1_S 9
- #define GPIO_IRQ_DETECT_ACK_PBIACK0 \
- 0x00000100 // Port B bit 0 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PBIACK0_M \
- 0x00000100
- #define GPIO_IRQ_DETECT_ACK_PBIACK0_S 8
- #define GPIO_IRQ_DETECT_ACK_PAIACK7 \
- 0x00000080 // Port A bit 7 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PAIACK7_M \
- 0x00000080
- #define GPIO_IRQ_DETECT_ACK_PAIACK7_S 7
- #define GPIO_IRQ_DETECT_ACK_PAIACK6 \
- 0x00000040 // Port A bit 6 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PAIACK6_M \
- 0x00000040
- #define GPIO_IRQ_DETECT_ACK_PAIACK6_S 6
- #define GPIO_IRQ_DETECT_ACK_PAIACK5 \
- 0x00000020 // Port A bit 5 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PAIACK5_M \
- 0x00000020
- #define GPIO_IRQ_DETECT_ACK_PAIACK5_S 5
- #define GPIO_IRQ_DETECT_ACK_PAIACK4 \
- 0x00000010 // Port A bit 4 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PAIACK4_M \
- 0x00000010
- #define GPIO_IRQ_DETECT_ACK_PAIACK4_S 4
- #define GPIO_IRQ_DETECT_ACK_PAIACK3 \
- 0x00000008 // Port A bit 3 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PAIACK3_M \
- 0x00000008
- #define GPIO_IRQ_DETECT_ACK_PAIACK3_S 3
- #define GPIO_IRQ_DETECT_ACK_PAIACK2 \
- 0x00000004 // Port A bit 2 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PAIACK2_M \
- 0x00000004
- #define GPIO_IRQ_DETECT_ACK_PAIACK2_S 2
- #define GPIO_IRQ_DETECT_ACK_PAIACK1 \
- 0x00000002 // Port A bit 1 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PAIACK1_M \
- 0x00000002
- #define GPIO_IRQ_DETECT_ACK_PAIACK1_S 1
- #define GPIO_IRQ_DETECT_ACK_PAIACK0 \
- 0x00000001 // Port A bit 0 masked interrupt
- // status: 1: Detected 0: Not
- // detected
- #define GPIO_IRQ_DETECT_ACK_PAIACK0_M \
- 0x00000001
- #define GPIO_IRQ_DETECT_ACK_PAIACK0_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the
- // GPIO_O_USB_IRQ_ACK register.
- //
- //*****************************************************************************
- #define GPIO_USB_IRQ_ACK_USBACK 0x00000001 // USB masked interrupt status: 1:
- // Detected 0: Not detected
- #define GPIO_USB_IRQ_ACK_USBACK_M \
- 0x00000001
- #define GPIO_USB_IRQ_ACK_USBACK_S 0
- //*****************************************************************************
- //
- // The following are defines for the bit fields in the
- // GPIO_O_IRQ_DETECT_UNMASK register.
- //
- //*****************************************************************************
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK7 \
- 0x80000000 // Port D bit 7 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK7_M \
- 0x80000000
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK7_S 31
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK6 \
- 0x40000000 // Port D bit 6 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK6_M \
- 0x40000000
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK6_S 30
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK5 \
- 0x20000000 // Port D bit 5 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK5_M \
- 0x20000000
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK5_S 29
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK4 \
- 0x10000000 // Port D bit 4 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK4_M \
- 0x10000000
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK4_S 28
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK3 \
- 0x08000000 // Port D bit 3 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK3_M \
- 0x08000000
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK3_S 27
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK2 \
- 0x04000000 // Port D bit 2 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK2_M \
- 0x04000000
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK2_S 26
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK1 \
- 0x02000000 // Port D bit 1 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK1_M \
- 0x02000000
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK1_S 25
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK0 \
- 0x01000000 // Port D bit 0 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK0_M \
- 0x01000000
- #define GPIO_IRQ_DETECT_UNMASK_PDIACK0_S 24
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK7 \
- 0x00800000 // Port C bit 7 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK7_M \
- 0x00800000
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK7_S 23
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK6 \
- 0x00400000 // Port C bit 6 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK6_M \
- 0x00400000
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK6_S 22
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK5 \
- 0x00200000 // Port C bit 5 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK5_M \
- 0x00200000
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK5_S 21
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK4 \
- 0x00100000 // Port C bit 4 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK4_M \
- 0x00100000
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK4_S 20
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK3 \
- 0x00080000 // Port C bit 3 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK3_M \
- 0x00080000
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK3_S 19
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK2 \
- 0x00040000 // Port C bit 2 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK2_M \
- 0x00040000
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK2_S 18
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK1 \
- 0x00020000 // Port C bit 1 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK1_M \
- 0x00020000
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK1_S 17
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK0 \
- 0x00010000 // Port C bit 0 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK0_M \
- 0x00010000
- #define GPIO_IRQ_DETECT_UNMASK_PCIACK0_S 16
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK7 \
- 0x00008000 // Port B bit 7 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK7_M \
- 0x00008000
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK7_S 15
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK6 \
- 0x00004000 // Port B bit 6 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK6_M \
- 0x00004000
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK6_S 14
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK5 \
- 0x00002000 // Port B bit 5 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK5_M \
- 0x00002000
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK5_S 13
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK4 \
- 0x00001000 // Port B bit 4 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK4_M \
- 0x00001000
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK4_S 12
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK3 \
- 0x00000800 // Port B bit 3 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK3_M \
- 0x00000800
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK3_S 11
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK2 \
- 0x00000400 // Port B bit 2 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK2_M \
- 0x00000400
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK2_S 10
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK1 \
- 0x00000200 // Port B bit 1 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK1_M \
- 0x00000200
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK1_S 9
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK0 \
- 0x00000100 // Port B bit 0 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK0_M \
- 0x00000100
- #define GPIO_IRQ_DETECT_UNMASK_PBIACK0_S 8
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK7 \
- 0x00000080 // Port A bit 7 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK7_M \
- 0x00000080
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK7_S 7
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK6 \
- 0x00000040 // Port A bit 6 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK6_M \
- 0x00000040
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK6_S 6
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK5 \
- 0x00000020 // Port A bit 5 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK5_M \
- 0x00000020
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK5_S 5
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK4 \
- 0x00000010 // Port A bit 4 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK4_M \
- 0x00000010
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK4_S 4
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK3 \
- 0x00000008 // Port A bit 3 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK3_M \
- 0x00000008
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK3_S 3
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK2 \
- 0x00000004 // Port A bit 2 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK2_M \
- 0x00000004
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK2_S 2
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK1 \
- 0x00000002 // Port A bit 1 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK1_M \
- 0x00000002
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK1_S 1
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK0 \
- 0x00000001 // Port A bit 0 unmasked interrupt
- // status: 1: Detected 0:
- // Undetected
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK0_M \
- 0x00000001
- #define GPIO_IRQ_DETECT_UNMASK_PAIACK0_S 0
- #endif // __HW_GPIO_H__
|