sfr_sys.h
Go to the documentation of this file.
00001 #ifndef __MSP430WARE_SFR_SYS_H__
00002 #define __MSP430WARE_SFR_SYS_H__
00003 
00004 //*****************************************************************************
00005 //
00006 //The following are the defines to include the required modules for this
00007 //peripheral in msp430xgeneric.h file
00008 //
00009 //*****************************************************************************
00010 #define __MSP430_HAS_SFR__
00011 #define __MSP430_HAS_SYS__
00012 
00013 
00014 //*****************************************************************************
00015 //
00016 //The following are values that can be passed to SFR_setResetPinPullResistor()
00017 //in the pullResistorSetup parameter.
00018 //
00019 //*****************************************************************************
00020 #define SFR_RESISTORDISABLE         ( !(SYSRSTRE + SYSRSTUP) )
00021 #define SFR_RESISTORENABLE_PULLUP   ( SYSRSTRE + SYSRSTUP )
00022 #define SFR_RESISTORENABLE_PULLDOWN (SYSRSTRE)
00023 
00024 //*****************************************************************************
00025 //
00026 //The following are values that can be passed to SFR_setNMIEdge()
00027 //in the edgeDirection parameter.
00028 //
00029 //*****************************************************************************
00030 #define SFR_NMI_RISINGEDGE  ( !(SYSNMIIES) )
00031 #define SFR_NMI_FALLINGEDGE (SYSNMIIES)
00032 
00033 //*****************************************************************************
00034 //
00035 //The following are values that can be passed to SFR_setResetNMIPinFunction()
00036 //in the resetPinFunction parameter.
00037 //
00038 //*****************************************************************************
00039 #define SFR_RESETPINFUNC_RESET ( !(SYSNMI) )
00040 #define SFR_RESETPINFUNC_NMI   (SYSNMI)
00041 
00042 
00043 //*****************************************************************************
00044 //
00045 //The following are values that can be returned by SYS_getBSLEntryIndication()
00046 //
00047 //*****************************************************************************
00048 #define SYS_BSLENTRY_NOTINDICATED (0x0)
00049 #define SYS_BSLENTRY_INDICATED    (0x1)
00050 
00051 //*****************************************************************************
00052 //
00053 //The following are values that can be passed to SYS_setRAMAssignedToBSL()
00054 //in the BSLRAMAssignment parameter.
00055 //
00056 //*****************************************************************************
00057 #define SYS_BSLRAMASSIGN_NORAM         ( !(SYSBSLR) )
00058 #define SYS_BSLRAMASSIGN_LOWEST16BYTES (SYSBSLR)
00059 
00060 //*****************************************************************************
00061 //
00062 //The following are values that can be passed to SYS_setBSLSize()
00063 //in the BSLSizeSelect parameter.
00064 //
00065 //*****************************************************************************
00066 #define SYS_BSLSIZE_SEG3     ( ~(SYSBSLSIZE0 + SYSBSLSIZE1) )
00067 #define SYS_BSLSIZE_SEGS23   (SYSBSLSIZE0)
00068 #define SYS_BSLSIZE_SEGS123  (SYSBSLSIZE1)
00069 #define SYS_BSLSIZE_SEGS1234 (SYSBSLSIZE0 + SYSBSLSIZE1)
00070 
00071 //*****************************************************************************
00072 //
00073 //The following are values that can be passed to SYS_JTAGMailboxInit()
00074 //in the mailboxSizeSelect parameter.
00075 //
00076 //*****************************************************************************
00077 #define SYS_JTAGMBSIZE_16BIT ( !(JMBMODE) )
00078 #define SYS_JTAGMBSIZE_32BIT (JMBMODE)
00079 
00080 //*****************************************************************************
00081 //
00082 //The following are values that can be passed to SYS_JTAGMailboxInit()
00083 //in the autoClearInboxFlagSelect parameter.
00084 //
00085 //*****************************************************************************
00086 #define SYS_JTAGINBOX0AUTO_JTAGINBOX1AUTO ( !(JMBCLR0OFF + JMBCLR1OFF) )
00087 #define SYS_JTAGINBOX0AUTO_JTAGINBOX1SW   (JMBCLR1OFF)
00088 #define SYS_JTAGINBOX0SW_JTAGINBOX1AUTO   (JMBCLR0OFF)
00089 #define SYS_JTAGINBOX0SW_JTAGINBOX1SW     (JMBCLR0OFF + JMBCLR1OFF)
00090 
00091 //*****************************************************************************
00092 //
00093 //The following are values that can be passed to SYS_getJTAGInboxMessage16Bit()
00094 //in the inboxSelect parameter.
00095 //
00096 //*****************************************************************************
00097 #define SYS_JTAGINBOX_0 (0x0)
00098 #define SYS_JTAGINBOX_1 (0x2)
00099 
00100 //*****************************************************************************
00101 //
00102 //The following are values that can be passed to 
00103 //SYS_setJTAGOutgoingMessage16Bit() in the outboxSelect parameter.
00104 //
00105 //*****************************************************************************
00106 #define SYS_JTAGOUTBOX_0 (0x0)
00107 #define SYS_JTAGOUTBOX_1 (0x2)
00108 
00109 //******************************************************************************
00110 //
00111 //The following are values that can be passed to 
00112 //SFR_enableInterrupt(), SFR_disableInterrupt(), SFR_getInterruptStatus(),
00113 //SFR_clearInterrupt() in the outboxSelect parameter.
00114 //
00115 //******************************************************************************
00116 #define SFR_JTAG_OUTBOX_INTERRUPT                         JMBOUTIE
00117 #define SFR_JTAG_INBOX_INTERRUPT                          JMBINIE
00118 #define SFR_FLASH_CONTROLLER_ACCESS_VIOLATION_INTERRUPT   ACCVIE
00119 #define SFR_NMI_PIN_INTERRUPT                             NMIIE
00120 #define SFR_VACANT_MEMORY_ACCESS_INTERRUPT                VMAIE
00121 #define SFR_OSCILLATOR_FAULT_INTERRUPT                    OFIE
00122 #define SFR_WATCHDOG_INTERVAL_TIMER_INTERRUPT             WDTIE
00123 
00124 //*****************************************************************************
00125 //
00126 //Prototypes for the APIs.
00127 //
00128 //*****************************************************************************
00129 
00130 extern void SFR_enableInterrupt (unsigned int baseAddress,
00131     unsigned char interruptMask);
00132 
00133 extern void SFR_disableInterrupt (unsigned int baseAddress,
00134     unsigned char interruptMask);
00135 
00136 extern unsigned char SFR_getInterruptStatus (unsigned int baseAddress,
00137     unsigned char interruptFlagMask);
00138 
00139 extern void SFR_clearInterrupt (unsigned int baseAddress,
00140     unsigned char interruptFlagMask);
00141 
00142 extern void SFR_setResetPinPullResistor (unsigned int baseAddress,
00143     unsigned int pullResistorSetup);
00144 
00145 extern void SFR_setNMIEdge (unsigned int baseAddress,
00146     unsigned int edgeDirection);
00147 
00148 extern void SFR_setResetNMIPinFunction (unsigned int baseAddress,
00149     unsigned char resetPinFunction);
00150 
00151 extern void SYS_enableDedicatedJTAGPins (unsigned int baseAddress);
00152 
00153 extern unsigned short SYS_getBSLEntryIndication (unsigned int baseAddress);
00154 
00155 extern void SYS_enablePMMAccessProtect (unsigned int baseAddress);
00156 
00157 extern void SYS_enableRAMBasedInterruptVectors (unsigned int baseAddress);
00158 
00159 extern void SYS_disableRAMBasedInterruptVectors (unsigned int baseAddress);
00160 
00161 extern void SYS_enableBSLProtect (unsigned int baseAddress);
00162 
00163 extern void SYS_disableBSLProtect (unsigned int baseAddress);
00164 
00165 extern void SYS_disableBSLMemory (unsigned int baseAddress);
00166 
00167 extern void SYS_enableBSLMemory (unsigned int baseAddress);
00168 
00169 extern void SYS_setRAMAssignedToBSL (unsigned int baseAddress,
00170     unsigned char BSLRAMAssignment);
00171 
00172 extern void SYS_setBSLSize (unsigned int baseAddress,
00173     unsigned char BSLSizeSelect);
00174 
00175 extern void SYS_JTAGMailboxInit (unsigned int baseAddress,
00176     unsigned char mailboxSizeSelect,
00177     unsigned char autoClearInboxFlagSelect);
00178 
00179 extern unsigned char SYS_getJTAGMailboxFlagStatus (unsigned int baseAddress,
00180     unsigned char mailboxFlagMask);
00181 
00182 extern void SYS_clearJTAGMailboxFlagStatus (unsigned int baseAddress,
00183     unsigned char mailboxFlagMask);
00184 
00185 extern unsigned int SYS_getJTAGInboxMessage16Bit (unsigned int baseAddress,
00186     unsigned char inboxSelect);
00187 
00188 extern unsigned long SYS_getJTAGInboxMessage32Bit (unsigned int baseAddress);
00189 
00190 extern void SYS_setJTAGOutgoingMessage16Bit (unsigned int baseAddress,
00191     unsigned char outboxSelect,
00192     unsigned int outgoingMessage);
00193 
00194 extern void SYS_setJTAGOutgoingMessage32Bit (unsigned int baseAddress,
00195     unsigned long outgoingMessage);
00196 
00197 #endif

Copyright 2012, Texas Instruments Incorporated