1252 lines
63 KiB
C
1252 lines
63 KiB
C
//*****************************************************************************
|
|
//
|
|
// rom.h - Macros to facilitate calling functions in the ROM.
|
|
//
|
|
// Copyright (c) 2007-2008 Luminary Micro, Inc. All rights reserved.
|
|
//
|
|
// Software License Agreement
|
|
//
|
|
// Luminary Micro, Inc. (LMI) is supplying this software for use solely and
|
|
// exclusively on LMI's microcontroller products.
|
|
//
|
|
// The software is owned by LMI and/or its suppliers, and is protected under
|
|
// applicable copyright laws. All rights are reserved. You may not combine
|
|
// this software with "viral" open-source software in order to form a larger
|
|
// program. Any use in violation of the foregoing restrictions may subject
|
|
// the user to criminal sanctions under applicable laws, as well as to civil
|
|
// liability for the breach of the terms and conditions of this license.
|
|
//
|
|
// THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
|
|
// OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
|
|
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
|
|
// LMI SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
|
|
// CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
|
|
//
|
|
// This is part of revision 2523 of the Stellaris Peripheral Driver Library.
|
|
//
|
|
//*****************************************************************************
|
|
|
|
#ifndef __ROM_H__
|
|
#define __ROM_H__
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Pointers to the main API tables.
|
|
//
|
|
//*****************************************************************************
|
|
#define ROM_APITABLE ((unsigned long *)0x01000010)
|
|
#define ROM_VERSION (ROM_APITABLE[0])
|
|
#define ROM_UARTTABLE ((unsigned long *)(ROM_APITABLE[1]))
|
|
#define ROM_SSITABLE ((unsigned long *)(ROM_APITABLE[2]))
|
|
#define ROM_I2CTABLE ((unsigned long *)(ROM_APITABLE[3]))
|
|
#define ROM_GPIOTABLE ((unsigned long *)(ROM_APITABLE[4]))
|
|
#define ROM_ADCTABLE ((unsigned long *)(ROM_APITABLE[5]))
|
|
#define ROM_COMPARATORTABLE ((unsigned long *)(ROM_APITABLE[6]))
|
|
#define ROM_FLASHTABLE ((unsigned long *)(ROM_APITABLE[7]))
|
|
#define ROM_PWMTABLE ((unsigned long *)(ROM_APITABLE[8]))
|
|
#define ROM_QEITABLE ((unsigned long *)(ROM_APITABLE[9]))
|
|
#define ROM_SYSTICKTABLE ((unsigned long *)(ROM_APITABLE[10]))
|
|
#define ROM_TIMERTABLE ((unsigned long *)(ROM_APITABLE[11]))
|
|
#define ROM_WATCHDOGTABLE ((unsigned long *)(ROM_APITABLE[12]))
|
|
#define ROM_SYSCTLTABLE ((unsigned long *)(ROM_APITABLE[13]))
|
|
#define ROM_INTERRUPTTABLE ((unsigned long *)(ROM_APITABLE[14]))
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the ADC API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCSequenceDataGet \
|
|
((long (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum, \
|
|
unsigned long *pulBuffer))ROM_ADCTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCIntDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum))ROM_ADCTABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCIntEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum))ROM_ADCTABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCIntStatus \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum, \
|
|
tBoolean bMasked))ROM_ADCTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCIntClear \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum))ROM_ADCTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCSequenceEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum))ROM_ADCTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCSequenceDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum))ROM_ADCTABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCSequenceConfigure \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum, \
|
|
unsigned long ulTrigger, \
|
|
unsigned long ulPriority))ROM_ADCTABLE[7])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCSequenceStepConfigure \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum, \
|
|
unsigned long ulStep, \
|
|
unsigned long ulConfig))ROM_ADCTABLE[8])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCSequenceOverflow \
|
|
((long (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum))ROM_ADCTABLE[9])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCSequenceOverflowClear \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum))ROM_ADCTABLE[10])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCSequenceUnderflow \
|
|
((long (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum))ROM_ADCTABLE[11])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCSequenceUnderflowClear \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum))ROM_ADCTABLE[12])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCProcessorTrigger \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulSequenceNum))ROM_ADCTABLE[13])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ADCHardwareOversampleConfigure \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulFactor))ROM_ADCTABLE[14])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the Comparator API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ComparatorIntClear \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulComp))ROM_COMPARATORTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ComparatorConfigure \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulComp, \
|
|
unsigned long ulConfig))ROM_COMPARATORTABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ComparatorRefSet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulRef))ROM_COMPARATORTABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ComparatorValueGet \
|
|
((tBoolean (*)(unsigned long ulBase, \
|
|
unsigned long ulComp))ROM_COMPARATORTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ComparatorIntEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulComp))ROM_COMPARATORTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ComparatorIntDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulComp))ROM_COMPARATORTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_ComparatorIntStatus \
|
|
((tBoolean (*)(unsigned long ulBase, \
|
|
unsigned long ulComp, \
|
|
tBoolean bMasked))ROM_COMPARATORTABLE[6])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the Flash API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashProgram \
|
|
((long (*)(unsigned long *pulData, \
|
|
unsigned long ulAddress, \
|
|
unsigned long ulCount))ROM_FLASHTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashUsecGet \
|
|
((unsigned long (*)(void))ROM_FLASHTABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashUsecSet \
|
|
((void (*)(unsigned long ulClocks))ROM_FLASHTABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashErase \
|
|
((long (*)(unsigned long ulAddress))ROM_FLASHTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashProtectGet \
|
|
((tFlashProtection (*)(unsigned long ulAddress))ROM_FLASHTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashProtectSet \
|
|
((long (*)(unsigned long ulAddress, \
|
|
tFlashProtection eProtect))ROM_FLASHTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashProtectSave \
|
|
((long (*)(void))ROM_FLASHTABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashUserGet \
|
|
((long (*)(unsigned long *pulUser0, \
|
|
unsigned long *pulUser1))ROM_FLASHTABLE[7])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashUserSet \
|
|
((long (*)(unsigned long ulUser0, \
|
|
unsigned long ulUser1))ROM_FLASHTABLE[8])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashUserSave \
|
|
((long (*)(void))ROM_FLASHTABLE[9])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashIntEnable \
|
|
((void (*)(unsigned long ulIntFlags))ROM_FLASHTABLE[10])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashIntDisable \
|
|
((void (*)(unsigned long ulIntFlags))ROM_FLASHTABLE[11])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashIntGetStatus \
|
|
((unsigned long (*)(tBoolean bMasked))ROM_FLASHTABLE[12])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_FlashIntClear \
|
|
((void (*)(unsigned long ulIntFlags))ROM_FLASHTABLE[13])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the GPIO API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinWrite \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins, \
|
|
unsigned char ucVal))ROM_GPIOTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIODirModeSet \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins, \
|
|
unsigned long ulPinIO))ROM_GPIOTABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIODirModeGet \
|
|
((unsigned long (*)(unsigned long ulPort, \
|
|
unsigned char ucPin))ROM_GPIOTABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOIntTypeSet \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins, \
|
|
unsigned long ulIntType))ROM_GPIOTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOIntTypeGet \
|
|
((unsigned long (*)(unsigned long ulPort, \
|
|
unsigned char ucPin))ROM_GPIOTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPadConfigSet \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins, \
|
|
unsigned long ulStrength, \
|
|
unsigned long ulPadType))ROM_GPIOTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPadConfigGet \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPin, \
|
|
unsigned long *pulStrength, \
|
|
unsigned long *pulPadType))ROM_GPIOTABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinIntEnable \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[7])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinIntDisable \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[8])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinIntStatus \
|
|
((long (*)(unsigned long ulPort, \
|
|
tBoolean bMasked))ROM_GPIOTABLE[9])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinIntClear \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[10])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinRead \
|
|
((long (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[11])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinTypeCAN \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[12])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinTypeComparator \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[13])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinTypeGPIOInput \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[14])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinTypeGPIOOutput \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[15])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinTypeI2C \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[16])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinTypePWM \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[17])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinTypeQEI \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[18])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinTypeSSI \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[19])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinTypeTimer \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[20])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinTypeUART \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[21])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_GPIOPinTypeGPIOOutputOD \
|
|
((void (*)(unsigned long ulPort, \
|
|
unsigned char ucPins))ROM_GPIOTABLE[22])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the I2C API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterDataPut \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned char ucData))ROM_I2CTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterInitExpClk \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulI2CClk, \
|
|
tBoolean bFast))ROM_I2CTABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CSlaveInit \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned char ucSlaveAddr))ROM_I2CTABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterEnable \
|
|
((void (*)(unsigned long ulBase))ROM_I2CTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CSlaveEnable \
|
|
((void (*)(unsigned long ulBase))ROM_I2CTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterDisable \
|
|
((void (*)(unsigned long ulBase))ROM_I2CTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CSlaveDisable \
|
|
((void (*)(unsigned long ulBase))ROM_I2CTABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterIntEnable \
|
|
((void (*)(unsigned long ulBase))ROM_I2CTABLE[7])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CSlaveIntEnable \
|
|
((void (*)(unsigned long ulBase))ROM_I2CTABLE[8])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterIntDisable \
|
|
((void (*)(unsigned long ulBase))ROM_I2CTABLE[9])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CSlaveIntDisable \
|
|
((void (*)(unsigned long ulBase))ROM_I2CTABLE[10])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterIntStatus \
|
|
((tBoolean (*)(unsigned long ulBase, \
|
|
tBoolean bMasked))ROM_I2CTABLE[11])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CSlaveIntStatus \
|
|
((tBoolean (*)(unsigned long ulBase, \
|
|
tBoolean bMasked))ROM_I2CTABLE[12])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterIntClear \
|
|
((void (*)(unsigned long ulBase))ROM_I2CTABLE[13])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CSlaveIntClear \
|
|
((void (*)(unsigned long ulBase))ROM_I2CTABLE[14])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterSlaveAddrSet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned char ucSlaveAddr, \
|
|
tBoolean bReceive))ROM_I2CTABLE[15])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterBusy \
|
|
((tBoolean (*)(unsigned long ulBase))ROM_I2CTABLE[16])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterBusBusy \
|
|
((tBoolean (*)(unsigned long ulBase))ROM_I2CTABLE[17])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterControl \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulCmd))ROM_I2CTABLE[18])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterErr \
|
|
((unsigned long (*)(unsigned long ulBase))ROM_I2CTABLE[19])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CMasterDataGet \
|
|
((unsigned long (*)(unsigned long ulBase))ROM_I2CTABLE[20])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CSlaveStatus \
|
|
((unsigned long (*)(unsigned long ulBase))ROM_I2CTABLE[21])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CSlaveDataPut \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned char ucData))ROM_I2CTABLE[22])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_I2CSlaveDataGet \
|
|
((unsigned long (*)(unsigned long ulBase))ROM_I2CTABLE[23])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UpdateI2C \
|
|
((void (*)(void))ROM_I2CTABLE[24])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the Interrupt API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_IntEnable \
|
|
((void (*)(unsigned long ulInterrupt))ROM_INTERRUPTTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_IntDisable \
|
|
((void (*)(unsigned long ulInterrupt))ROM_INTERRUPTTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_IntPriorityGroupingSet \
|
|
((void (*)(unsigned long ulBits))ROM_INTERRUPTTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_IntPriorityGroupingGet \
|
|
((unsigned long (*)(void))ROM_INTERRUPTTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_IntPrioritySet \
|
|
((void (*)(unsigned long ulInterrupt, \
|
|
unsigned char ucPriority))ROM_INTERRUPTTABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_IntPriorityGet \
|
|
((long (*)(unsigned long ulInterrupt))ROM_INTERRUPTTABLE[7])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the PWM API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMPulseWidthSet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulPWMOut, \
|
|
unsigned long ulWidth))ROM_PWMTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMGenConfigure \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGen, \
|
|
unsigned long ulConfig))ROM_PWMTABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMGenPeriodSet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGen, \
|
|
unsigned long ulPeriod))ROM_PWMTABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMGenPeriodGet \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
unsigned long ulGen))ROM_PWMTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMGenEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGen))ROM_PWMTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMGenDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGen))ROM_PWMTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMPulseWidthGet \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
unsigned long ulPWMOut))ROM_PWMTABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMDeadBandEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGen, \
|
|
unsigned short usRise, \
|
|
unsigned short usFall))ROM_PWMTABLE[7])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMDeadBandDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGen))ROM_PWMTABLE[8])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMSyncUpdate \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGenBits))ROM_PWMTABLE[9])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMSyncTimeBase \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGenBits))ROM_PWMTABLE[10])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMOutputState \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulPWMOutBits, \
|
|
tBoolean bEnable))ROM_PWMTABLE[11])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMOutputInvert \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulPWMOutBits, \
|
|
tBoolean bInvert))ROM_PWMTABLE[12])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMOutputFault \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulPWMOutBits, \
|
|
tBoolean bFaultSuppress))ROM_PWMTABLE[13])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMGenIntTrigEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGen, \
|
|
unsigned long ulIntTrig))ROM_PWMTABLE[14])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMGenIntTrigDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGen, \
|
|
unsigned long ulIntTrig))ROM_PWMTABLE[15])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMGenIntStatus \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
unsigned long ulGen, \
|
|
tBoolean bMasked))ROM_PWMTABLE[16])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMGenIntClear \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGen, \
|
|
unsigned long ulInts))ROM_PWMTABLE[17])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMIntEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGenFault))ROM_PWMTABLE[18])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMIntDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulGenFault))ROM_PWMTABLE[19])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMFaultIntClear \
|
|
((void (*)(unsigned long ulBase))ROM_PWMTABLE[20])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_PWMIntStatus \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
tBoolean bMasked))ROM_PWMTABLE[21])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the QEI API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIPositionGet \
|
|
((unsigned long (*)(unsigned long ulBase))ROM_QEITABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIEnable \
|
|
((void (*)(unsigned long ulBase))ROM_QEITABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIDisable \
|
|
((void (*)(unsigned long ulBase))ROM_QEITABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIConfigure \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulConfig, \
|
|
unsigned long ulMaxPosition))ROM_QEITABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIPositionSet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulPosition))ROM_QEITABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIDirectionGet \
|
|
((long (*)(unsigned long ulBase))ROM_QEITABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIErrorGet \
|
|
((tBoolean (*)(unsigned long ulBase))ROM_QEITABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIVelocityEnable \
|
|
((void (*)(unsigned long ulBase))ROM_QEITABLE[7])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIVelocityDisable \
|
|
((void (*)(unsigned long ulBase))ROM_QEITABLE[8])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIVelocityConfigure \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulPreDiv, \
|
|
unsigned long ulPeriod))ROM_QEITABLE[9])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIVelocityGet \
|
|
((unsigned long (*)(unsigned long ulBase))ROM_QEITABLE[10])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIIntEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_QEITABLE[11])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIIntDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_QEITABLE[12])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIIntStatus \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
tBoolean bMasked))ROM_QEITABLE[13])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_QEIIntClear \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_QEITABLE[14])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the SSI API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SSIDataPut \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulData))ROM_SSITABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SSIConfigSetExpClk \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulSSIClk, \
|
|
unsigned long ulProtocol, \
|
|
unsigned long ulMode, \
|
|
unsigned long ulBitRate, \
|
|
unsigned long ulDataWidth))ROM_SSITABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SSIEnable \
|
|
((void (*)(unsigned long ulBase))ROM_SSITABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SSIDisable \
|
|
((void (*)(unsigned long ulBase))ROM_SSITABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SSIIntEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_SSITABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SSIIntDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_SSITABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SSIIntStatus \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
tBoolean bMasked))ROM_SSITABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SSIIntClear \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_SSITABLE[7])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SSIDataPutNonBlocking \
|
|
((long (*)(unsigned long ulBase, \
|
|
unsigned long ulData))ROM_SSITABLE[8])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SSIDataGet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long *pulData))ROM_SSITABLE[9])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SSIDataGetNonBlocking \
|
|
((long (*)(unsigned long ulBase, \
|
|
unsigned long *pulData))ROM_SSITABLE[10])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UpdateSSI \
|
|
((void (*)(void))ROM_SSITABLE[11])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the SysCtl API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlSleep \
|
|
((void (*)(void))ROM_SYSCTLTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlSRAMSizeGet \
|
|
((unsigned long (*)(void))ROM_SYSCTLTABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlFlashSizeGet \
|
|
((unsigned long (*)(void))ROM_SYSCTLTABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPinPresent \
|
|
((tBoolean (*)(unsigned long ulPin))ROM_SYSCTLTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPeripheralPresent \
|
|
((tBoolean (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPeripheralReset \
|
|
((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPeripheralEnable \
|
|
((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPeripheralDisable \
|
|
((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[7])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPeripheralSleepEnable \
|
|
((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[8])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPeripheralSleepDisable \
|
|
((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[9])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPeripheralDeepSleepEnable \
|
|
((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[10])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPeripheralDeepSleepDisable \
|
|
((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[11])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPeripheralClockGating \
|
|
((void (*)(tBoolean bEnable))ROM_SYSCTLTABLE[12])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlIntEnable \
|
|
((void (*)(unsigned long ulInts))ROM_SYSCTLTABLE[13])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlIntDisable \
|
|
((void (*)(unsigned long ulInts))ROM_SYSCTLTABLE[14])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlIntClear \
|
|
((void (*)(unsigned long ulInts))ROM_SYSCTLTABLE[15])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlIntStatus \
|
|
((unsigned long (*)(tBoolean bMasked))ROM_SYSCTLTABLE[16])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlLDOSet \
|
|
((void (*)(unsigned long ulVoltage))ROM_SYSCTLTABLE[17])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlLDOGet \
|
|
((unsigned long (*)(void))ROM_SYSCTLTABLE[18])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlReset \
|
|
((void (*)(void))ROM_SYSCTLTABLE[19])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlDeepSleep \
|
|
((void (*)(void))ROM_SYSCTLTABLE[20])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlResetCauseGet \
|
|
((unsigned long (*)(void))ROM_SYSCTLTABLE[21])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlResetCauseClear \
|
|
((void (*)(unsigned long ulCauses))ROM_SYSCTLTABLE[22])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlClockSet \
|
|
((void (*)(unsigned long ulConfig))ROM_SYSCTLTABLE[23])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlClockGet \
|
|
((unsigned long (*)(void))ROM_SYSCTLTABLE[24])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPWMClockSet \
|
|
((void (*)(unsigned long ulConfig))ROM_SYSCTLTABLE[25])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlPWMClockGet \
|
|
((unsigned long (*)(void))ROM_SYSCTLTABLE[26])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlADCSpeedSet \
|
|
((void (*)(unsigned long ulSpeed))ROM_SYSCTLTABLE[27])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlADCSpeedGet \
|
|
((unsigned long (*)(void))ROM_SYSCTLTABLE[28])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlGPIOAHBEnable \
|
|
((void (*)(unsigned long ulGPIOPeripheral))ROM_SYSCTLTABLE[29])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysCtlGPIOAHBDisable \
|
|
((void (*)(unsigned long ulGPIOPeripheral))ROM_SYSCTLTABLE[30])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the SysTick API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysTickValueGet \
|
|
((unsigned long (*)(void))ROM_SYSTICKTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysTickEnable \
|
|
((void (*)(void))ROM_SYSTICKTABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysTickDisable \
|
|
((void (*)(void))ROM_SYSTICKTABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysTickIntEnable \
|
|
((void (*)(void))ROM_SYSTICKTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysTickIntDisable \
|
|
((void (*)(void))ROM_SYSTICKTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysTickPeriodSet \
|
|
((void (*)(unsigned long ulPeriod))ROM_SYSTICKTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_SysTickPeriodGet \
|
|
((unsigned long (*)(void))ROM_SYSTICKTABLE[6])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the Timer API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerIntClear \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_TIMERTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer))ROM_TIMERTABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer))ROM_TIMERTABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerConfigure \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulConfig))ROM_TIMERTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerControlLevel \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer, \
|
|
tBoolean bInvert))ROM_TIMERTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerControlTrigger \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer, \
|
|
tBoolean bEnable))ROM_TIMERTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerControlEvent \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer, \
|
|
unsigned long ulEvent))ROM_TIMERTABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerControlStall \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer, \
|
|
tBoolean bStall))ROM_TIMERTABLE[7])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerRTCEnable \
|
|
((void (*)(unsigned long ulBase))ROM_TIMERTABLE[8])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerRTCDisable \
|
|
((void (*)(unsigned long ulBase))ROM_TIMERTABLE[9])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerPrescaleSet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer, \
|
|
unsigned long ulValue))ROM_TIMERTABLE[10])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerPrescaleGet \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer))ROM_TIMERTABLE[11])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerLoadSet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer, \
|
|
unsigned long ulValue))ROM_TIMERTABLE[14])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerLoadGet \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer))ROM_TIMERTABLE[15])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerValueGet \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer))ROM_TIMERTABLE[16])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerMatchSet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer, \
|
|
unsigned long ulValue))ROM_TIMERTABLE[17])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerMatchGet \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
unsigned long ulTimer))ROM_TIMERTABLE[18])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerIntEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_TIMERTABLE[19])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerIntDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_TIMERTABLE[20])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_TimerIntStatus \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
tBoolean bMasked))ROM_TIMERTABLE[21])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the UART API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTCharPut \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned char ucData))ROM_UARTTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTParityModeSet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulParity))ROM_UARTTABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTParityModeGet \
|
|
((unsigned long (*)(unsigned long ulBase))ROM_UARTTABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTFIFOLevelSet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulTxLevel, \
|
|
unsigned long ulRxLevel))ROM_UARTTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTFIFOLevelGet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long *pulTxLevel, \
|
|
unsigned long *pulRxLevel))ROM_UARTTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTConfigSetExpClk \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulUARTClk, \
|
|
unsigned long ulBaud, \
|
|
unsigned long ulConfig))ROM_UARTTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTConfigGetExpClk \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulUARTClk, \
|
|
unsigned long *pulBaud, \
|
|
unsigned long *pulConfig))ROM_UARTTABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTEnable \
|
|
((void (*)(unsigned long ulBase))ROM_UARTTABLE[7])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTDisable \
|
|
((void (*)(unsigned long ulBase))ROM_UARTTABLE[8])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTEnableSIR \
|
|
((void (*)(unsigned long ulBase, \
|
|
tBoolean bLowPower))ROM_UARTTABLE[9])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTDisableSIR \
|
|
((void (*)(unsigned long ulBase))ROM_UARTTABLE[10])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTCharsAvail \
|
|
((tBoolean (*)(unsigned long ulBase))ROM_UARTTABLE[11])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTSpaceAvail \
|
|
((tBoolean (*)(unsigned long ulBase))ROM_UARTTABLE[12])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTCharGetNonBlocking \
|
|
((long (*)(unsigned long ulBase))ROM_UARTTABLE[13])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTCharGet \
|
|
((long (*)(unsigned long ulBase))ROM_UARTTABLE[14])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTCharPutNonBlocking \
|
|
((tBoolean (*)(unsigned long ulBase, \
|
|
unsigned char ucData))ROM_UARTTABLE[15])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTBreakCtl \
|
|
((void (*)(unsigned long ulBase, \
|
|
tBoolean bBreakState))ROM_UARTTABLE[16])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTIntEnable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_UARTTABLE[17])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTIntDisable \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_UARTTABLE[18])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTIntStatus \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
tBoolean bMasked))ROM_UARTTABLE[19])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UARTIntClear \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulIntFlags))ROM_UARTTABLE[20])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_UpdateUART \
|
|
((void (*)(void))ROM_UARTTABLE[21])
|
|
#endif
|
|
|
|
//*****************************************************************************
|
|
//
|
|
// Macros for calling ROM functions in the Watchdog API.
|
|
//
|
|
//*****************************************************************************
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogIntClear \
|
|
((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[0])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogRunning \
|
|
((tBoolean (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[1])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogEnable \
|
|
((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[2])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogResetEnable \
|
|
((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[3])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogResetDisable \
|
|
((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[4])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogLock \
|
|
((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[5])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogUnlock \
|
|
((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[6])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogLockState \
|
|
((tBoolean (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[7])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogReloadSet \
|
|
((void (*)(unsigned long ulBase, \
|
|
unsigned long ulLoadVal))ROM_WATCHDOGTABLE[8])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogReloadGet \
|
|
((unsigned long (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[9])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogValueGet \
|
|
((unsigned long (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[10])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogIntEnable \
|
|
((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[11])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogIntStatus \
|
|
((unsigned long (*)(unsigned long ulBase, \
|
|
tBoolean bMasked))ROM_WATCHDOGTABLE[12])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogStallEnable \
|
|
((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[13])
|
|
#endif
|
|
#if defined(TARGET_IS_DUSTDEVIL_RA0)
|
|
#define ROM_WatchdogStallDisable \
|
|
((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[14])
|
|
#endif
|
|
|
|
#endif // __ROM_H__
|