📄 pic16f785.h
字号:
#ifndef _HTC_H_
#warning Header file pic16f785.h included directly. Use #include <htc.h> instead.
#endif
/* header file for the MICROCHIP PIC microcontroller
PIC16F785
PIC16HV785
*/
#ifndef __PIC16F785_H
#define __PIC16F785_H
// Special function register definitions
volatile unsigned char INDF @ 0x00;
volatile unsigned char TMR0 @ 0x01;
volatile unsigned char PCL @ 0x02;
volatile unsigned char STATUS @ 0x03;
unsigned char FSR @ 0x04;
volatile unsigned char PORTA @ 0x05;
volatile unsigned char PORTB @ 0x06;
volatile unsigned char PORTC @ 0x07;
volatile unsigned char PCLATH @ 0x0A;
volatile unsigned char INTCON @ 0x0B;
volatile unsigned char PIR1 @ 0x0C;
volatile unsigned char TMR1L @ 0x0E;
volatile unsigned char TMR1H @ 0x0F;
volatile unsigned char T1CON @ 0x10;
volatile unsigned char TMR2 @ 0x11;
volatile unsigned char T2CON @ 0x12;
volatile unsigned char CCPR1L @ 0x13;
volatile unsigned char CCPR1H @ 0x14;
volatile unsigned char CCP1CON @ 0x15;
volatile unsigned char WDTCON @ 0x18;
volatile unsigned char ADRESH @ 0x1E;
volatile unsigned char ADCON0 @ 0x1F;
unsigned char OPTION @ 0x81;
volatile unsigned char TRISA @ 0x85;
volatile unsigned char TRISB @ 0x86;
volatile unsigned char TRISC @ 0x87;
unsigned char PIE1 @ 0x8C;
volatile unsigned char PCON @ 0x8E;
volatile unsigned char OSCCON @ 0x8F;
unsigned char OSCTUNE @ 0x90;
unsigned char ANSEL0 @ 0x91;
unsigned char PR2 @ 0x92;
unsigned char ANSEL1 @ 0x93;
unsigned char WPUA @ 0x95;
unsigned char IOCA @ 0x96;
volatile unsigned char REFCON @ 0x98;
unsigned char VRCON @ 0x99;
volatile unsigned char EEDATA @ 0x9A;
volatile unsigned char EEADR @ 0x9B;
/* Alternate definition */
volatile unsigned char EEADRL @ 0x9B;
volatile unsigned char EECON1 @ 0x9C;
volatile unsigned char EECON2 @ 0x9D;
volatile unsigned char ADRESL @ 0x9E;
unsigned char ADCON1 @ 0x9F;
unsigned char PWMCON1 @ 0x110;
unsigned char PWMCON0 @ 0x111;
volatile unsigned char PWMCLK @ 0x112;
unsigned char PWMPH1 @ 0x113;
unsigned char PWMPH2 @ 0x114;
volatile unsigned char CM1CON0 @ 0x119;
volatile unsigned char CM2CON0 @ 0x11A;
volatile unsigned char CM2CON1 @ 0x11B;
unsigned char OPA1CON @ 0x11C;
unsigned char OPA2CON @ 0x11D;
/* Definitions for STATUS register */
volatile bit CARRY @ ((unsigned)&STATUS*8)+0;
volatile bit DC @ ((unsigned)&STATUS*8)+1;
volatile bit ZERO @ ((unsigned)&STATUS*8)+2;
volatile bit PD @ ((unsigned)&STATUS*8)+3;
volatile bit TO @ ((unsigned)&STATUS*8)+4;
bit RP0 @ ((unsigned)&STATUS*8)+5;
bit RP1 @ ((unsigned)&STATUS*8)+6;
bit IRP @ ((unsigned)&STATUS*8)+7;
/* Definitions for PORTA register */
volatile bit RA0 @ ((unsigned)&PORTA*8)+0;
volatile bit RA1 @ ((unsigned)&PORTA*8)+1;
volatile bit RA2 @ ((unsigned)&PORTA*8)+2;
volatile bit RA3 @ ((unsigned)&PORTA*8)+3;
volatile bit RA4 @ ((unsigned)&PORTA*8)+4;
volatile bit RA5 @ ((unsigned)&PORTA*8)+5;
/* Definitions for PORTB register */
volatile bit RB4 @ ((unsigned)&PORTB*8)+4;
volatile bit RB5 @ ((unsigned)&PORTB*8)+5;
volatile bit RB6 @ ((unsigned)&PORTB*8)+6;
volatile bit RB7 @ ((unsigned)&PORTB*8)+7;
/* Definitions for PORTC register */
volatile bit RC0 @ ((unsigned)&PORTC*8)+0;
volatile bit RC1 @ ((unsigned)&PORTC*8)+1;
volatile bit RC2 @ ((unsigned)&PORTC*8)+2;
volatile bit RC3 @ ((unsigned)&PORTC*8)+3;
volatile bit RC4 @ ((unsigned)&PORTC*8)+4;
volatile bit RC5 @ ((unsigned)&PORTC*8)+5;
volatile bit RC6 @ ((unsigned)&PORTC*8)+6;
volatile bit RC7 @ ((unsigned)&PORTC*8)+7;
/* Definitions for INTCON register */
volatile bit RAIF @ ((unsigned)&INTCON*8)+0;
volatile bit INTF @ ((unsigned)&INTCON*8)+1;
volatile bit T0IF @ ((unsigned)&INTCON*8)+2;
bit RAIE @ ((unsigned)&INTCON*8)+3;
bit INTE @ ((unsigned)&INTCON*8)+4;
bit T0IE @ ((unsigned)&INTCON*8)+5;
bit PEIE @ ((unsigned)&INTCON*8)+6;
volatile bit GIE @ ((unsigned)&INTCON*8)+7;
/* Definitions for PIR1 register */
volatile bit TMR1IF @ ((unsigned)&PIR1*8)+0;
volatile bit TMR2IF @ ((unsigned)&PIR1*8)+1;
volatile bit OSFIF @ ((unsigned)&PIR1*8)+2;
volatile bit C1IF @ ((unsigned)&PIR1*8)+3;
volatile bit C2IF @ ((unsigned)&PIR1*8)+4;
volatile bit CCP1IF @ ((unsigned)&PIR1*8)+5;
volatile bit ADIF @ ((unsigned)&PIR1*8)+6;
volatile bit EEIF @ ((unsigned)&PIR1*8)+7;
/* Definitions for T1CON register */
bit TMR1ON @ ((unsigned)&T1CON*8)+0;
bit TMR1CS @ ((unsigned)&T1CON*8)+1;
bit T1SYNC @ ((unsigned)&T1CON*8)+2;
bit T1OSCEN @ ((unsigned)&T1CON*8)+3;
bit T1CKPS0 @ ((unsigned)&T1CON*8)+4;
bit T1CKPS1 @ ((unsigned)&T1CON*8)+5;
bit TMR1GE @ ((unsigned)&T1CON*8)+6;
bit T1GINV @ ((unsigned)&T1CON*8)+7;
/* Definitions for T2CON register */
bit T2CKPS0 @ ((unsigned)&T2CON*8)+0;
bit T2CKPS1 @ ((unsigned)&T2CON*8)+1;
bit TMR2ON @ ((unsigned)&T2CON*8)+2;
bit TOUTPS0 @ ((unsigned)&T2CON*8)+3;
bit TOUTPS1 @ ((unsigned)&T2CON*8)+4;
bit TOUTPS2 @ ((unsigned)&T2CON*8)+5;
bit TOUTPS3 @ ((unsigned)&T2CON*8)+6;
/* Definitions for CCP1CON register */
bit CCP1M0 @ ((unsigned)&CCP1CON*8)+0;
bit CCP1M1 @ ((unsigned)&CCP1CON*8)+1;
bit CCP1M2 @ ((unsigned)&CCP1CON*8)+2;
bit CCP1M3 @ ((unsigned)&CCP1CON*8)+3;
bit DC1B0 @ ((unsigned)&CCP1CON*8)+4;
bit DC1B1 @ ((unsigned)&CCP1CON*8)+5;
/* Definitions for WDTCON register */
bit SWDTEN @ ((unsigned)&WDTCON*8)+0;
bit WDTPS0 @ ((unsigned)&WDTCON*8)+1;
bit WDTPS1 @ ((unsigned)&WDTCON*8)+2;
bit WDTPS2 @ ((unsigned)&WDTCON*8)+3;
bit WDTPS3 @ ((unsigned)&WDTCON*8)+4;
/* Definitions for ADCON0 register */
bit ADON @ ((unsigned)&ADCON0*8)+0;
volatile bit GODONE @ ((unsigned)&ADCON0*8)+1;
bit CHS0 @ ((unsigned)&ADCON0*8)+2;
bit CHS1 @ ((unsigned)&ADCON0*8)+3;
bit CHS2 @ ((unsigned)&ADCON0*8)+4;
bit CHS3 @ ((unsigned)&ADCON0*8)+5;
bit VCFG @ ((unsigned)&ADCON0*8)+6;
bit ADFM @ ((unsigned)&ADCON0*8)+7;
/* Definitions for OPTION register */
bit PS0 @ ((unsigned)&OPTION*8)+0;
bit PS1 @ ((unsigned)&OPTION*8)+1;
bit PS2 @ ((unsigned)&OPTION*8)+2;
bit PSA @ ((unsigned)&OPTION*8)+3;
bit T0SE @ ((unsigned)&OPTION*8)+4;
bit T0CS @ ((unsigned)&OPTION*8)+5;
bit INTEDG @ ((unsigned)&OPTION*8)+6;
bit RAPU @ ((unsigned)&OPTION*8)+7;
/* Definitions for TRISA register */
bit TRISA0 @ ((unsigned)&TRISA*8)+0;
bit TRISA1 @ ((unsigned)&TRISA*8)+1;
bit TRISA2 @ ((unsigned)&TRISA*8)+2;
bit TRISA3 @ ((unsigned)&TRISA*8)+3;
bit TRISA4 @ ((unsigned)&TRISA*8)+4;
bit TRISA5 @ ((unsigned)&TRISA*8)+5;
/* Definitions for TRISB register */
volatile bit TRISB4 @ ((unsigned)&TRISB*8)+4;
volatile bit TRISB5 @ ((unsigned)&TRISB*8)+5;
volatile bit TRISB6 @ ((unsigned)&TRISB*8)+6;
volatile bit TRISB7 @ ((unsigned)&TRISB*8)+7;
/* Definitions for TRISC register */
volatile bit TRISC0 @ ((unsigned)&TRISC*8)+0;
volatile bit TRISC1 @ ((unsigned)&TRISC*8)+1;
volatile bit TRISC2 @ ((unsigned)&TRISC*8)+2;
volatile bit TRISC3 @ ((unsigned)&TRISC*8)+3;
volatile bit TRISC4 @ ((unsigned)&TRISC*8)+4;
volatile bit TRISC5 @ ((unsigned)&TRISC*8)+5;
volatile bit TRISC6 @ ((unsigned)&TRISC*8)+6;
volatile bit TRISC7 @ ((unsigned)&TRISC*8)+7;
/* Definitions for PIE1 register */
bit TMR1IE @ ((unsigned)&PIE1*8)+0;
bit TMR2IE @ ((unsigned)&PIE1*8)+1;
bit OSFIE @ ((unsigned)&PIE1*8)+2;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -