[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[paparazzi-commits] [5015] Updates for CSC code (mainly pressure sensors
From: |
Allen Ibara |
Subject: |
[paparazzi-commits] [5015] Updates for CSC code (mainly pressure sensors) |
Date: |
Tue, 06 Jul 2010 18:05:14 +0000 |
Revision: 5015
http://svn.sv.gnu.org/viewvc/?view=rev&root=paparazzi&revision=5015
Author: aibara
Date: 2010-07-06 18:05:13 +0000 (Tue, 06 Jul 2010)
Log Message:
-----------
Updates for CSC code (mainly pressure sensors)
Modified Paths:
--------------
paparazzi3/trunk/sw/airborne/csc/csc_adc.c
paparazzi3/trunk/sw/airborne/csc/csc_ap_link.c
paparazzi3/trunk/sw/airborne/csc/csc_ap_link.h
paparazzi3/trunk/sw/airborne/csc/csc_baro.c
paparazzi3/trunk/sw/airborne/csc/csc_msg_def.h
Modified: paparazzi3/trunk/sw/airborne/csc/csc_adc.c
===================================================================
--- paparazzi3/trunk/sw/airborne/csc/csc_adc.c 2010-07-06 18:01:44 UTC (rev
5014)
+++ paparazzi3/trunk/sw/airborne/csc/csc_adc.c 2010-07-06 18:05:13 UTC (rev
5015)
@@ -11,11 +11,13 @@
#include "csc_servos.h"
#include "sys_time.h"
-struct adc_buf adc_bufs[ADC_NB];
+#define ADC_NB_CSC 4
+struct adc_buf adc_bufs[ADC_NB_CSC];
+
uint8_t vsupply;
uint16_t adc_slider;
-uint16_t adc_values[ADC_NB];
+uint16_t adc_values[ADC_NB_CSC];
#define ADC_VDIV 5.7
#define ADC_VOLT 3.28
@@ -28,14 +30,12 @@
#define ADC_VSUPPLY 0
#define ADC_SLIDER 3
-#ifndef ADC_NB
-#define ADC_NB 2
-#endif
+
void csc_adc_init(void)
{
adc_init();
- for (int i = 0; i < ADC_NB; i++) {
+ for (int i = 0; i < ADC_NB_CSC; i++) {
adc_buf_channel(i, &adc_bufs[i], ADC_AV_NB);
}
}
@@ -44,7 +44,7 @@
{
vsupply = adc_bufs[ADC_VSUPPLY].sum / adc_bufs[ADC_VSUPPLY].av_nb_sample /
ADC_FACTOR * 10;
adc_slider = adc_bufs[ADC_SLIDER].sum / adc_bufs[ADC_SLIDER].av_nb_sample;
- for (int i = 0; i < ADC_NB; i++) {
+ for (int i = 0; i < ADC_NB_CSC; i++) {
adc_values[i] = adc_bufs[i].sum / adc_bufs[i].av_nb_sample;
}
}
Modified: paparazzi3/trunk/sw/airborne/csc/csc_ap_link.c
===================================================================
--- paparazzi3/trunk/sw/airborne/csc/csc_ap_link.c 2010-07-06 18:01:44 UTC
(rev 5014)
+++ paparazzi3/trunk/sw/airborne/csc/csc_ap_link.c 2010-07-06 18:05:13 UTC
(rev 5015)
@@ -47,15 +47,15 @@
}
-void csc_ap_link_send_airspeed(float airspeed1, float airspeed2)
+void csc_ap_link_send_pressure(float pressure1, float pressure2)
{
- struct CscAirspeedMsg msg;
+ struct CscPressureMsg msg;
- msg.airspeed1 = airspeed1;
- msg.airspeed2 = airspeed2;
+ msg.pressure1 = pressure1;
+ msg.pressure2 = pressure2;
- csc_ap_send_msg(CSC_AIRSPEED_MSG_ID, (const uint8_t *) &msg, sizeof(msg));
+ csc_ap_send_msg(CSC_PRESSURE_MSG_ID, (const uint8_t *) &msg, sizeof(msg));
}
void csc_ap_link_send_baro(uint32_t pressure, uint16_t temperature, uint8_t
status)
Modified: paparazzi3/trunk/sw/airborne/csc/csc_ap_link.h
===================================================================
--- paparazzi3/trunk/sw/airborne/csc/csc_ap_link.h 2010-07-06 18:01:44 UTC
(rev 5014)
+++ paparazzi3/trunk/sw/airborne/csc/csc_ap_link.h 2010-07-06 18:05:13 UTC
(rev 5015)
@@ -15,7 +15,7 @@
void csc_ap_link_send_status(uint32_t loops, uint32_t msgs);
void csc_ap_link_send_adc(float adc1, float adc2);
void csc_ap_link_send_vane(float *vane_angle);
-void csc_ap_link_send_airspeed(float airspeed1, float airspeed2);
+void csc_ap_link_send_pressure(float pressure1, float pressure2);
void csc_ap_link_send_baro(uint32_t pressure, uint16_t temp, uint8_t status);
void csc_ap_link_set_servo_cmd_cb(void (* cb)(struct CscServoCmd *cmd));
void csc_ap_link_set_motor_cmd_cb(void (* cb)(struct CscMotorMsg *msg));
Modified: paparazzi3/trunk/sw/airborne/csc/csc_baro.c
===================================================================
--- paparazzi3/trunk/sw/airborne/csc/csc_baro.c 2010-07-06 18:01:44 UTC (rev
5014)
+++ paparazzi3/trunk/sw/airborne/csc/csc_baro.c 2010-07-06 18:05:13 UTC (rev
5015)
@@ -8,6 +8,7 @@
#include "messages.h"
#include "downlink.h"
#include "csc_booz2_ins.h"
+#include "csc_ap_link.h"
#include "spi_hw.h"
@@ -37,7 +38,6 @@
#define SS_IODIR IO0DIR
#define SS_IOSET IO0SET
#define SS_IOCLR IO0CLR
-#define SSEL1_PINSEL() PINSEL1 = (PINSEL1 & ~(3 << 28)) | (0 << 28)
#define ScpSelect() SetBit(SS_IOCLR,SS_PIN)
#define ScpUnselect() SetBit(SS_IOSET,SS_PIN)
@@ -48,10 +48,10 @@
#define DRDY1_IOPIN IO0PIN
#define DRDY1_PINSEL() PINSEL0 = (PINSEL0 & ~(3 << 30)) | (0 << 30)
-#define SSP0_SCK_PINSEL() (PINSEL1 = (PINSEL1 & ~(3 << 2)) | (2 << 2))
-#define SSP0_MISO_PINSEL() (PINSEL1 = (PINSEL1 & ~(3 << 4)) | (2 << 4))
-#define SSP0_MOSI_PINSEL() (PINSEL1 = (PINSEL1 & ~(3 << 6)) | (2 << 6))
-#define SSP0_SSEL_PINSEL() (PINSEL1 = (PINSEL1 & ~(3 << 8)) | (2 << 8))
+#define SSP1_SCK_PINSEL() (PINSEL1 = (PINSEL1 & ~(3 << 2)) | (2 << 2))
+#define SSP1_MISO_PINSEL() (PINSEL1 = (PINSEL1 & ~(3 << 4)) | (2 << 4))
+#define SSP1_MOSI_PINSEL() (PINSEL1 = (PINSEL1 & ~(3 << 6)) | (2 << 6))
+#define SSP1_SSEL_PINSEL() (PINSEL1 = (PINSEL1 & ~(3 << 8)) | (2 << 8))
static uint8_t baro_scp_read_reg_8(uint8_t regno)
{
@@ -125,12 +125,10 @@
void baro_scp_init( void )
{
- SSP0_SCK_PINSEL();
- SSP0_MISO_PINSEL();
- SSP0_MOSI_PINSEL();
- SSP0_SSEL_PINSEL();
- SSEL1_PINSEL();
- SS_IODIR = SS_IODIR | _BV(SS_PIN);
+ SSP1_SCK_PINSEL();
+ SSP1_MISO_PINSEL();
+ SSP1_MOSI_PINSEL();
+ SSP1_SSEL_PINSEL();
DRDY1_PINSEL();
S1SPCR = _BV(3) | _BV(4) | _BV(5);
@@ -162,8 +160,6 @@
//baro_scp_alt = 9000 - baro_scp_pressure * 0.00084366;
baro_scp_status = STA_VALID;
-
- csc_ap_link_send_baro(baro_scp_pressure, baro_scp_temperature,
baro_scp_status);
}
}
Modified: paparazzi3/trunk/sw/airborne/csc/csc_msg_def.h
===================================================================
--- paparazzi3/trunk/sw/airborne/csc/csc_msg_def.h 2010-07-06 18:01:44 UTC
(rev 5014)
+++ paparazzi3/trunk/sw/airborne/csc/csc_msg_def.h 2010-07-06 18:05:13 UTC
(rev 5015)
@@ -19,7 +19,7 @@
#define CSC_GPS_ACC_ID 9
#define CSC_PROP2_CMD_ID 10
#define CSC_VANE_MSG_ID 11
-#define CSC_AIRSPEED_MSG_ID 12
+#define CSC_PRESSURE_MSG_ID 12
#define CSC_BARO_MSG_ID 13
@@ -81,9 +81,9 @@
float vane_angle2;
} __attribute__((packed));
-struct CscAirspeedMsg {
- float airspeed1;
- float airspeed2;
+struct CscPressureMsg {
+ float pressure1;
+ float pressure2;
} __attribute__((packed));
struct CscBaroMsg {
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [paparazzi-commits] [5015] Updates for CSC code (mainly pressure sensors),
Allen Ibara <=