myuart.c uart2 int rcv add.
#define pps_is_intf_enable() (pps_intf != 0)
/*
+ * SPI FLAG test
+ */
+void test_spi_flag(void)
+{
+ char sz[128];
+ int in;
+ unsigned char txc = 0;
+ unsigned char rxc;
+
+ spi2_int_disable();
+ cnint_int_disable();
+ while(1) {
+ delay_ms(1000);
+ sprintf(sz, "SPI2STAT=%04X "
+ "SPIBEC=%d SRMPT=%d SPIROV=%d SRXMPT=%d TBF=%d RBF=%d\r\n"
+ , SPI2STAT
+ , SPI2STATbits.SPIBEC
+ , SPI2STATbits.SRMPT
+ , SPI2STATbits.SPIROV
+ , SPI2STATbits.SRXMPT
+ , SPI2STATbits.SPITBF
+ , SPI2STATbits.SPIRBF
+ );
+ PDEBUG(sz);
+ if ((in = uart2_rcvbuf_getc()) >= 0) {
+ uart2_myputc(in);
+ uart2_puts("\r\n");
+
+ switch(in) {
+ case 'r':
+ rxc = spi2_getc();
+ sprintf(sz, "RX=%02X\r\n", rxc);
+ uart2_puts(sz);
+ break;
+ case 't':
+ spi2_putc(txc++);
+ sprintf(sz, "TX=%02X\r\n", txc);
+ uart2_puts(sz);
+ break;
+ case 'v':
+ spi2_rx_overrun_clear();
+ break;
+ case 'x':
+ SPI2STATbits.SRXMPT = 0;
+ break;
+ case 'y':
+ SPI2STATbits.SRXMPT = 1;
+ break;
+ }
+ }
+ }
+}
+/*
+ * polling send/rcv
+ */
+void test_spi_send(void)
+{
+ unsigned char txc = 1;
+ unsigned char rxc;
+ char sz[128];
+
+ spi2_int_disable();
+ cnint_int_disable();
+// SPI2BUF = txc++;
+// rxc = SPI2BUF;
+ while(1) {
+ while(SPI2STATbits.SPITBF == 0) {
+ // TX
+ SPI2BUF = txc++;
+ }
+ if (SPI2STATbits.SRXMPT == 0) {
+ while(SPI2STATbits.SRXMPT == 0) {
+ // RX FIFO読み出し
+ rxc = SPI2BUF;
+ }
+#if 0
+ sprintf(sz, "SPI2STAT=%04X "
+ "SPIBEC=%d SRMPT=%d SPIROV=%d SRXMPT=%d TBF=%d RBF=%d\r\n"
+ , SPI2STAT
+ , SPI2STATbits.SPIBEC
+ , SPI2STATbits.SRMPT
+ , SPI2STATbits.SPIROV
+ , SPI2STATbits.SRXMPT
+ , SPI2STATbits.SPITBF
+ , SPI2STATbits.SPIRBF
+ );
+ PDEBUG(sz);
+#endif
+ }
+ }
+
+}
+/*
* main()
*/
int main(int argc, char** argv) {
/**** 割り込み禁止 ****/
SET_CPU_IPL( 7 );
__builtin_write_OSCCONL(OSCCON & 0xbf); //clear the bit 6 of OSCCONL to unlock Pin Re-map
+ // 割り込みネストenable
+ int_nest_enable();
// UART1ピン割り当て
RPINR18bits.U1RXR = 6; // UART1 RX to RP6
CLKDIV = 0; // CPU Peripheral Clock Ratio=1:1
AD1PCFG = 0xFFFF; // AN1-12input pin = Digital mode
- // INT1(RP12 RB12) AD -DRDY0 Int enable
+ // INT1(RP12 RB12) AD -DRDY0 setup
RPINR0bits.INT1R = 12; // RP12(RB12)
+ int1_int_disable();
int1_level_set(4); // Int priority
int1_edge_neg(); // Negative Edge
- // INT0(RB7) GPS +PPS Int enable
+ // INT0(RB7) GPS +PPS setup
+ int0_int_disable();
int0_level_set(4); // INT Priority
int0_edge_pos(); // Positive Edge
+ // ChangeNotification INT, CN20(RC8), SPI2(Overo) CS0
+ cnint_int_disable();
+ CNEN2bits.CN20IE = 1;
+ CNPU2bits.CN20PUE = 1; // Pullup ON
+ cnint_level_set(4);
+
adint_cnt = 0;
ad_cs_dis();
spi1_init();
spi2_init();
+ spi1_int_disable();
+ spi2_int_disable();
PDEBUG("START\r\n");
puts("START debug\r\n");
// GPS UART1 受信割り込み許可
uart1_rx_int_enable();
uart1_set_int_level(4); // 割り込みレベル デフォルト4
- // DataOut SPI2 割り込み許可
-// spi2_int_enable();
-// spi2_set_int_level(4);
+ // DebugOut UART2 受信割り込み許可
+ uart2_rx_int_enable();
+ uart2_set_int_level(4); // 割り込みレベル デフォルト4
//**** 割り込み許可 **************************************************
// CPU割り込み優先レベル デフォルト0 ペリフェラルはデフォルト4
// INT0割り込み許可
int0_intf_clear();
int0_int_enable(); // Int enable
+ // DataOut SPI2 割り込み許可しない CSのCN INTで許可するので
+ spi2_intf_clear();
+ spi2_set_int_level(4);
+// spi2_int_enable();
+ // ChangeNotification INT許可 SPI2(Overo) CS
+ cnint_intf_clear();
+ cnint_int_enable();
+/****!!!!!!!!!!!!!!!!!!!!!!!!*/
+// test_spi_flag();
+test_spi_send();
while(1) {
// GPSから受信してデコード
unsigned char c;
long l;
+ spi1_intf_clear();
c = spi1_getc();
-// spi1_intf_clear();
spi1_rx_overrun_clear();
//spi1_int_disable();
//ad_cs_dis();
* DataOut SPI2 Interrupt Handler
* TX FIFOに1byteの空きが出来ると発生
*/
-void __attribute__((interrupt, no_auto_psv)) _SPI2Interrupt(void)
-{
static unsigned char spi2c;
+void __attribute__((interrupt, auto_psv)) _SPI2Interrupt(void)
+{
unsigned char rx;
static unsigned int txlen = 512;
-/*
+ spi2_intf_clear();
+#if 1
+// static unsigned char c=0;
while(!spi2_tx_fifo_is_full())
- spi2_putc(c++);
+ spi2_putc(spi2c++);
while(!spi2_rx_fifo_is_empty()) {
rx = spi2_getc();
- if (rx == '$') c = 0;
+// if (rx == '$') c = 0;
}
-*/
-//spi2c = 123;
+#endif
+#if 0
+ //spi2c = 123;
// RX FIFOから読み出し
// while(!spi2_rx_fifo_is_empty() || (!spi2_tx_fifo_is_full() && txlen > 0)) {
while(!spi2_rx_fifo_is_empty()) {
}
}
}
+#endif
// オーバーランエラーならばクリアする
// spi2_rx_is_overrun()
if (SPI2STATbits.SPIROV == 1) SPI2STATbits.SPIROV = 0;
// TODO:Interrupt Flag@IEC Clear
}
/*
-void test_ad1()
+ * Overo SPI2 CS Input Change Notification
+ * Interrupt Handler
+ *
+ */
+#define SPI2CSpin (PORTCbits.RC8)
+void __attribute__((interrupt, auto_psv)) _CNInterrupt(void)
{
- unsigned char in[3];
- long l[6];
- char cs;
- while(!ad_is_drdy0_enable());
-// PDEBUG("AD\r\n");
- for(cs=0; cs<6; cs++) {
- ad_cs(cs);
- in[2] = ad_spi_rcv();
- in[1] = ad_spi_rcv();
- in[0] = ad_spi_rcv();
- ad_cs_dis();
- l[cs] = byte3_to_long(in);
-// sprintf(sz, "%02X %02X %02X", in[2], in[1], in[0]);
-// PDEBUG(sz);
- }
- for(cs=0; cs<6; cs++) {
- sprintf(sz, "%+7ld,", l[cs]);
- PDEBUG(sz);
- }
- PDEBUG("\r\n");
-
+ cnint_intf_clear();
+ if (SPI2CSpin == 1) {
+ // CS=H
+ // SPI2割り込みOFF
+ spi2_int_disable();
+
+ } else {
+ // CS=L
+ // SPI送信の一番最初なので
+ spi2c = 0;
+
+// SPI2 RX FIFOクリア
+// SPI2 TX FIFOクリア
+// リングバッファ読み込み位置get?
+// SPI2 TX FIFOに送信データ書き込み?
+ // SPI2割り込みON
+ spi2_int_enable();
+ }
}
- */
/*
* CS0〜15順番にenable
*/
// delay();
}
}
+/*
+void test_ad1()
+{
+ unsigned char in[3];
+ long l[6];
+ char cs;
+ while(!ad_is_drdy0_enable());
+// PDEBUG("AD\r\n");
+ for(cs=0; cs<6; cs++) {
+ ad_cs(cs);
+ in[2] = ad_spi_rcv();
+ in[1] = ad_spi_rcv();
+ in[0] = ad_spi_rcv();
+ ad_cs_dis();
+ l[cs] = byte3_to_long(in);
+// sprintf(sz, "%02X %02X %02X", in[2], in[1], in[0]);
+// PDEBUG(sz);
+ }
+ for(cs=0; cs<6; cs++) {
+ sprintf(sz, "%+7ld,", l[cs]);
+ PDEBUG(sz);
+ }
+ PDEBUG("\r\n");
+
+}
+ */
#include <p24FJ64GA004.h>
+#define int_nest_enable() INTCON1bits.NSTDIS = 0
+#define int_nest_disable() INTCON1bits.NSTDIS = 1
+
#define int0_intf_clear() IFS0bits.INT0IF = 0
-#define int0_level_set(i) IPC0bits.INT0IP = i
+#define int0_level_set(i) IPC0bits.INT0IP = (i)
#define int0_int_enable() IEC0bits.INT0IE = 1
+#define int0_int_disable() IEC0bits.INT0IE = 0
#define int0_edge_pos() INTCON2bits.INT0EP = 0
#define int0_edge_neg() INTCON2bits.INT0EP = 1
#define int1_intf_clear() IFS1bits.INT1IF = 0
-#define int1_level_set(i) IPC5bits.INT1IP = i
+#define int1_level_set(i) IPC5bits.INT1IP = (i)
#define int1_int_enable() IEC1bits.INT1IE = 1
+#define int1_int_disable() IEC1bits.INT1IE = 0
#define int1_edge_pos() INTCON2bits.INT1EP = 0
#define int1_edge_neg() INTCON2bits.INT1EP = 1
+#define int2_intf_clear() IFS1bits.INT2IF = 0
+#define int2_level_set(i) IPC7bits.INT2IP = (i)
+#define int2_int_enable() IEC1bits.INT2IE = 1
+#define int2_int_disable() IEC1bits.INT2IE = 0
+#define int2_edge_pos() INTCON2bits.INT2EP = 0
+#define int2_edge_neg() INTCON2bits.INT2EP = 1
+
+// Input Change Notification IFS1<3> IEC1<3> IPC4<14:12>
+#define cnint_intf_clear() IFS1bits.CNIF = 0
+#define cnint_level_set(i) IPC4bits.CNIP = (i)
+#define cnint_int_enable() IEC1bits.CNIE = 1
+#define cnint_int_disable() IEC1bits.CNIE = 0
+
+
#endif
}
/*
- DataOut SPI2 Init
- Enhanced Buffer ON
- Slave mode
+ * DataOut SPI2 Init
+ * Enhanced Buffer ON
+ * Slave mode
+ * SSpin enable
+ * INT:
*/
int spi2_init(void)
{
int spi1_init(void);
int spi2_init(void);
-#define spi1_tx_fifo_is_full() (SPI1STATbits.SPITBF == 1) // true=full(Transmit not yet started, SPIxTXB is full)
-#define spi1_rx_fifo_is_full() (SPI1STATbits.SPIRBF == 1) // true=full(Receive complete)
-#define spi1_rx_fifo_is_empty() (SPI1STATbits.SRXMPT == 1) // true=empty, SRXMPT: Receive FIFO Empty bit (valid in Enhanced Buffer mode)
+#define spi1_tx_fifo_is_full() (SPI1STATbits.SPITBF == 1) // true=full(Transmit not yet started, SPIxTXB is full)
+#define spi1_rx_fifo_is_full() (SPI1STATbits.SPIRBF == 1) // true=full(Receive complete)
+#define spi1_rx_fifo_is_empty() (SPI1STATbits.SRXMPT == 1) // true=empty, SRXMPT: Receive FIFO Empty bit (valid in Enhanced Buffer mode)
#define spi1_rx_overrun_clear() SPI1STATbits.SPIROV = 0;
#define spi1_putc(c) SPI1BUF = (c & 0xFF)
#define spi1_getc() (SPI1BUF & 0xFF)
#define spi1_set_int_level(i) IPC2bits.SPI1IP = (i)
-#define spi1_int_enable() IEC0bits.SPI1IE = 1
+#define spi1_int_enable() IEC0bits.SPI1IE = 1
#define spi1_int_disable() IEC0bits.SPI1IE = 0
#define spi1_intf_clear() IFS0bits.SPI1IF = 0
-#define spi2_tx_fifo_is_full() (SPI2STATbits.SPITBF == 1) // true=full
-#define spi2_rx_fifo_is_full() (SPI2STATbits.SPIRBF == 1) // true=full
-#define spi2_rx_fifo_is_empty() (SPI2STATbits.SRXMPT == 1) // true=empty
+#define spi2_tx_fifo_is_full() (SPI2STATbits.SPITBF == 1) // true=full
+#define spi2_rx_fifo_is_full() (SPI2STATbits.SPIRBF == 1) // true=full
+#define spi2_rx_fifo_is_empty() (SPI2STATbits.SRXMPT == 1) // true=empty
+#define spi2_rx_overrun_clear() SPI2STATbits.SPIROV = 0;
#define spi2_putc(c) SPI2BUF = (c & 0xFF)
-#define spi2_getc() (SPI2BUF & 0xFF)
+#define spi2_getc() (SPI2BUF & 0xFF)
#define spi2_set_int_level(i) IPC8bits.SPI2IP = (i)
-#define spi2_int_enable() IEC2bits.SPI2IE = 1
+#define spi2_int_enable() IEC2bits.SPI2IE = 1
+#define spi2_int_disable() IEC2bits.SPI2IE = 0
#define spi2_intf_clear() IFS2bits.SPI2IF = 0
#endif
static unsigned char ubx_w, ubx_r;
static unsigned char ubx_buf[256];
+// UART2
+#define UART2_BUFF_SIZE 16
+static unsigned char uart2_w, uart2_r;
+static unsigned char uart2_buf[UART2_BUFF_SIZE];
+
void __attribute__((interrupt, no_auto_psv)) _U1RXInterrupt(void)
{
// 割り込みフラグクリア
}
if (U1STAbits.OERR == 1) U1STAbits.OERR = 0;
}
+void __attribute__((interrupt, no_auto_psv)) _U2RXInterrupt(void)
+{
+ // 割り込みフラグクリア
+ uart2_rx_intf_clear();
+ while(uart2_rx_is_rdy()) {
+ uart2_buf[uart2_w++] = uart2_getc();
+ if (uart2_w >= UART2_BUFF_SIZE) uart2_w = 0;
+ }
+ if (U2STAbits.OERR == 1) U2STAbits.OERR = 0;
+}
+// polling send
void uart1_puts(char *s)
{
while(*s != 0) {
U2TXREG = *s++;
}
}
+void uart1_myputc(char c)
+{
+ while(uart1_tx_is_full());
+ U1TXREG = c;
+}
+void uart2_myputc(char c)
+{
+ while(uart2_tx_is_full());
+ U2TXREG = c;
+}
/*
-return 0=なし 1=あり
+ * 受信バッファにデータあるか?
+ * return 0=なし 1=あり
*/
int uart1_rcvbuf_is_data(void)
{
if (ubx_r == ubx_w) return 0;
return 1;
}
+int uart2_rcvbuf_is_data(void)
+{
+ if (uart2_r == uart2_w) return 0;
+ return 1;
+}
/*
- return データ -1=データ無し
+ * 受信バッファから1byte get
+ * return データ -1=データ無し
*/
int uart1_rcvbuf_getc(void)
{
if (ubx_r == ubx_w) return -1;
return ubx_buf[ubx_r++];
}
+int uart2_rcvbuf_getc(void)
+{
+ int out;
+ if (uart2_r == uart2_w) return -1;
+ out = uart2_buf[uart2_r++];
+ if (uart2_r >= UART2_BUFF_SIZE) uart2_r = 0;
+ return out;
+}
void uart1_rcvbuf_clear(void)
{
ubx_r = ubx_w;
}
+void uart2_rcvbuf_clear(void)
+{
+ uart2_r = uart2_w;
+}
void uart1_init(unsigned int mode, unsigned int sts, unsigned int baud)
{
U1MODE = mode;
U2MODE = mode;
U2STA = sts;
U2BRG = baud;
+ uart2_w = 0;
+ uart2_r = 0;
}
void uart1_puts(char *s);
void uart2_puts(char *s);
+void uart1_myputc(char c);
+void uart2_myputc(char c);
int uart1_rcvbuf_is_data(void);
+int uart2_rcvbuf_is_data(void);
int uart1_rcvbuf_getc(void);
+int uart2_rcvbuf_getc(void);
void uart1_rcvbuf_clear(void);
+void uart2_rcvbuf_clear(void);
void uart1_init(unsigned int mode, unsigned int sts, unsigned int baud);
void uart2_init(unsigned int mode, unsigned int sts, unsigned int baud);
CND_CONF=default
ifeq ($(TYPE_IMAGE), DEBUG_RUN)
IMAGE_TYPE=debug
-FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/ad2010.${IMAGE_TYPE}.out
+FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/cpu2010.${IMAGE_TYPE}.out
else
IMAGE_TYPE=production
-FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/ad2010.${IMAGE_TYPE}.out
+FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/cpu2010.${IMAGE_TYPE}.out
endif
# Object Directory
# MP_BC_DIR is not defined
.build-conf: ${BUILD_SUBPROJECTS}
- ${MAKE} -f nbproject/Makefile-default.mk dist/${CND_CONF}/${IMAGE_TYPE}/ad2010.${IMAGE_TYPE}.out
+ ${MAKE} -f nbproject/Makefile-default.mk dist/${CND_CONF}/${IMAGE_TYPE}/cpu2010.${IMAGE_TYPE}.out
MP_PROCESSOR_OPTION=24FJ64GA004
MP_LINKER_FILE_OPTION=,-Tp24FJ64GA004.gld
# ------------------------------------------------------------------------------------
# Rules for buildStep: link
ifeq ($(TYPE_IMAGE), DEBUG_RUN)
-dist/${CND_CONF}/${IMAGE_TYPE}/ad2010.${IMAGE_TYPE}.out: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
+dist/${CND_CONF}/${IMAGE_TYPE}/cpu2010.${IMAGE_TYPE}.out: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
- ${MP_CC} $(MP_EXTRA_LD_PRE) -omf=elf -mcpu=$(MP_PROCESSOR_OPTION) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -o dist/${CND_CONF}/${IMAGE_TYPE}/ad2010.${IMAGE_TYPE}.out ${OBJECTFILES_QUOTED_IF_SPACED} -Wl,--defsym=__MPLAB_BUILD=1,--heap=40,--no-check-sections$(MP_EXTRA_LD_POST)$(MP_LINKER_FILE_OPTION),--defsym=__MPLAB_DEBUG=1,--defsym=__ICD2RAM=1,--defsym=__DEBUG=1,--defsym=__MPLAB_DEBUGGER_ICD3=1
+ ${MP_CC} $(MP_EXTRA_LD_PRE) -omf=elf -mcpu=$(MP_PROCESSOR_OPTION) -D__DEBUG -D__MPLAB_DEBUGGER_ICD3=1 -o dist/${CND_CONF}/${IMAGE_TYPE}/cpu2010.${IMAGE_TYPE}.out ${OBJECTFILES_QUOTED_IF_SPACED} -Wl,--defsym=__MPLAB_BUILD=1,--heap=40,--no-check-sections$(MP_EXTRA_LD_POST)$(MP_LINKER_FILE_OPTION),--defsym=__MPLAB_DEBUG=1,--defsym=__ICD2RAM=1,--defsym=__DEBUG=1,--defsym=__MPLAB_DEBUGGER_ICD3=1
else
-dist/${CND_CONF}/${IMAGE_TYPE}/ad2010.${IMAGE_TYPE}.out: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
+dist/${CND_CONF}/${IMAGE_TYPE}/cpu2010.${IMAGE_TYPE}.out: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
- ${MP_CC} $(MP_EXTRA_LD_PRE) -omf=elf -mcpu=$(MP_PROCESSOR_OPTION) -o dist/${CND_CONF}/${IMAGE_TYPE}/ad2010.${IMAGE_TYPE}.out ${OBJECTFILES_QUOTED_IF_SPACED} -Wl,--defsym=__MPLAB_BUILD=1,--heap=40,--no-check-sections$(MP_EXTRA_LD_POST)$(MP_LINKER_FILE_OPTION)
- ${MP_CC_DIR}/pic30-bin2hex dist/${CND_CONF}/${IMAGE_TYPE}/ad2010.${IMAGE_TYPE}.out -omf=elf
+ ${MP_CC} $(MP_EXTRA_LD_PRE) -omf=elf -mcpu=$(MP_PROCESSOR_OPTION) -o dist/${CND_CONF}/${IMAGE_TYPE}/cpu2010.${IMAGE_TYPE}.out ${OBJECTFILES_QUOTED_IF_SPACED} -Wl,--defsym=__MPLAB_BUILD=1,--heap=40,--no-check-sections$(MP_EXTRA_LD_POST)$(MP_LINKER_FILE_OPTION)
+ ${MP_CC_DIR}/pic30-bin2hex dist/${CND_CONF}/${IMAGE_TYPE}/cpu2010.${IMAGE_TYPE}.out -omf=elf
endif
#
-#Mon Nov 28 11:11:47 JST 2011
+#Sat Dec 03 14:49:06 JST 2011
default.languagetoolchain.dir=/opt/microchip/mplabc30/v3.30c/bin
com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=11bb82e71763925c87fa30f6c65473b1
default.languagetoolchain.version=3_30
# Project Name
-PROJECTNAME=ad2010
+PROJECTNAME=cpu2010
# Active Configuration
DEFAULTCONF=default
CND_BASEDIR=`pwd`
# default configuration
CND_ARTIFACT_DIR_default=dist/default/production
-CND_ARTIFACT_NAME_default=ad2010.production.out
-CND_ARTIFACT_PATH_default=dist/default/production/ad2010.production.out
+CND_ARTIFACT_NAME_default=cpu2010.production.out
+CND_ARTIFACT_PATH_default=dist/default/production/cpu2010.production.out
CND_PACKAGE_DIR_default=${CND_DISTDIR}/default/package
-CND_PACKAGE_NAME_default=ad2010.tar
-CND_PACKAGE_PATH_default=${CND_DISTDIR}/default/package/ad2010.tar
+CND_PACKAGE_NAME_default=cpu2010.tar
+CND_PACKAGE_PATH_default=${CND_DISTDIR}/default/package/cpu2010.tar
CND_DISTDIR=dist
TMPDIR=build/${CND_CONF}/${IMAGE_TYPE}/tmp-packaging
TMPDIRNAME=tmp-packaging
-OUTPUT_PATH=dist/${CND_CONF}/${IMAGE_TYPE}/ad2010.${IMAGE_TYPE}.out
-OUTPUT_BASENAME=ad2010.${IMAGE_TYPE}.out
-PACKAGE_TOP_DIR=ad2010/
+OUTPUT_PATH=dist/${CND_CONF}/${IMAGE_TYPE}/cpu2010.${IMAGE_TYPE}.out
+OUTPUT_BASENAME=cpu2010.${IMAGE_TYPE}.out
+PACKAGE_TOP_DIR=cpu2010/
# Functions
function checkReturnCode
# Copy files and create directories and links
cd "${TOP}"
-makeDirectory ${TMPDIR}/ad2010/bin
+makeDirectory ${TMPDIR}/cpu2010/bin
copyFileToTmpDir "${OUTPUT_PATH}" "${TMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}" 0755
# Generate tar file
cd "${TOP}"
-rm -f ${CND_DISTDIR}/${CND_CONF}/package/ad2010.tar
+rm -f ${CND_DISTDIR}/${CND_CONF}/package/cpu2010.tar
cd ${TMPDIR}
-tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/package/ad2010.tar *
+tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/package/cpu2010.tar *
checkReturnCode
# Cleanup
<property key="TIMER4" value="true"/>
<property key="TIMER3" value="true"/>
<property key="SPI 2" value="true"/>
- <property key="SPI 1" value="true"/>
<property key="TIMER2" value="true"/>
+ <property key="SPI 1" value="true"/>
<property key="TIMER1" value="true"/>
<property key="CRC" value="true"/>
<property key="I2C2" value="true"/>
<property key="I2C1" value="true"/>
- <property key="programoptions.preserveprogramrange.end" value="0xff"/>
<property key="Freeze All Other Peripherals" value="true"/>
+ <property key="programoptions.preserveprogramrange.end" value="0xff"/>
</ICD3PlatformTool>
</conf>
</confs>
<type>com.microchip.mplab.nbide.embedded.makeproject</type>
<configuration>
<data xmlns="http://www.netbeans.org/ns/make-project/1">
- <name>AD2010</name>
+ <name>CPU2010</name>
<make-project-type>0</make-project-type>
<c-extensions>c</c-extensions>
<cpp-extensions/>