Subversion Repositories Code-Repo

Compare Revisions

Ignore whitespace Rev 146 → Rev 147

/PIC Stuff/PIC_27J13/defines.h
0,0 → 1,104
#ifndef __maindefs_h
#define __maindefs_h
 
#include <p18f27j13.h>
#include "uart.h"
 
// Option to enable/disable internal oscillator
#define USE_EXT_OSC
 
//
#define UART1_RX_TO_BUFFER
//#define UART1_RX_TO_XBEE
 
// Option to disable SPI MISO
#define SPI2_WRITE_ONLY
 
//#define _DEBUG
//#define _TEST_UART
//#define _TEST_I2C_MASTER
//#define _TEST_I2C_SLAVE
//#define _TEST_SPI
//#define _TEST_NFC
//#define _TEST_LED_BACKPACK
//#define _TEST_SSD1306_OLED
//#define _TEST_SSD1331_OLED
//#define _TEST_ADC
//#define _TEST_XBEE
//#define _TEST_NFC_TO_SSD1306_OLED
//#define _TEST_TIMER1_RTC
#define _TEST_LUX
 
// Enable or disable debug prints depending on project preprocessor (_DEBUG)
#ifdef _DEBUG
#define DBG_PRINT_MAIN(x) UART1_WriteS(x)
#define DBG_PRINT_UART(x) UART1_WriteS(x)
#define DBG_PRINT_I2C(x) UART1_WriteS(x)
#define DBG_PRINT_SPI(x) UART1_WriteS(x)
#define DBG_PRINT_XBEE(x) UART1_WriteS(x)
#define DBG_PRINT_PORTB_INT(x)
#define DBG_PRINT_INT(x)
#define DBG_PRINT_BUFFER(x)
#else
#define DBG_PRINT_MAIN(x)
#define DBG_PRINT_UART(x)
#define DBG_PRINT_I2C(x)
#define DBG_PRINT_SPI(x)
#define DBG_PRINT_XBEE(x)
#define DBG_PRINT_PORTB_INT(x)
#define DBG_PRINT_INT(x)
#define DBG_PRINT_BUFFER(x)
#endif
 
// Pin allocations
#define LED_BLUE_TRIS TRISCbits.TRISC5
#define LED_BLUE_LAT LATCbits.LATC5
#define LED_RED_TRIS TRISCbits.TRISC2
#define LED_RED_LAT LATCbits.LATC2
 
#define ADC_AN0_TRIS TRISAbits.TRISA0
#define ADC_AN1_TRIS TRISAbits.TRISA1
#define ADC_AN2_TRIS TRISAbits.TRISA2
 
#define XBEE_CTS_TRIS TRISBbits.TRISB0
#define XBEE_CTS_LAT LATBbits.LATB0
#define XBEE_CTS_PORT PORTBbits.RB0
#define XBEE_RTS_TRIS TRISBbits.TRISB1
#define XBEE_RTS_LAT LATBbits.LATB1
 
#define SPI_MOSI_TRIS TRISBbits.TRISB0
#ifndef SPI2_WRITE_ONLY
#define SPI_MISO_TRIS TRISBbits.TRISB0
#endif
#define SPI_CLK_TRIS TRISAbits.TRISA0
#define SPI_DC_SELECT_TRIS TRISAbits.TRISA1
#define SPI_DC_SELECT_LAT LATAbits.LATA1
#define SPI_RESET_TRIS TRISAbits.TRISA2
#define SPI_RESET_LAT LATAbits.LATA2
#define SPI_SLAVE_SELECT_TRIS TRISAbits.TRISA3
#define SPI_SLAVE_SELECT_LAT LATAbits.LATA3
 
#define NFC_IRQ_TRIS TRISAbits.TRISA5
#define NFC_IRQ_PORT PORTAbits.RA5
//#define NFC_RESET_TRIS TRISCbits.TRISC2
//#define NFC_RESET_LAT LATCbits.LATC2
 
#define I2C_CLK_TRIS TRISCbits.TRISC3
#define I2C_DAT_TRIS TRISCbits.TRISC4
 
#define UART1_RX_TRIS TRISCbits.TRISC7
#define UART1_TX_TRIS TRISCbits.TRISC6
 
// PPS bindings (RP Pins)
#define PPS_SPI2_CLK_IN 0 // A0
#define PPS_SPI2_CLK_OUT RPOR0 // A0
#define PPS_SPI2_MOSI RPOR3 // B0
#ifndef SPI2_WRITE_ONLY
#define PPS_SPI2_MISO 3 // NA
#endif
 
//#define PPS_UART2_RX 5
//#define PPS_UART2_TX RPOR6
 
#endif