1    /*!
     2     *  ======== Clock ========
     3     *  MSP430 Master Clock
     4     */
     5    metaonly interface IClock inherits xdc.platform.IPeripheral {
     6    
     7    instance:
     8    
     9        /*!
    10         *  ======== baseAddr ========
    11         *  Address of the peripheral's control register.
    12         *
    13         *  A peripheral's registers are commonly accessed through a structure
    14         *  that defines the offsets of a particular register from the lowest
    15         *  address mapped to a peripheral. That lowest address is specified by
    16         *  this parameter.
    17         */
    18        config UInt baseAddr;
    19        
    20        /*!
    21         * Stores the DCO clock frequency in float
    22         */
    23        readonly config float DCOCLKHz = 1000000;
    24    
    25        /*!
    26         *  ======== ACLKHz Frequency ========
    27         *  Stores ACLK as frequency in float
    28         */    
    29        readonly config float ACLKHz;
    30    
    31        /*!
    32         *  ======== MCLKHz Frequency ========
    33         *  Stores MCLK as frequency in float
    34         */    
    35        readonly config float MCLKHz;
    36    
    37        /*!
    38         *  ======== SMCLKHz Frequency ========
    39         *  Stores SMCLK as frequency in float
    40         */
    41        readonly config float SMCLKHz;
    42    
    43        /*!
    44         *  ======== computeDCOCLKHz ========
    45         *  Initialize to the nearest available DCO clock frequency
    46         */
    47        void computeDCOCLKHz(float DCOCLKHz);
    48    }