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

📄 pic16f913.h

📁 picc
💻 H
📖 第 1 页 / 共 4 页
字号:
//         __MAXRAM H'1FF'
//         __BADRAM H'08', H'1B'-H'1D'
//         __BADRAM H'88', H'9A'-H'9B'
//         __BADRAM H'112', H'115', H'118', H'11B',H'11E'-H'11F'
//         __BADRAM H'185', H'187'-H'189', H'18D'-H'1EF'

//==========================================================================
//
//       Configuration Bits
//
//==========================================================================

#define _CONFIG              0x2007

//Configuration Byte 1 Options
#define _DEBUG_ON            0x2FFF
#define _DEBUG_OFF           0x3FFF
#define _FCMEN_ON            0x3FFF
#define _FCMEN_OFF           0x37FF
#define _IESO_ON             0x3FFF
#define _IESO_OFF            0x3BFF
#define _BOD_ON              0x3FFF
#define _BOD_NSLEEP          0x3EFF
#define _BOD_SBODEN          0x3DFF
#define _BOD_OFF             0x3CFF
#define _CPD_ON              0x3F7F
#define _CPD_OFF             0x3FFF
#define _CP_ON               0x3FBF
#define _CP_OFF              0x3FFF
#define _MCLRE_ON            0x3FFF
#define _MCLRE_OFF           0x3FDF
#define _PWRTE_ON            0x3FEF
#define _PWRTE_OFF           0x3FFF
#define _WDT_ON              0x3FFF
#define _WDT_OFF             0x3FF7
#define _LP_OSC              0x3FF8
#define _XT_OSC              0x3FF9
#define _HS_OSC              0x3FFA
#define _EC_OSC              0x3FFB
#define _INTRC_OSC_NOCLKOUT  0x3FFC
#define _INTRC_OSC_CLKOUT    0x3FFD
#define _EXTRC_OSC_NOCLKOUT  0x3FFE
#define _EXTRC_OSC_CLKOUT    0x3FFF
#define _INTOSCIO            0x3FFC
#define _INTOSC              0x3FFD
#define _EXTRCIO             0x3FFE
#define _EXTRC               0x3FFF


//         LIST

// ----- ADCON0 bits --------------------
typedef union {
  struct {
    unsigned char ADON:1;
    unsigned char NOT_DONE:1;
    unsigned char CHS0:1;
    unsigned char CHS1:1;
    unsigned char CHS2:1;
    unsigned char VCFG0:1;
    unsigned char VCFG1:1;
    unsigned char ADFM:1;
  };
  struct {
    unsigned char :1;
    unsigned char GO_DONE:1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
  };
} __ADCON0_bits_t;
extern volatile __ADCON0_bits_t __at(ADCON0_ADDR) ADCON0_bits;

#define ADON                 ADCON0_bits.ADON
#define NOT_DONE             ADCON0_bits.NOT_DONE
#define GO_DONE              ADCON0_bits.GO_DONE
#define CHS0                 ADCON0_bits.CHS0
#define CHS1                 ADCON0_bits.CHS1
#define CHS2                 ADCON0_bits.CHS2
#define VCFG0                ADCON0_bits.VCFG0
#define VCFG1                ADCON0_bits.VCFG1
#define ADFM                 ADCON0_bits.ADFM

// ----- ADCON1 bits --------------------
typedef union {
  struct {
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char ADCS0:1;
    unsigned char ADCS1:1;
    unsigned char ADCS2:1;
    unsigned char :1;
  };
} __ADCON1_bits_t;
extern volatile __ADCON1_bits_t __at(ADCON1_ADDR) ADCON1_bits;

#define ADCS0                ADCON1_bits.ADCS0
#define ADCS1                ADCON1_bits.ADCS1
#define ADCS2                ADCON1_bits.ADCS2

// ----- ANSEL bits --------------------
typedef union {
  struct {
    unsigned char AN0:1;
    unsigned char AN1:1;
    unsigned char AN2:1;
    unsigned char AN3:1;
    unsigned char AN4:1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
  };
} __ANSEL_bits_t;
extern volatile __ANSEL_bits_t __at(ANSEL_ADDR) ANSEL_bits;

#define AN0                  ANSEL_bits.AN0
#define AN1                  ANSEL_bits.AN1
#define AN2                  ANSEL_bits.AN2
#define AN3                  ANSEL_bits.AN3
#define AN4                  ANSEL_bits.AN4

// ----- CCP1CON bits --------------------
typedef union {
  struct {
    unsigned char CCP1M0:1;
    unsigned char CCP1M1:1;
    unsigned char CCP1M2:1;
    unsigned char CCP1M3:1;
    unsigned char CCP1Y:1;
    unsigned char CCP1X:1;
    unsigned char :1;
    unsigned char :1;
  };
} __CCP1CON_bits_t;
extern volatile __CCP1CON_bits_t __at(CCP1CON_ADDR) CCP1CON_bits;

#define CCP1M0               CCP1CON_bits.CCP1M0
#define CCP1M1               CCP1CON_bits.CCP1M1
#define CCP1M2               CCP1CON_bits.CCP1M2
#define CCP1M3               CCP1CON_bits.CCP1M3
#define CCP1Y                CCP1CON_bits.CCP1Y
#define CCP1X                CCP1CON_bits.CCP1X

// ----- CMCON0 bits --------------------
typedef union {
  struct {
    unsigned char CM0:1;
    unsigned char CM1:1;
    unsigned char CM2:1;
    unsigned char CIS:1;
    unsigned char C1INV:1;
    unsigned char C2INV:1;
    unsigned char C1OUT:1;
    unsigned char C2OUT:1;
  };
} __CMCON0_bits_t;
extern volatile __CMCON0_bits_t __at(CMCON0_ADDR) CMCON0_bits;

#define CM0                  CMCON0_bits.CM0
#define CM1                  CMCON0_bits.CM1
#define CM2                  CMCON0_bits.CM2
#define CIS                  CMCON0_bits.CIS
#define C1INV                CMCON0_bits.C1INV
#define C2INV                CMCON0_bits.C2INV
#define C1OUT                CMCON0_bits.C1OUT
#define C2OUT                CMCON0_bits.C2OUT

// ----- CMCON1 bits --------------------
typedef union {
  struct {
    unsigned char C2SYNC:1;
    unsigned char T1GSS:1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
  };
} __CMCON1_bits_t;
extern volatile __CMCON1_bits_t __at(CMCON1_ADDR) CMCON1_bits;

#define C2SYNC               CMCON1_bits.C2SYNC
#define T1GSS                CMCON1_bits.T1GSS

// ----- EECON1 bits --------------------
typedef union {
  struct {
    unsigned char RD:1;
    unsigned char WR:1;
    unsigned char WREN:1;
    unsigned char WRERR:1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char EEPGD:1;
  };
  struct {
    unsigned char EERD:1;
    unsigned char EEWR:1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
  };
} __EECON1_bits_t;
extern volatile __EECON1_bits_t __at(EECON1_ADDR) EECON1_bits;

#define RD                   EECON1_bits.RD
#define EERD                 EECON1_bits.EERD
#define WR                   EECON1_bits.WR
#define EEWR                 EECON1_bits.EEWR
#define WREN                 EECON1_bits.WREN
#define WRERR                EECON1_bits.WRERR
#define EEPGD                EECON1_bits.EEPGD

// ----- INTCON bits --------------------
typedef union {
  struct {
    unsigned char RBIF:1;
    unsigned char INTF:1;
    unsigned char T0IF:1;
    unsigned char RBIE:1;
    unsigned char INTE:1;
    unsigned char T0IE:1;
    unsigned char PEIE:1;
    unsigned char GIE:1;
  };
  struct {
    unsigned char :1;
    unsigned char :1;
    unsigned char TMR0IF:1;
    unsigned char :1;
    unsigned char :1;
    unsigned char TMR0IE:1;
    unsigned char :1;
    unsigned char :1;
  };
} __INTCON_bits_t;
extern volatile __INTCON_bits_t __at(INTCON_ADDR) INTCON_bits;

#define RBIF                 INTCON_bits.RBIF
#define INTF                 INTCON_bits.INTF
#define T0IF                 INTCON_bits.T0IF
#define TMR0IF               INTCON_bits.TMR0IF
#define RBIE                 INTCON_bits.RBIE
#define INTE                 INTCON_bits.INTE
#define T0IE                 INTCON_bits.T0IE
#define TMR0IE               INTCON_bits.TMR0IE
#define PEIE                 INTCON_bits.PEIE
#define GIE                  INTCON_bits.GIE

// ----- IOC bits --------------------
typedef union {
  struct {
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char IOC4:1;
    unsigned char IOC5:1;
    unsigned char IOC6:1;
    unsigned char IOC7:1;
  };
} __IOC_bits_t;
extern volatile __IOC_bits_t __at(IOC_ADDR) IOC_bits;

#define IOC4                 IOC_bits.IOC4
#define IOC5                 IOC_bits.IOC5
#define IOC6                 IOC_bits.IOC6
#define IOC7                 IOC_bits.IOC7

// ----- IOCB bits --------------------
typedef union {
  struct {
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char :1;
    unsigned char IOCB4:1;
    unsigned char IOCB5:1;
    unsigned char IOCB6:1;
    unsigned char IOCB7:1;
  };
} __IOCB_bits_t;
extern volatile __IOCB_bits_t __at(IOCB_ADDR) IOCB_bits;

#define IOCB4                IOCB_bits.IOCB4
#define IOCB5                IOCB_bits.IOCB5
#define IOCB6                IOCB_bits.IOCB6
#define IOCB7                IOCB_bits.IOCB7

// ----- LCDCON bits --------------------
typedef union {
  struct {
    unsigned char LMUX0:1;
    unsigned char LMUX1:1;
    unsigned char CS0:1;
    unsigned char CS1:1;
    unsigned char VLCDEN:1;
    unsigned char WERR:1;
    unsigned char SLPEN:1;
    unsigned char LCDEN:1;
  };
} __LCDCON_bits_t;
extern volatile __LCDCON_bits_t __at(LCDCON_ADDR) LCDCON_bits;

#define LMUX0                LCDCON_bits.LMUX0
#define LMUX1                LCDCON_bits.LMUX1
#define CS0                  LCDCON_bits.CS0
#define CS1                  LCDCON_bits.CS1
#define VLCDEN               LCDCON_bits.VLCDEN
#define WERR                 LCDCON_bits.WERR
#define SLPEN                LCDCON_bits.SLPEN
#define LCDEN                LCDCON_bits.LCDEN

// ----- LCDDATA0 bits --------------------
typedef union {
  struct {
    unsigned char SEG0COM0:1;
    unsigned char SEG1COM0:1;
    unsigned char SEG2COM0:1;
    unsigned char SEG3COM0:1;
    unsigned char SEG4COM0:1;
    unsigned char SEG5COM0:1;
    unsigned char SEG6COM0:1;
    unsigned char SEG7COM0:1;
  };
  struct {
    unsigned char S0C0:1;
    unsigned char S1C0:1;
    unsigned char S2C0:1;
    unsigned char S3C0:1;
    unsigned char S4C0:1;
    unsigned char S5C0:1;
    unsigned char S6C0:1;
    unsigned char S7C0:1;
  };
} __LCDDATA0_bits_t;
extern volatile __LCDDATA0_bits_t __at(LCDDATA0_ADDR) LCDDATA0_bits;

#define SEG0COM0             LCDDATA0_bits.SEG0COM0
#define S0C0                 LCDDATA0_bits.S0C0
#define SEG1COM0             LCDDATA0_bits.SEG1COM0
#define S1C0                 LCDDATA0_bits.S1C0
#define SEG2COM0             LCDDATA0_bits.SEG2COM0
#define S2C0                 LCDDATA0_bits.S2C0
#define SEG3COM0             LCDDATA0_bits.SEG3COM0
#define S3C0                 LCDDATA0_bits.S3C0
#define SEG4COM0             LCDDATA0_bits.SEG4COM0
#define S4C0                 LCDDATA0_bits.S4C0
#define SEG5COM0             LCDDATA0_bits.SEG5COM0
#define S5C0                 LCDDATA0_bits.S5C0
#define SEG6COM0             LCDDATA0_bits.SEG6COM0
#define S6C0                 LCDDATA0_bits.S6C0
#define SEG7COM0             LCDDATA0_bits.SEG7COM0
#define S7C0                 LCDDATA0_bits.S7C0

// ----- LCDDATA1 bits --------------------
typedef union {
  struct {
    unsigned char SEG8COM0:1;
    unsigned char SEG9COM0:1;
    unsigned char SEG10COM0:1;
    unsigned char SEG11COM0:1;
    unsigned char SEG12COM0:1;
    unsigned char SEG13COM0:1;
    unsigned char SEG14COM0:1;
    unsigned char SEG15COM0:1;
  };
  struct {
    unsigned char S8C0:1;
    unsigned char S9C0:1;
    unsigned char S10C0:1;
    unsigned char S11C0:1;
    unsigned char S12C0:1;
    unsigned char S13C0:1;
    unsigned char S14C0:1;
    unsigned char S15C0:1;
  };
} __LCDDATA1_bits_t;
extern volatile __LCDDATA1_bits_t __at(LCDDATA1_ADDR) LCDDATA1_bits;

#define SEG8COM0             LCDDATA1_bits.SEG8COM0
#define S8C0                 LCDDATA1_bits.S8C0
#define SEG9COM0             LCDDATA1_bits.SEG9COM0
#define S9C0                 LCDDATA1_bits.S9C0
#define SEG10COM0            LCDDATA1_bits.SEG10COM0
#define S10C0                LCDDATA1_bits.S10C0
#define SEG11COM0            LCDDATA1_bits.SEG11COM0
#define S11C0                LCDDATA1_bits.S11C0
#define SEG12COM0            LCDDATA1_bits.SEG12COM0
#define S12C0                LCDDATA1_bits.S12C0
#define SEG13COM0            LCDDATA1_bits.SEG13COM0
#define S13C0                LCDDATA1_bits.S13C0
#define SEG14COM0            LCDDATA1_bits.SEG14COM0
#define S14C0                LCDDATA1_bits.S14C0
#define SEG15COM0            LCDDATA1_bits.SEG15COM0
#define S15C0                LCDDATA1_bits.S15C0

// ----- LCDDATA10 bits --------------------
typedef union {
  struct {
    unsigned char SEG8COM3:1;
    unsigned char SEG9COM3:1;
    unsigned char SEG10COM3:1;
    unsigned char SEG11COM3:1;
    unsigned char SEG12COM3:1;
    unsigned char SEG13COM3:1;
    unsigned char SEG14COM3:1;
    unsigned char SEG15COM3:1;
  };
  struct {
    unsigned char S8C3:1;
    unsigned char S9C3:1;
    unsigned char S10C3:1;
    unsigned char S11C3:1;
    unsigned char S12C3:1;
    unsigned char S13C3:1;
    unsigned char S14C3:1;
    unsigned char S15C3:1;
  };
} __LCDDATA10_bits_t;
extern volatile __LCDDATA10_bits_t __at(LCDDATA10_ADDR) LCDDATA10_bits;

#define SEG8COM3             LCDDATA10_bits.SEG8COM3
#define S8C3                 LCDDATA10_bits.S8C3
#define SEG9COM3             LCDDATA10_bits.SEG9COM3
#define S9C3                 LCDDATA10_bits.S9C3
#define SEG10COM3            LCDDATA10_bits.SEG10COM3
#define S10C3                LCDDATA10_bits.S10C3
#define SEG11COM3            LCDDATA10_bits.SEG11COM3
#define S11C3                LCDDATA10_bits.S11C3
#define SEG12COM3            LCDDATA10_bits.SEG12COM3
#define S12C3                LCDDATA10_bits.S12C3
#define SEG13COM3            LCDDATA10_bits.SEG13COM3
#define S13C3                LCDDATA10_bits.S13C3
#define SEG14COM3            LCDDATA10_bits.SEG14COM3
#define S14C3                LCDDATA10_bits.S14C3
#define SEG15COM3            LCDDATA10_bits.SEG15COM3
#define S15C3                LCDDATA10_bits.S15C3

// ----- LCDDATA3 bits --------------------
typedef union {
  struct {
    unsigned char SEG0COM1:1;
    unsigned char SEG1COM1:1;
    unsigned char SEG2COM1:1;
    unsigned char SEG3COM1:1;
    unsigned char SEG4COM1:1;
    unsigned char SEG5COM1:1;
    unsigned char SEG6COM1:1;
    unsigned char SEG7COM1:1;
  };
  struct {
    unsigned char S0C1:1;

⌨️ 快捷键说明

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