Skip to content
Snippets Groups Projects
Commit f55a54c7 authored by Davide Mor's avatar Davide Mor
Browse files

[cc3135] Added support for stack v3 and ground station in test entrypoint

parent c085328b
Branches
No related tags found
No related merge requests found
...@@ -282,6 +282,12 @@ sbs_target(test-sx1278-serial stm32f429zi_stm32f4discovery) ...@@ -282,6 +282,12 @@ sbs_target(test-sx1278-serial stm32f429zi_stm32f4discovery)
add_executable(test-cc3135 src/tests/drivers/CC3135/test-cc3135.cpp) add_executable(test-cc3135 src/tests/drivers/CC3135/test-cc3135.cpp)
sbs_target(test-cc3135 stm32f407vg_stm32f4discovery) sbs_target(test-cc3135 stm32f407vg_stm32f4discovery)
add_executable(test-cc3135-gs src/tests/drivers/CC3135/test-cc3135.cpp)
sbs_target(test-cc3135-gs stm32f429zi_skyward_ground_station)
add_executable(test-cc3135-v3 src/tests/drivers/CC3135/test-cc3135.cpp)
sbs_target(test-cc3135-v3 stm32f429zi_skyward_death_stack_v3)
add_executable(test-mavlinkdriver src/tests/radio/test-mavlinkdriver.cpp) add_executable(test-mavlinkdriver src/tests/radio/test-mavlinkdriver.cpp)
sbs_target(test-mavlinkdriver stm32f407vg_stm32f4discovery) sbs_target(test-mavlinkdriver stm32f407vg_stm32f4discovery)
......
...@@ -38,6 +38,25 @@ cc3135:CC_SPI_DOUT -> stm32:pc11 (SPI3_MISO) ...@@ -38,6 +38,25 @@ cc3135:CC_SPI_DOUT -> stm32:pc11 (SPI3_MISO)
cc3135:CC_SPI_CLK -> stm32:pc10 (SPI3_SCK) cc3135:CC_SPI_CLK -> stm32:pc10 (SPI3_SCK)
*/ */
#if defined _BOARD_STM32F429ZI_SKYWARD_GS
#include "interfaces-impl/hwmapping.h"
using sck = interfaces::spi1::sck;
using miso = interfaces::spi1::miso;
using mosi = interfaces::spi1::mosi;
using cs = peripherals::cc3135::cs;
using irq = peripherals::cc3135::intr;
#define CC3135_SPI SPI1
#elif defined _BOARD_STM32F429ZI_SKYWARD_DEATHST_V3
#include "interfaces-impl/hwmapping.h"
using sck = interfaces::spi6::sck;
using miso = interfaces::spi6::miso;
using mosi = interfaces::spi6::mosi;
using cs = sensors::cc3135::cs;
using irq = sensors::cc3135::intr;
#define CC3135_SPI SPI6
#else
using tx = Gpio<GPIOA_BASE, 2>; using tx = Gpio<GPIOA_BASE, 2>;
using rx = Gpio<GPIOA_BASE, 3>; using rx = Gpio<GPIOA_BASE, 3>;
using irq = Gpio<GPIOA_BASE, 4>; using irq = Gpio<GPIOA_BASE, 4>;
...@@ -45,12 +64,19 @@ using hib = Gpio<GPIOA_BASE, 5>; ...@@ -45,12 +64,19 @@ using hib = Gpio<GPIOA_BASE, 5>;
#define CC3135_UART USART2 #define CC3135_UART USART2
#define CC3135_HIB #define CC3135_HIB
#endif
CC3135 *cc3135 = nullptr; CC3135 *cc3135 = nullptr;
volatile size_t IRQ_COUNT = 0; volatile size_t IRQ_COUNT = 0;
#if defined _BOARD_STM32F429ZI_SKYWARD_GS
void __attribute__((used)) EXTI5_IRQHandlerImpl()
#elif defined _BOARD_STM32F429ZI_SKYWARD_DEATHST_V3
void __attribute__((used)) EXTI10_IRQHandlerImpl()
#else
void __attribute__((used)) EXTI4_IRQHandlerImpl() void __attribute__((used)) EXTI4_IRQHandlerImpl()
#endif
{ {
IRQ_COUNT += 1; IRQ_COUNT += 1;
if (cc3135) if (cc3135)
...@@ -79,11 +105,11 @@ void initBoard() ...@@ -79,11 +105,11 @@ void initBoard()
rx::mode(miosix::Mode::ALTERNATE); rx::mode(miosix::Mode::ALTERNATE);
rx::alternateFunction(7); rx::alternateFunction(7);
} }
#endif
auto irq_pin = irq::getPin(); auto irq_pin = irq::getPin();
enableExternalInterrupt(irq_pin.getPort(), irq_pin.getNumber(), enableExternalInterrupt(irq_pin.getPort(), irq_pin.getNumber(),
InterruptTrigger::RISING_EDGE); InterruptTrigger::RISING_EDGE);
#endif
} }
int main() int main()
...@@ -121,6 +147,13 @@ int main() ...@@ -121,6 +147,13 @@ int main()
Thread::sleep(2000); Thread::sleep(2000);
#endif #endif
#ifdef CC3135_SPI
SPIBus bus(CC3135_SPI);
GpioPin cs_pin = cs::getPin();
std::unique_ptr<ICC3135Iface> iface(new CC3135Spi(bus, cs_pin, {}));
#endif
#ifdef CC3135_UART #ifdef CC3135_UART
std::unique_ptr<ICC3135Iface> iface(new CC3135Uart(CC3135_UART)); std::unique_ptr<ICC3135Iface> iface(new CC3135Uart(CC3135_UART));
#endif #endif
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment