📄 pic18f6720_peripherydevice.h
字号:
/*------------------------------------------------------*/
/*FILE NAME : PIC18F6720_PERIPHERYDEVICE.H */
/*DATE : 06.12.5 */
/*FOR HardWare : wtrctrl_v2.sch */
/*NAME : QiuHao */
/* */
/* */
/* */
/*------------------------------------------------------*/
#ifndef __PIC18F6720_DEVICE_OP_
#define __PIC18F6720_DEVICE_OP_
/* MCU INTERRUPT */
#define ENGIE INTCONbits.GIE = 1
#define DSGIE INTCONbits.GIE = 0
#define ENPIE INTCONbits.PEIE = 1
#define DSPIE INTCONbits.PEIE = 0
#define DsInt DSGIE
#define OpInt ENGIE
/* UART1 for infrared ray */
#define SETUART1BUADRATE SPBRG1 = 207 //1.2k
#define UART1RXEN RCSTA1bits.CREN = 1
#define UART1RXDS RCSTA1bits.CREN = 0
#define CLRUART1RXINTF PIR1bits.RC1IF = 0
#define UART1RXINTIF PIR1bits.RC1IF
/* UART2 for GSM TC35i */
#define SETUART2BUADRATE SPBRG2 = 25 //9.6k
#define UART2RXEN RCSTA2bits.CREN = 1
#define UART2RXDS RCSTA2bits.CREN = 0
#define CLRUART2RXINTF PIR3bits.RC2IF = 0
#define UART2RXINTIF PIR3bits.RC2IF
/* TIMER0 */
#define TIMER0ON T0CONbits.TMR0ON = 1
#define TIMER0OFF T0CONbits.TMR0ON = 0
#define ENTIMER0INT INTCONbits.TMR0IE = 1
#define DSTIMER0INT INTCONbits.TMR0IE = 0
#define CLRTIMER0INTF INTCONbits.TMR0IF = 0
#define TIMER0INTF INTCONbits.TMR0IF
#define SETT0_31mS T0CON |= 0x00
#define SETT0_63mS T0CON |= 0x01
#define SETT0_125mS T0CON |= 0x02
#define SETT0_250mS T0CON |= 0x03
#define SETT0_500mS T0CON |= 0x04
#define SETT0_1S T0CON |= 0x05
#define SETT0_2S T0CON |= 0x06
#define SETT0_4S T0CON |= 0x07
/* TIMER1 */
#define TIMER1ON T1CONbits.TMR1ON = 1
#define TIMER1OFF T1CONbits.TMR1ON = 0
#define CLRTIMER1INTF PIR1bits.TMR1IF = 0
#define TIMER1INTF PIR1bits.TMR1IF
/* TIMER2 */
#define TIMER2ON TCON2bits.TMR2ON = 1
#define TIMER2OFF TCON2bits.TMR2ON = 0
#define CLRTIMER2INTF PIR1bits.TMR2IF = 0
#define TIMER2INTF PIR1bits.TMR2IF
#define SET38K PR2 = 26
#define SET56K PR2 = 17
#define SET115k PR2 = 8
/* TIMER3 */
#define TIMER3ON T3CONbits.TMR3ON = 1
#define TIMER3OFF T3CONbits.TMR3ON = 0
#define CLRTIMER3INTF PIR2bits.TMR3IF = 0
#define TIMER3INTF PIR2bits.TMR3IF
/* A/D */
#define TURNADON ADCON0bits.ADON = 1
#define TURNADOFF ADCON0bits.ADON = 0
#define STARTAD ADCON0bits.GO = 1
#define ADSTA ADCON0bits.GO
#define ADINTF PIR1bits.ADIF
#define CLRADINTF PIR1bits.ADIF = 0
#define ADVALH ADRESH
#define ADVALL ADRESL
#define ADSELCLR ADCON0 &= 0xc3
#define ADPRESSSEL ADCON0 |= 0x10 //AN4 TLC6800
#define ADMOTOSEL ADCON0 |= 0x14 //AN5 Motor Velue
#define ADPWRSEL ADCON0 |= 0x04 //AN1 6V battery Voltage det
#define ADSPWRSEL ADCON0 |= 0x00 //AN0 sun battery Voltage det
#define ADTEMPSEL ADCON0 |= 0x18 //AN6 INA326
#define ADTEMP2SEL ADCON0 |= 0x08 //AN2 LM324
/* WDT */
#define CLRDOG asm("clrwdt")
/* EXTREN INTERRUPT */
#define _INT0F INTCONbits.INT0IF //for sin1
#define CLR_INT0F INTCONbits.INT0IF = 0
#define _INT1F INTCON3bits.INT1IF //for sin2
#define CLR_INT1F INTCON3bits.INT1IF = 0
#define _INT2F INTCON3bits.INT2IF //for sin3
#define CLR_INT2F INTCON3bits.INT2IF = 0
#define _INT3F INTCON3bits.INT3IF //for KBINT
#define CLR_INT3F INTCON3bits.INT3IF = 0
#define IBINTEN INTCONbits.RBIE = 1
#define IBINTDS INTCONbits.RBIE = 0
#define SETRBINTIP INTCON2bits.RBIP = 0
#define _RBINTF INTCONbits.RBIF
#define CLR_RBINTF INTCONbits.RBIF = 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -