/***********************************************************

	picsys18-sp.h

	Version 1.00: 2009/10/12

	Copyright (C) 2008-2009, MicroFan Div., PeopleMedia, Inc.
	All rights reserved.

***********************************************************/

#ifndef PICSYS18_SP_H_
#define PICSYS18_SP_H_

// USBブートローダを利用しない場合にはコメントアウトしてください
#define PROGRAMMABLE_WITH_USB_HID_BOOTLOADER

#define USE_USB

#if defined(USE_USB)
#define USB_CDC
#define USB_INTERRUPT
#endif


/***********************************************************
	LEDに関する定義
***********************************************************/

#define	LED8	RC(1)
#define	LED9	RD(7)

#define	OPT_LED8	LATCbits.LATC1
#define	OPT_LED8_TRIS	TRISCbits.TRISC1
#define	OPT_LED9	LATDbits.LATD7
#define	OPT_LED9_TRIS	TRISDbits.TRISD7


/***********************************************************
	タクトスイッチに関する定義
***********************************************************/

#define	SW1	RB(0)
#define	SW2	RB(1)
#define	SW3	RB(2)
#define	SW4	RB(3)
#define	SW5	RB(4)
#define	SW6	RB(5)

#define	OPT_SW1	PORTBbits.RB0
#define	OPT_SW2	PORTBbits.RB1
#define	OPT_SW3	PORTBbits.RB2
#define	OPT_SW4	PORTBbits.RB3
#define	OPT_SW5	PORTBbits.RB4
#define	OPT_SW6	PORTBbits.RB5
#define	OPT_SW1_TRIS	TRISBbits.TRISB0
#define	OPT_SW2_TRIS	TRISBbits.TRISB1
#define	OPT_SW3_TRIS	TRISBbits.TRISB2
#define	OPT_SW4_TRIS	TRISBbits.TRISB3
#define	OPT_SW5_TRIS	TRISBbits.TRISB4
#define	OPT_SW6_TRIS	TRISBbits.TRISB5


/***********************************************************
	表示装置に関する定義
***********************************************************/

#define	SR_CLK	RC(7)
#define	SR_DAT	RC(6)

#define	OPT_SR_CLK	LATCbits.LATC7
#define	OPT_SR_DAT	LATCbits.LATC6

#define	OPT_SR_CLK_TRIS	TRISCbits.TRISC7
#define	OPT_SR_DAT_TRIS	TRISCbits.TRISC6

#define	CLCD_E	RD(5)
#define	CLCD_RS	RD(4)
#define	CLCD_RW	RD(6)

#define	OPT_CLCD_E	LATDbits.LATD5
#define	OPT_CLCD_RS	LATDbits.LATD4
#define	OPT_CLCD_RW	LATDbits.LATD6

#define	OPT_CLCD_E_TRIS	TRISDbits.TRISD5
#define	OPT_CLCD_RS_TRIS	TRISDbits.TRISD4
#define	OPT_CLCD_RW_TRIS	TRISDbits.TRISD6

#define	NSEG	4

#define	SEG1	RD(0)
#define	SEG2	RD(1)
#define	SEG3	RD(2)
#define	SEG4	RD(3)
#define	SEG5	RD(4)	// LED ARRAY

#define	OPT_SEG1	LATDbits.LATD0
#define	OPT_SEG2	LATDbits.LATD1
#define	OPT_SEG3	LATDbits.LATD2
#define	OPT_SEG4	LATDbits.LATD3
#define	OPT_SEG5	LATDbits.LATD4

#define	OPT_SEG1_TRIS	TRISDbits.TRISD0
#define	OPT_SEG2_TRIS	TRISDbits.TRISD1
#define	OPT_SEG3_TRIS	TRISDbits.TRISD2
#define	OPT_SEG4_TRIS	TRISDbits.TRISD3
#define	OPT_SEG5_TRIS	TRISDbits.TRISD4


/***********************************************************
	センサーに関する定義
***********************************************************/

#define	PHOTO_SENSOR	AN(0)
#define	TEMP_SENSOR	AN(1)
#define	VR_SENSOR	AN(2)

#define	CN5	AN(4)
#define	CN6	AN(5)

/***********************************************************
	サーボに関する定義
***********************************************************/

#define	CN7	RE(1)
#define	CN8	RE(2)


/***********************************************************
	圧電サウンダーに関する定義
***********************************************************/

#define	SOUNDER	RC(2)


#endif /*PICSYS18_SP_H_*/
