⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 io_map.h

📁 GCC 做的MOTOROLA 的单片机 振荡程序
💻 H
📖 第 1 页 / 共 5 页
字号:
    byte AUTO        :1;                                       /* Acquisiton Mode Bit */
  } Bits;
} PBWCSTR;
extern volatile PBWCSTR _PBWC @0x00000037;
#define PBWC                            _PBWC.Byte
#define PBWC_ACQ                        _PBWC.Bits.ACQ
#define PBWC_LOCK                       _PBWC.Bits.LOCK
#define PBWC_AUTO                       _PBWC.Bits.AUTO

#define PBWC_ACQ_MASK                   0x20
#define PBWC_LOCK_MASK                  0x40
#define PBWC_AUTO_MASK                  0x80


/*** PMS - PLL Multiplier Select Register; 0x00000038 ***/
typedef union {
  word Word;
   /* Overlapped registers: */
  struct {
    /*** PMSH - PLL Multiplier Select Register High; 0x00000038 ***/
    union {
      byte Byte;
      struct {
        byte MUL8        :1;                                       /* PLL Multiplier Select Bit */
        byte MUL9        :1;                                       /* PLL Multiplier Select Bit */
        byte MUL10       :1;                                       /* PLL Multiplier Select Bit */
        byte MUL11       :1;                                       /* PLL Multiplier Select Bit */
        byte             :1; 
        byte             :1; 
        byte             :1; 
        byte             :1; 
      } Bits;
      struct {
        byte grpMUL_8 :4;
        byte     :1;
        byte     :1;
        byte     :1;
        byte     :1;
      } MergedBits;
    } PMSHSTR;
    #define PMSH                        _PMS.Overlap_STR.PMSHSTR.Byte
    #define PMSH_MUL8                   _PMS.Overlap_STR.PMSHSTR.Bits.MUL8
    #define PMSH_MUL9                   _PMS.Overlap_STR.PMSHSTR.Bits.MUL9
    #define PMSH_MUL10                  _PMS.Overlap_STR.PMSHSTR.Bits.MUL10
    #define PMSH_MUL11                  _PMS.Overlap_STR.PMSHSTR.Bits.MUL11
    
    #define PMSH_MUL_8                  _PMS.Overlap_STR.PMSHSTR.MergedBits.grpMUL_8
    #define PMSH_MUL                    PMSH_MUL_8
    
    #define PMSH_MUL8_MASK              0x01
    #define PMSH_MUL9_MASK              0x02
    #define PMSH_MUL10_MASK             0x04
    #define PMSH_MUL11_MASK             0x08
    #define PMSH_MUL_8_MASK             0x0F
    #define PMSH_MUL_8_BITNUM           0x00


    /*** PMSL - PLL Multiplier Select Register Low; 0x00000039 ***/
    union {
      byte Byte;
      struct {
        byte MUL0        :1;                                       /* PLL Multiplier Select Bit */
        byte MUL1        :1;                                       /* PLL Multiplier Select Bit */
        byte MUL2        :1;                                       /* PLL Multiplier Select Bit */
        byte MUL3        :1;                                       /* PLL Multiplier Select Bit */
        byte MUL4        :1;                                       /* PLL Multiplier Select Bit */
        byte MUL5        :1;                                       /* PLL Multiplier Select Bit */
        byte MUL6        :1;                                       /* PLL Multiplier Select Bit */
        byte MUL7        :1;                                       /* PLL Multiplier Select Bit */
      } Bits;
    } PMSLSTR;
    #define PMSL                        _PMS.Overlap_STR.PMSLSTR.Byte
    #define PMSL_MUL0                   _PMS.Overlap_STR.PMSLSTR.Bits.MUL0
    #define PMSL_MUL1                   _PMS.Overlap_STR.PMSLSTR.Bits.MUL1
    #define PMSL_MUL2                   _PMS.Overlap_STR.PMSLSTR.Bits.MUL2
    #define PMSL_MUL3                   _PMS.Overlap_STR.PMSLSTR.Bits.MUL3
    #define PMSL_MUL4                   _PMS.Overlap_STR.PMSLSTR.Bits.MUL4
    #define PMSL_MUL5                   _PMS.Overlap_STR.PMSLSTR.Bits.MUL5
    #define PMSL_MUL6                   _PMS.Overlap_STR.PMSLSTR.Bits.MUL6
    #define PMSL_MUL7                   _PMS.Overlap_STR.PMSLSTR.Bits.MUL7
    
    
    #define PMSL_MUL0_MASK              0x01
    #define PMSL_MUL1_MASK              0x02
    #define PMSL_MUL2_MASK              0x04
    #define PMSL_MUL3_MASK              0x08
    #define PMSL_MUL4_MASK              0x10
    #define PMSL_MUL5_MASK              0x20
    #define PMSL_MUL6_MASK              0x40
    #define PMSL_MUL7_MASK              0x80

  } Overlap_STR;

} PMSSTR;
extern volatile PMSSTR _PMS @0x00000038;
#define PMS                             _PMS.Word



/*** PMRS - PLL VCO Range Select; 0x0000003A ***/
typedef union {
  byte Byte;
  struct {
    byte VRS0        :1;                                       /* VCO Range Select Bit */
    byte VRS1        :1;                                       /* VCO Range Select Bit */
    byte VRS2        :1;                                       /* VCO Range Select Bit */
    byte VRS3        :1;                                       /* VCO Range Select Bit */
    byte VRS4        :1;                                       /* VCO Range Select Bit */
    byte VRS5        :1;                                       /* VCO Range Select Bit */
    byte VRS6        :1;                                       /* VCO Range Select Bit */
    byte VRS7        :1;                                       /* VCO Range Select Bit */
  } Bits;
} PMRSSTR;
extern volatile PMRSSTR _PMRS @0x0000003A;
#define PMRS                            _PMRS.Byte
#define PMRS_VRS0                       _PMRS.Bits.VRS0
#define PMRS_VRS1                       _PMRS.Bits.VRS1
#define PMRS_VRS2                       _PMRS.Bits.VRS2
#define PMRS_VRS3                       _PMRS.Bits.VRS3
#define PMRS_VRS4                       _PMRS.Bits.VRS4
#define PMRS_VRS5                       _PMRS.Bits.VRS5
#define PMRS_VRS6                       _PMRS.Bits.VRS6
#define PMRS_VRS7                       _PMRS.Bits.VRS7

#define PMRS_VRS0_MASK                  0x01
#define PMRS_VRS1_MASK                  0x02
#define PMRS_VRS2_MASK                  0x04
#define PMRS_VRS3_MASK                  0x08
#define PMRS_VRS4_MASK                  0x10
#define PMRS_VRS5_MASK                  0x20
#define PMRS_VRS6_MASK                  0x40
#define PMRS_VRS7_MASK                  0x80


/*** PMDS - PLL Reference Divider Select Register; 0x0000003B ***/
typedef union {
  byte Byte;
  struct {
    byte RDS0        :1;                                       /* Reference Divider Select Bit */
    byte RDS1        :1;                                       /* Reference Divider Select Bit */
    byte RDS2        :1;                                       /* Reference Divider Select Bit */
    byte RDS3        :1;                                       /* Reference Divider Select Bit */
    byte             :1; 
    byte             :1; 
    byte             :1; 
    byte             :1; 
  } Bits;
  struct {
    byte grpRDS  :4;
    byte         :1;
    byte         :1;
    byte         :1;
    byte         :1;
  } MergedBits;
} PMDSSTR;
extern volatile PMDSSTR _PMDS @0x0000003B;
#define PMDS                            _PMDS.Byte
#define PMDS_RDS0                       _PMDS.Bits.RDS0
#define PMDS_RDS1                       _PMDS.Bits.RDS1
#define PMDS_RDS2                       _PMDS.Bits.RDS2
#define PMDS_RDS3                       _PMDS.Bits.RDS3
#define PMDS_RDS                        _PMDS.MergedBits.grpRDS

#define PMDS_RDS0_MASK                  0x01
#define PMDS_RDS1_MASK                  0x02
#define PMDS_RDS2_MASK                  0x04
#define PMDS_RDS3_MASK                  0x08
#define PMDS_RDS_MASK                   0x0F
#define PMDS_RDS_BITNUM                 0x00


/*** ADCSC - ADC Status and Control Register; 0x0000003C ***/
typedef union {
  byte Byte;
  struct {
    byte ADCH0       :1;                                       /* ADC Channel Select Bit 0 */
    byte ADCH1       :1;                                       /* ADC Channel Select Bit 1 */
    byte ADCH2       :1;                                       /* ADC Channel Select Bit 2 */
    byte ADCH3       :1;                                       /* ADC Channel Select Bit 3 */
    byte ADCH4       :1;                                       /* ADC Channel Select Bit 4 */
    byte ADCO        :1;                                       /* ADC Continuous Conversion Bit */
    byte AIEN        :1;                                       /* ADC Interrupt Enable Bit */
    byte COCO        :1;                                       /* Conversions Complete Bit */
  } Bits;
  struct {
    byte grpADCH :5;
    byte         :1;
    byte         :1;
    byte         :1;
  } MergedBits;
} ADCSCSTR;
extern volatile ADCSCSTR _ADCSC @0x0000003C;
#define ADCSC                           _ADCSC.Byte
#define ADCSC_ADCH0                     _ADCSC.Bits.ADCH0
#define ADCSC_ADCH1                     _ADCSC.Bits.ADCH1
#define ADCSC_ADCH2                     _ADCSC.Bits.ADCH2
#define ADCSC_ADCH3                     _ADCSC.Bits.ADCH3
#define ADCSC_ADCH4                     _ADCSC.Bits.ADCH4
#define ADCSC_ADCO                      _ADCSC.Bits.ADCO
#define ADCSC_AIEN                      _ADCSC.Bits.AIEN
#define ADCSC_COCO                      _ADCSC.Bits.COCO
#define ADCSC_ADCH                      _ADCSC.MergedBits.grpADCH

#define ADCSC_ADCH0_MASK                0x01
#define ADCSC_ADCH1_MASK                0x02
#define ADCSC_ADCH2_MASK                0x04
#define ADCSC_ADCH3_MASK                0x08
#define ADCSC_ADCH4_MASK                0x10
#define ADCSC_ADCO_MASK                 0x20
#define ADCSC_AIEN_MASK                 0x40
#define ADCSC_COCO_MASK                 0x80
#define ADCSC_ADCH_MASK                 0x1F
#define ADCSC_ADCH_BITNUM               0x00


/*** ADR - ADC Data Register; 0x0000003D ***/
typedef union {
  word Word;
   /* Overlapped registers: */
  struct {
    /*** ADRH - ADC Data Register High; 0x0000003D ***/
    union {
      byte Byte;
      struct {
        byte BIT8        :1;                                       /* ADC Data Bit 8 */
        byte BIT9        :1;                                       /* ADC Data Bit 9 */
        byte BIT10       :1;                                       /* ADC Data Bit 10 */
        byte BIT11       :1;                                       /* ADC Data Bit 11 */
        byte BIT12       :1;                                       /* ADC Data Bit 12 */
        byte BIT13       :1;                                       /* ADC Data Bit 13 */
        byte BIT14       :1;                                       /* ADC Data Bit 14 */
        byte BIT15       :1;                                       /* ADC Data Bit 15 */
      } Bits;
    } ADRHSTR;
    #define ADRH                        _ADR.Overlap_STR.ADRHSTR.Byte
    #define ADRH_BIT8                   _ADR.Overlap_STR.ADRHSTR.Bits.BIT8
    #define ADRH_BIT9                   _ADR.Overlap_STR.ADRHSTR.Bits.BIT9
    #define ADRH_BIT10                  _ADR.Overlap_STR.ADRHSTR.Bits.BIT10
    #define ADRH_BIT11                  _ADR.Overlap_STR.ADRHSTR.Bits.BIT11
    #define ADRH_BIT12                  _ADR.Overlap_STR.ADRHSTR.Bits.BIT12
    #define ADRH_BIT13                  _ADR.Overlap_STR.ADRHSTR.Bits.BIT13
    #define ADRH_BIT14                  _ADR.Overlap_STR.ADRHSTR.Bits.BIT14
    #define ADRH_BIT15                  _ADR.Overlap_STR.ADRHSTR.Bits.BIT15
    
    
    #define ADRH_BIT8_MASK              0x01
    #define ADRH_BIT9_MASK              0x02
    #define ADRH_BIT10_MASK             0x04
    #define ADRH_BIT11_MASK             0x08
    #define ADRH_BIT12_MASK             0x10
    #define ADRH_BIT13_MASK             0x20
    #define ADRH_BIT14_MASK             0x40
    #define ADRH_BIT15_MASK             0x80


    /*** ADRL - ADC Data Register Low; 0x0000003E ***/
    union {
      byte Byte;
      struct {
        byte BIT0        :1;                                       /* ADC Data Bit 0 */
        byte BIT1        :1;                                       /* ADC Data Bit 1 */
        byte BIT2        :1;                                       /* ADC Data Bit 2 */
        byte BIT3        :1;                                       /* ADC Data Bit 3 */
        byte BIT4        :1;                                       /* ADC Data Bit 4 */
        byte BIT5        :1;                                       /* ADC Data Bit 5 */
        byte BIT6        :1;                                       /* ADC Data Bit 6 */
        byte BIT7        :1;                                       /* ADC Data Bit 7 */
      } Bits;
    } ADRLSTR;
    #define ADRL                        _ADR.Overlap_STR.ADRLSTR.Byte
    #define ADRL_BIT0                   _ADR.Overlap_STR.ADRLSTR.Bits.BIT0
    #define ADRL_BIT1                   _ADR.Overlap_STR.ADRLSTR.Bits.BIT1
    #define ADRL_BIT2                   _ADR.Overlap_STR.ADRLSTR.Bits.BIT2
    #define ADRL_BIT3                   _ADR.Overlap_STR.ADRLSTR.Bits.BIT3
    #define ADRL_BIT4                   _ADR.Overlap_STR.ADRLSTR.Bits.BIT4
    #define ADRL_BIT5                   _ADR.Overlap_STR.ADRLSTR.Bits.BIT5
    #define ADRL_BIT6                   _ADR.Overlap_STR.ADRLSTR.Bits.BIT6
    #define ADRL_BIT7                   _ADR.Overlap_STR.ADRLSTR.Bits.BIT7
    
    
    #define ADRL_BIT0_MASK              0x01
    #define ADRL_BIT1_MASK              0x02
    #define ADRL_BIT2_MASK              0x04
    #define ADRL_BIT3_MASK              0x08
    #define ADRL_BIT4_MASK              0x10
    #define ADRL_BIT5_MASK              0x20
    #define ADRL_BIT6_MASK              0x40
    #define ADRL_BIT7_MASK              0x80

  } Overlap_STR;

} ADRSTR;
extern volatile ADRSTR _ADR @0x0000003D;
#define ADR                             _ADR.Word



/*** ADCLK - ADC Input Clock Register; 0x0000003F ***/
typedef union {
  byte Byte;
  struct {
    byte ACLKEN      :1;                                  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -