1    /*!
     2     *  ======== IE1 ========
     3     *  MSP430 Interrupt Enable Register 1
     4     */
     5    metaonly module IE1 inherits xdc.platform.IPeripheral {
     6    
     7        enum NMIE_t {
     8            NMIE_OFF = 0x00,
     9            NMIE = 0x5A00
    10        };
    11        
    12        enum WDTIE_t {
    13            WDTIE_OFF = 0x0000,
    14            WDTIE     = (0x0080)
    15        };
    16        
    17        enum OFIE_t {
    18            OFIE_OFF = 0x00,    /*! Interrupt not enabled */
    19            OFIE = 0x01         /*! Interrupt enabled */
    20        };
    21        
    22        /* IE1 */
    23        struct IE1_t {
    24            NMIE_t      NMIE;
    25            OFIE_t      OFIE;
    26            WDTIE_t     WDTIE;
    27        }
    28    
    29        /*!
    30        *  ======== ForceSetDefaultRegister_t ========
    31        *  Force Set Default Register
    32        *
    33        *  Type to store if each register needs to be forced initialized
    34        *  even if the register is in default state.
    35        *
    36        *  @see #ForceSetDefaultRegister_t
    37        */
    38        struct ForceSetDefaultRegister_t {
    39            String     register;
    40            Bool       regForceSet;
    41        }
    42        
    43    instance:
    44        /*! IE1, Interrupt Enable Register 1 */
    45        config IE1_t IE1 = {
    46            NMIE        : NMIE_OFF,
    47            OFIE        : OFIE_OFF,
    48            WDTIE       : WDTIE_OFF,
    49        };
    50        
    51       /*!
    52        *  ======== getWDTIE ========
    53        *  Gets WDTIE bit
    54        *
    55        *  @see #getWDTIE
    56        */
    57        Bool    getWDTIE();
    58        
    59       /*!
    60        *  ======== setWDTIE ========
    61        *  Sets WDTIE bit
    62        *
    63        *  @see #setWDTIE
    64        */
    65        Bool    setWDTIE(Bool set);
    66    
    67       /*!
    68        *  ======== getOFIE ========
    69        *  Gets OFIE bit
    70        *
    71        *  @see #getOFIE
    72        */
    73        Bool    getOFIE();
    74        
    75       /*!
    76        *  ======== setOFIE ========
    77        *  Sets OFIE bit
    78        *
    79        *  @see #setOFIE
    80        */
    81        Bool    setOFIE(Bool set);
    82        
    83       /*!
    84        *  ======== getNMIE ========
    85        *  Gets NMIE bit
    86        *
    87        *  @see #getNMIE
    88        */
    89        Bool    getNMIE();
    90        
    91       /*!
    92        *  ======== setNMIE ========
    93        *  Sets NMIE bit
    94        *
    95        *  @see #setNMIE
    96        */
    97        Bool    setNMIE(Bool set);
    98    
    99        /*! Determine if each Register needs to be forced set or not */
   100        readonly config ForceSetDefaultRegister_t forceSetDefaultRegister[] =
   101        [
   102            { register : "IE1" , regForceSet : false },
   103        ];
   104    }