📄 pic18f6720_io.h
字号:
/*------------------------------------------*/
/*FILE NAME : PIC18F6720_IO.H */
/*DATE : 06.11.26 */
/*FOR HardWare : wtrctrl_v2.sch */
/*NAME : QiuHao */
/* */
/* */
/* */
/*------------------------------------------*/
#ifndef __PIC18F6720_IO_
#define __PIC18F6720_IO_
/* DS1302 */
#define DSCLKOUT LATDbits.LATD6
#define SETDSCLK DDRDbits.RD6 = 0;DSCLKOUT = 1
#define DSRSTOUT LATDbits.LATD4
#define SETDSRST DDRDbits.RD4 = 0;DSRSTOUT = 1
#define DSDAIN PORTDbits.RD5
#define DSDAOUT LATDbits.LATD5
#define SETDSDAOUT DDRDbits.RD5 = 0
#define SETDSDAIN DDRDbits.RD5 = 1
#define SETDSDA SETDSDAOUT;DSDAOUT = 1
/* AT24C1024 */
#define E2WPOUT LATCbits.LATC2
#define SETE2WP DDRCbits.RC2 = 0;E2WPOUT = 1
#define E2CLKOUT LATCbits.LATC3
#define SETE2CLK DDRCbits.RC3 = 0;E2CLKOUT = 1
#define E2SDAIN PORTCbits.RC4
#define E2SDAOUT LATCbits.LATC4
#define SETE2DAOUT DDRCbits.RC4 = 0
#define SETE2DAIN DDRCbits.RC4 = 1
#define SETE2DA SETE2DAIN;E2SDAOUT = 1
/* MOTOR DREVIC */
#define CLOSEOUT LATCbits.LATC1
#define SETCLOSEOUT DDRCbits.RC1 = 0
#define SETCLOSE SETCLOSEOUT;CLOSEOUT = 0
#define OPENOUT LATCbits.LATC0
#define SETOPENOUT DDRCbits.RC0 = 0
#define SETOPEN SETOPENOUT;OPENOUT = 0
#define OPVEL CLOSEOUT = 0;OPENOUT = 1 //Velue Oparetion
#define CLVEL OPENOUT = 0;CLOSEOUT = 1
#define RSTVEL OPENOUT = 0;CLOSEOUT = 0
#define VELSTAOPIN PORTBbits.RB5
#define VELSTAOPOUT LATBbits.LATB5
#define SETVELSTAOPIN DDRBbits.RB5 = 1
#define SETVELSTAOP SETVELSTAOPIN
#define VELSTACLIN PORTBbits.RB4
#define VELSTACLOUT LATBbits.LATB4
#define SETVELSTACLIN DDRBbits.RB4 = 1
#define SETVELSTACL SETVELSTACLIN
/* SIN1~3 */
#define SIN1OUT LATBbits.LATB0
#define SIN1IN PORTBbits.RB0
#define SETSIN1IN DDRBbits.RB0 = 1
#define SETSIN1OUT DDRBbits.RB0 = 0
#define SIN1INTEN INTCONbits.INT0IE = 1
#define SIN1INTDS INTCONbits.INT0IE = 0
#define SIN1EDG INTCON2bits.INTEDG0
#define SETSIN1 SETSIN1IN;SIN1OUT = 1;SIN1EDG = 0;SIN1INTEN
#define SIN2OUT LATBbits.LATB1
#define SIN2IN PORTBbits.RB1
#define SETSIN2IN DDRBbits.RB1 = 1
#define SETSIN2OUT DDRBbits.RB1 = 0
#define SIN2INTEN INTCON3bits.INT1IE = 1
#define SIN2INTDS INTCON3bits.INT1IE = 0
#define SIN2EDG INTCON2bits.INTEDG1
#define SIN2IP INTCON3bits.INT1IP
#define SETSIN2 SETSIN2IN;SIN2OUT = 1;SIN2EDG = 0;SIN2IP = 1;SIN2INTEN
#define SIN3OUT LATBbits.LATB2
#define SIN3IN PORTBbits.RB2
#define SETSIN3IN DDRBbits.RB2 = 1
#define SETSIN3OUT DDRBbits.RB2 = 0
#define SIN3INTEN INTCON3bits.INT2IE = 1
#define SIN3INTDS INTCON3bits.INT2IE = 0
#define SIN3EDG INTCON2bits.INTEDG2
#define SIN3IP INTCON3bits.INT2IP
#define SETSIN3 SETSIN3IN;SIN3OUT = 1;SIN3EDG = 0;SIN3IP = 1;SIN3INTEN
/* SOUT1~3 */
#define SOUT1OUT LATFbits.LATF2
#define SOUT1IN PORTFbits.RF2
#define SETSOUT1OUT DDRFbits.RF2 = 0
#define SETSOUT1IN DDRFbits.RF2 = 1
#define SETSOUT1 SETSOUT1OUT;SOUT1OUT = 1
#define OPOUT1 SOUT1OUT = 0
#define CLOUT1 SOUT1OUT = 1
#define SOUT2OUT LATFbits.LATF3
#define SOUT2IN PORTFbits.RF3
#define SETSOUT2OUT DDRFbits.RF3 = 0
#define SETSOUT2IN DDRFbits.RF3 = 1
#define SETSOUT2 SETSOUT2OUT;SOUT2OUT = 1
#define OPOUT2 SOUT2OUT = 0
#define CLOUT2 SOUT2OUT = 1
#define SOUT3OUT LATFbits.LATF4
#define SOUT3IN PORTFbits.RF4
#define SETSOUT3OUT DDRFbits.RF4 = 0
#define SETSOUT3IN DDRFbits.RF4 = 1
#define SETSOUT3 SETSOUT3OUT;SOUT3OUT = 1
#define OPOUT3 SOUT3OUT = 0
#define CLOUT3 SOUT3OUT = 1
/* USER KEY */
#define KBINTOUT LATBbits.LATB3
#define KBINTIN PORTBbits.RB3
#define SETKBINTIN DDRBbits.RB3 = 1
#define SETKBINTOUT DDRBbits.RB3 = 0
#define KBINTINTEN INTCON3bits.INT3IE = 1
#define KBINTINTDS INTCON3bits.INT3IE = 0
#define KBINTEDG INTCON2bits.INTEDG3
#define KBINTIP INTCON2bits.INT3IP
#define SETKBINT SETKBINTIN;KBINTOUT = 1;KBINTEDG = 0;KBINTIP = 0;KBINTINTDS
#define KEYDOWNOUT LATFbits.LATF5
#define KEYDOWNIN PORTFbits.RF5
#define SETKEYDOWNIN DDRFbits.RF5 = 1
#define SETKEYDOWNOUT DDRFbits.RF5 = 0
#define SETKEYDOWN SETKEYDOWNOUT;KEYDOWNOUT = 1
#define KEYDOWNDS KEYDOWNOUT = 1//;KBINTINTDS
#define KEYDOWNEN KEYDOWNOUT = 0//;KBINTINTEN
#define KEYUPOUT LATFbits.LATF6
#define KEYUPIN PORTFbits.RF6
#define SETKEYUPIN DDRFbits.RF6 = 1
#define SETKEYUPOUT DDRFbits.RF6 = 0
#define SETKEYUP SETKEYUPOUT;KEYUPOUT = 1
#define KEYUPDS KEYUPOUT = 1//;KBINTINTDS
#define KEYUPEN KEYUPOUT = 0//;KBINTINTEN
#define KEYONOFFOUT LATFbits.LATF7
#define KEYONOFFIN PORTFbits.RF7
#define SETKEYONOFFIN DDRFbits.RF7 = 1
#define SETKEYONOFFOUT DDRFbits.RF7 = 0
#define SETKEYONOFF SETKEYONOFFOUT;KEYONOFFOUT = 1
#define KEYONOFFDS KEYONOFFOUT = 1//;KBINTINTDS
#define KEYONOFFEN KEYONOFFOUT = 0//;KBINTINTEN
#define KEYSELOUT LATGbits.LATG4
#define KEYSELIN PORTGbits.RG4
#define SETKEYSELIN DDRGbits.RG4 = 1
#define SETKEYSELOUT DDRGbits.RG4 = 0
#define SETKEYSEL SETKEYSELOUT;KEYSELOUT = 1
#define KEYSELDS KEYSELOUT = 1//;KBINTINTDS
#define KEYSELEN KEYSELOUT = 0//;KBINTINTEN
/* HT1623 LCD DISPLAY */
#define LEDCTRL LATDbits.LATD3 //PIN 53 OUTPUT
#define DDRLEDCTRL DDRDbits.RD3
#define LEDCTRLOUT LATDbits.LATD3
#define SETLEDCTRLOUT DDRDbits.RD3 = 0
#define SETLEDCTRL SETLEDCTRLOUT ;LEDCTRLOUT = 0
#define LCDCS LATDbits.LATD2 //PIN 54 OUTPUT
#define DDRLCDCS DDRDbits.RD2
#define LCDCSOUT LATDbits.LATD2
#define SETLCDCSOUT DDRDbits.RD2 = 0
#define SETLCDCS SETLCDCSOUT;LCDCSOUT = 1
#define LCDRD LATDbits.LATD1 //PIN 55 OUTPUT
#define DDRLCDRD DDRDbits.RD1
#define LCDRDOUT LATDbits.LATD1
#define SETLCDRDOUT DDRDbits.RD1 = 0
#define SETLCDRD SETLCDRDOUT;LCDRDOUT = 1
#define LCDRW LATDbits.LATD0 //PIN 58 OUTPUT
#define DDRLCDRW DDRDbits.RD0
#define LCDRWOUT LATDbits.LATD0
#define SETLCDRWOUT DDRDbits.RD0 = 0
#define SETLCDRW SETLCDRWOUT;LCDRWOUT = 1
#define LCDDA_IN PORTEbits.RE7 //PIN 59 OUTPUT/INPUT
#define LCDDA_OUT LATEbits.LATE7
#define DDRLCDDA DDREbits.RE7
#define LCDDAOUT LATEbits.LATE7
#define LCDDAIN PORTEbits.RE7
#define SETLCDDAOUT DDREbits.RE7 = 0
#define SETLCDDAIN DDREbits.RE7 = 1
#define SETLCDDA SETLCDDAOUT;LCDDAOUT = 1
/* FM1702 R/W CARD DEVICE */
#define HQCCLK LATEbits.LATE6 //PIN 60 OUTPUT
#define DDRHQCCLK DDREbits.RE6
#define HQCCLKOUT LATEbits.LATE6
#define SETHQCCLKOUT DDREbits.RE6 = 0
#define SETHQCCLKIN DDREbits.RE6 = 1
#define SETHQCCLK SETHQCCLKOUT;HQCCLKOUT = 1
#define HQCMN LATEbits.LATE5 //PIN 61 OUTPUT
#define DDRHQCMN DDREbits.RE5
#define HQCMNOUT LATEbits.LATE5
#define SETHQCMNOUT DDREbits.RE5 = 0
#define SETHQCMNIN DDREbits.RE5 = 1
#define SETHQCMN SETHQCMNOUT;HQCMNOUT = 1
#define HQCDI LATEbits.LATE4 //PIN 62 INPUT
#define DDRHQCDI DDREbits.RE4
#define HQCDIIN PORTEbits.RE4
#define HQCDIOUT LATEbits.LATE4
#define SETHQCDIOUT DDREbits.RE4 = 0
#define SETHQCDIIN DDREbits.RE4 = 1
#define SETHQCDI SETHQCDIOUT ;HQCDIOUT = 1
#define HQCDO PORTEbits.RE3 //PIN 63 OUTPUT
#define DDRHQCDO DDREbits.RE3
#define HQCDOOUT LATEbits.LATE3
#define SETHQCDOIN DDREbits.RE3 = 1
#define SETHQCDO SETHQCDOIN;HQCDOOUT = 1
#define HQCRST LATEbits.LATE2 //PIN 64 OUTPUT
#define DDRHQCRST DDREbits.RE2
#define HQCRSTOUT LATEbits.LATE2
#define SETHQCRSTOUT DDREbits.RE2 = 0
#define SETHQCRSTIN DDREbits.RE2 = 1
#define SETHQCRST SETHQCRSTOUT;HQCRSTOUT = 1
#define HQCPWRCTRLOUT LATEbits.LATE1
#define SETHQCPWRCTRLOUT DDREbits.RE1 = 0
#define SETHQCPWRCTRL SETHQCPWRCTRLOUT;HQCPWRCTRLOUT = 0 //initialization don`t give power to FM1702
/* TC35i R/T SMS DEVICE */
#define GSMPWRCTRLOUT LATEbits.LATE0
#define SETGSMPWRCTRLOUT DDREbits.RE0 = 0
#define SETGSMPWRCTRL SETGSMPWRCTRLOUT;GSMPWRCTRLOUT = 0
#define PDOUT LATGbits.LATG0
#define SETPDOUT DDRGbits.RG0 = 0
#define SETPD SETPDOUT;PDOUT = 1
#define IGTOUT LATGbits.LATG3
#define SETIGTOUT DDRGbits.RG3 = 0
#define SETIGT SETIGTOUT;IGTOUT = 1
#define DTETXDOUT LATGbits.LATG1
#define SETDTETXDOUT DDRGbits.RG1 = 0
#define SETDTETXD SETDTETXDOUT;DTETXDOUT = 1
#define DTERXDOUT LATGbits.LATG2
#define SETDTERXDIN DDRGbits.RG1 = 1
#define SETDTERXD SETDTERXDIN;DTERXDOUT = 1
/* buzzer */
#define BZOUT LATDbits.LATD7 //buzzer drived dy 2S9012
#define SETBZOUT DDRDbits.RD7 = 0
#define SETBZ SETBZOUT;BZOUT = 1
#define BZON BZOUT = 0
#define BZOFF BZOUT = 1
#define YLPWRCTRLOUT LATCbits.LATC5
#define SETYLPWRCTRLOUT DDRCbits.RC5 = 0
#define SETYLPWRCTRL SETYLPWRCTRLOUT;YLPWRCTRLOUT = 0
/* UART1 */
#define TXD1OUT LATCbits.LATC6
#define SETTXD1OUT DDRCbits.RC6 = 0
#define SETTXD1IN DDRCbits.RC6 = 1
#define SETTXD1 SETTXD1OUT;TXD1OUT = 1
#define RXD1OUT LATCbits.LATC7
#define SETRXD1IN DDRCbits.RC7 = 1
#define SETRXD1 SETRXD1IN;RXD1OUT = 1
#define HWPWCTRL LATBbits.LATB7
#define SETHWPWCTRLOUT DDRBbits.RB7 = 0
#define SETHWPWCTRL SETHWPWCTRLOUT;HWPWCTRL = 1;
#define RS485RT LATBbits.LATB7
#define SETRS485RTOUT DDRBbits.RB7 = 0
#define SETRS485RTIN DDRBbits.RB7 = 1
#define SETRS485RT SETRS485RTOUT;RS485RT = 0 //485 bus rev
#define SET485TTLOUT RS485RT = 0
#define SET485TTLIN RS485RT = 1
#define HW38KOUT LATAbits.LATA4
#define SETHW38KOUTOUT DDRAbits.RA4 = 0
#define SETHW38KOUT SETHW38KOUTOUT;HW38KOUT = 1
#define HW38KOUTH HW38KOUT = 1
#define HW38KOUTL HW38KOUT = 0
/* SOLAD battery charge up CONTRL */
#define CDCTRLOUT LATBbits.LATB6
#define SETCDCTRLOUT DDRBbits.RB6 = 0
#define SETCDCTRL SETCDCTRLOUT; CDCTRLOUT = 0
/* Power Voltage detect */
#define SETPWRDET_ANIN DDRAbits.RA1 = 1 //6V battery Voltage det AN1
/* SOLAD battery Voltage detect */
#define SETSPWRDET_ANIN DDRAbits.RA0 = 1 //sun battery Voltage det AN0
/* Temputer detect */
#define SETTEMPUTERDET_ANIN DDRFbits.RF1 = 1 //INA326 AN6
/* Temputer2 detect */
#define SETTEMPUTER2DET_ANIN DDRAbits.RA2 = 1 //LM324 AN2
/* PRESSURE DETECT */
#define SETYLDET_ANIN DDRAbits.RA5 = 1 //TLC6800 AN4
/* MOTO DETECT */
#define SETMTRDET_ANIN DDRFbits.RF0 = 1 //motor AN5
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -