diff --git a/conf/airframes/mercury.xml b/conf/airframes/mercury.xml new file mode 100644 index 0000000000..40262aec7f --- /dev/null +++ b/conf/airframes/mercury.xml @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ +
+ + +
+ + + + + + + + + + + + + + + + +
+ + +
+ + + + + + +
+ + + + + + + + + + +include $(PAPARAZZI_SRC)/conf/autopilot/mercury.makefile + + +
diff --git a/conf/airframes/mercury_csc.xml b/conf/airframes/mercury_csc.xml new file mode 100644 index 0000000000..f866a430c3 --- /dev/null +++ b/conf/airframes/mercury_csc.xml @@ -0,0 +1,29 @@ + +
+ +
+ +
+ +
+ + + + + + + + + + + +CSC_ID=0 +SRC_BOOZ=booz +SRC_BOOZ_ARCH=booz/arm7 +ap.CFLAGS += -I$(SRC_BOOZ) -I$(SRC_BOOZ_ARCH) +include $(PAPARAZZI_SRC)/conf/autopilot/booz2_actuators_buss.makefile +include $(PAPARAZZI_SRC)/conf/autopilot/mercury_csc.makefile + + + +
diff --git a/conf/autopilot/mercury.makefile b/conf/autopilot/mercury.makefile new file mode 100644 index 0000000000..94e1c4ff7b --- /dev/null +++ b/conf/autopilot/mercury.makefile @@ -0,0 +1,131 @@ +# +# $Id$ +# +# Copyright (C) 2009 Antoine Drouin, Allen H. Ibara +# +# This file is part of paparazzi. +# +# paparazzi is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# paparazzi is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with paparazzi; see the file COPYING. If not, write to +# the Free Software Foundation, 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. +# +# + +ARCHI=arm7 + +FLASH_MODE = ISP +LPC21ISP_PORT = /dev/ttyUSB0 + +LPC21ISP_BAUD = 38400 +LPC21ISP_XTAL = 12000 + + +LPC21ISP_CONTROL = -control + +LDSCRIPT=$(SRC_ARCH)/LPC2129-ROM.ld + +BOARD_CFG = \"csc_board_v1_0.h\" + +PERIODIC_FREQ = 512 + +SRC_CSC=csc +SRC_BOOZ=booz + +ap.ARCHDIR = $(ARCHI) +ap.ARCH = arm7tdmi +ap.TARGET = main +ap.TARGETDIR = main + +ap.CFLAGS += -I$(SRC_CSC) -I$(SRC_BOOZ) +ap.CFLAGS += -DCONFIG=$(BOARD_CFG) +ap.srcs += $(SRC_CSC)/mercury_main.c +ap.CFLAGS += -DLED -DTIME_LED=1 +ap.CFLAGS += -DAHRS_ALIGNER_LED=2 + +ap.CFLAGS += -DCSC_BOARD_ID=$(CSC_ID) + +ap.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1 +ap.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c + +ap.srcs += $(SRC_ARCH)/uart_hw.c +ap.srcs += $(SRC_ARCH)/adc_hw.c +ap.CFLAGS += -DADC -DUSE_AD0 -DUSE_AD0_0 -DUSE_AD0_1 + + +ap.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B230400 -DUART0_VIC_SLOT=5 +ap.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DUART1_VIC_SLOT=6 +ap.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport \ + -DDOWNLINK_DEVICE=Uart1 +ap.srcs += downlink.c pprz_transport.c $(SRC_CSC)/csc_telemetry.c +ap.CFLAGS += -DDATALINK=PPRZ -DPPRZ_UART=Uart1 +ap.srcs += $(SRC_CSC)/csc_datalink.c + +ap.srcs += $(SRC_CSC)/mercury_xsens.c $(SRC_BOOZ)/booz2_imu.c $(SRC_BOOZ)/booz_trig_int.c +ap.CFLAGS += -DXSENS1_LINK=Uart0 -DBOOZ2_IMU_TYPE=\"mercury_xsens.h\" + +ap.srcs += $(SRC_BOOZ)/booz2_filter_attitude_cmpl_euler.c $(SRC_BOOZ)/booz_ahrs_aligner.c +ap.CFLAGS += -DFLOAT_T=float + +ap.srcs += $(SRC_BOOZ)/booz2_stabilization.c $(SRC_BOOZ)/booz2_stabilization_attitude.c + + +ap.CFLAGS += -DAP_LINK_CAN -DCAN_LED=2 +ap.CFLAGS += -DUSE_CAN1 -DCAN1_BTR=CANBitrate125k_3MHz +ap.CFLAGS += -DCAN1_VIC_SLOT=3 -DCAN1_ERR_VIC_SLOT=7 +ap.srcs += $(SRC_CSC)/csc_can.c +#ap.CFLAGS += -DUSE_CAN2 -DCAN2_BTR=CANBitrate125k_2MHz -DCAN2_VIC_SLOT=4 + +ap.srcs += $(SRC_CSC)/csc_ap_link.c + +#ap.srcs += $(SRC_CSC)/csc_servos.c +#ap.CFLAGS += -DPWM_SERVO_5 -DPWM_SERVO_0 +ap.srcs += $(SRC_ARCH)/servos_csc.c + +ap.srcs += $(SRC_CSC)/csc_adc.c +ap.CFLAGS += -DACTUATORS=\"servos_csc.h\" +ap.srcs += commands.c actuators.c + +ap.CFLAGS += -DRADIO_CONTROL -DRADIO_CONTROL_TYPE=RC_JR +ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c + +ap.srcs += $(SRC_CSC)/mercury_ap.c + +ap.CFLAGS += -DERROR_LED=4 + +# +# +# test uart +# +test_uart.ARCHDIR = $(ARCHI) +test_uart.ARCH = arm7tdmi +test_uart.TARGET = test_uart +test_uart.TARGETDIR = test_uart + + +test_uart.CFLAGS += -I$(SRC_CSC) +test_uart.CFLAGS += -DCONFIG=$(BOARD_CFG) +test_uart.srcs += $(SRC_CSC)/csc_test_uart.c +test_uart.CFLAGS += -DLED + +# -DTIME_LED=1 +test_uart.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1 +test_uart.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c + +test_uart.srcs += $(SRC_ARCH)/uart_hw.c + +test_uart.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DUART1_VIC_SLOT=6 +test_uart.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport \ + -DDOWNLINK_DEVICE=Uart1 +test_uart.srcs += downlink.c pprz_transport.c + diff --git a/conf/autopilot/mercury_csc.makefile b/conf/autopilot/mercury_csc.makefile new file mode 100644 index 0000000000..3abf1653b4 --- /dev/null +++ b/conf/autopilot/mercury_csc.makefile @@ -0,0 +1,149 @@ +# +# $Id$ +# +# Copyright (C) 2009 Antoine Drouin +# +# This file is part of paparazzi. +# +# paparazzi is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# paparazzi is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with paparazzi; see the file COPYING. If not, write to +# the Free Software Foundation, 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. +# +# + +ARCHI=arm7 + +FLASH_MODE = ISP +LPC21ISP_PORT = /dev/ttyUSB0 + +LPC21ISP_BAUD = 38400 +LPC21ISP_XTAL = 12000 + + +LPC21ISP_CONTROL = -control + +LDSCRIPT=$(SRC_ARCH)/LPC2129-ROM.ld + +BOARD_CFG = \"csc_board_v1_0.h\" + + + +SRC_CSC=csc + +ap.ARCHDIR = $(ARCHI) +ap.ARCH = arm7tdmi +ap.TARGET = main +ap.TARGETDIR = main + +ap.CFLAGS += -I$(SRC_CSC) +ap.CFLAGS += -DCONFIG=$(BOARD_CFG) +ap.srcs += $(SRC_CSC)/csc_main.c +ap.CFLAGS += -DLED -DTIME_LED=1 + +ap.CFLAGS += -DCSC_BOARD_ID=$(CSC_ID) + +ap.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1 +ap.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c + +ap.srcs += $(SRC_ARCH)/uart_hw.c +ap.srcs += $(SRC_ARCH)/adc_hw.c +ap.CFLAGS += -DADC -DUSE_AD0 -DUSE_AD0_0 -DUSE_AD0_1 + +ap.CFLAGS += -DUSE_UART0 -DUART0_BAUD=B57600 -DUART0_VIC_SLOT=5 +#ap.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DUART1_VIC_SLOT=6 +#ap.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport \ +# -DDOWNLINK_DEVICE=Uart0 +#ap.srcs += downlink.c pprz_transport.c + + +ap.CFLAGS += -DAP_LINK_CAN -DCAN_LED=2 +ap.CFLAGS += -DUSE_CAN1 -DCAN1_BTR=CANBitrate125k_3MHz +ap.CFLAGS += -DCAN1_VIC_SLOT=3 -DCAN1_ERR_VIC_SLOT=7 +ap.srcs += $(SRC_CSC)/csc_can.c +#ap.CFLAGS += -DUSE_CAN2 -DCAN2_BTR=CANBitrate125k_2MHz -DCAN2_VIC_SLOT=4 + +ap.CFLAGS += -DAP_LINK_UART -DPPRZ_UART=Uart1 +ap.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DUART1_VIC_SLOT=6 +ap.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport \ + -DDOWNLINK_DEVICE=Uart1 +ap.srcs += downlink.c pprz_transport.c $(SRC_CSC)/csc_telemetry.c +ap.CFLAGS += -DDATALINK=PPRZ -DPPRZ_UART=Uart1 +ap.srcs += $(SRC_CSC)/csc_datalink.c + +ap.srcs += actuators.c + +ap.srcs += $(SRC_CSC)/csc_ap_link.c + +ap.srcs += $(SRC_CSC)/csc_servos.c + +ap.srcs += $(SRC_CSC)/csc_adc.c + +ap.CFLAGS += -DTHROTTLE_LINK=Uart0 -DTHROTTLE_LED=3 +ap.srcs += $(SRC_CSC)/csc_throttle.c + +#ap.CFLAGS += -DSPEKTRUM_LINK=Uart1 -DUSE_UART1 -DUART1_BAUD=B115200 -DUART1_VIC_SLOT=6 +#ap.srcs += $(SRC_CSC)/csc_rc_spektrum.c + +ap.CFLAGS += -DERROR_LED=4 + +# +# +# test uart +# +test_uart.ARCHDIR = $(ARCHI) +test_uart.ARCH = arm7tdmi +test_uart.TARGET = test_uart +test_uart.TARGETDIR = test_uart + + +test_uart.CFLAGS += -I$(SRC_CSC) +test_uart.CFLAGS += -DCONFIG=$(BOARD_CFG) +test_uart.srcs += $(SRC_CSC)/csc_test_uart.c +test_uart.CFLAGS += -DLED + +# -DTIME_LED=1 +test_uart.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1 +test_uart.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c + +test_uart.srcs += $(SRC_ARCH)/uart_hw.c + +test_uart.CFLAGS += -DUSE_UART1 -DUART1_BAUD=B57600 -DUART1_VIC_SLOT=6 +test_uart.CFLAGS += -DDOWNLINK -DDOWNLINK_TRANSPORT=PprzTransport \ + -DDOWNLINK_DEVICE=Uart1 +test_uart.srcs += downlink.c pprz_transport.c + + +# +# TEST CAN1 +# + +test_can1.ARCHDIR = $(ARCHI) +test_can1.ARCH = arm7tdmi +test_can1.TARGET = test_can1 +test_can1.TARGETDIR = test_can1 + + +test_can1.CFLAGS += -I$(SRC_CSC) +test_can1.CFLAGS += -DCONFIG=$(BOARD_CFG) +test_can1.srcs += $(SRC_CSC)/test_can1.c +test_can1.CFLAGS += -DLED + +# -DTIME_LED=1 +test_can1.CFLAGS += -DPERIODIC_TASK_PERIOD='SYS_TICS_OF_SEC((1./512.))' -DTIMER0_VIC_SLOT=1 +test_can1.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c + +test_can1.CFLAGS += -DUSE_CAN1 -DCAN1_BTR=CANBitrate125k_2MHz +test_can1.CFLAGS += -DCAN1_VIC_SLOT=3 -DCAN1_ERR_VIC_SLOT=7 +test_can1.srcs += $(SRC_CSC)/csc_can.c +test_can1.CFLAGS += -DCSC_BOARD_ID=0 diff --git a/conf/settings/mercury.xml b/conf/settings/mercury.xml new file mode 100644 index 0000000000..669a9cd321 --- /dev/null +++ b/conf/settings/mercury.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + diff --git a/conf/settings/mercury_csc.xml b/conf/settings/mercury_csc.xml new file mode 100644 index 0000000000..587a1f5402 --- /dev/null +++ b/conf/settings/mercury_csc.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + diff --git a/conf/telemetry/mercury.xml b/conf/telemetry/mercury.xml new file mode 100644 index 0000000000..610d33e2a8 --- /dev/null +++ b/conf/telemetry/mercury.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/conf/telemetry/mercury_csc.xml b/conf/telemetry/mercury_csc.xml new file mode 100644 index 0000000000..e860073d78 --- /dev/null +++ b/conf/telemetry/mercury_csc.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + +