Skip to content
Snippets Groups Projects
Commit d46ebad3 authored by Alberto Nidasio's avatar Alberto Nidasio
Browse files

[CIUTI] Updated hardware mappings

parent ac2ecd5e
Branches
Tags
No related merge requests found
......@@ -72,71 +72,75 @@ void IRQbspInit()
GPIOC->OSPEEDR = 0xaaaaaaaa;
GPIOD->OSPEEDR = 0xaaaaaaaa;
interfaces::spi1::cs::mode(Mode::OUTPUT);
interfaces::spi1::cs::high();
interfaces::spi1::sck::mode(Mode::ALTERNATE);
interfaces::spi1::sck::alternateFunction(5);
interfaces::spi1::miso::mode(Mode::ALTERNATE);
interfaces::spi1::miso::alternateFunction(5);
interfaces::spi1::mosi::mode(Mode::ALTERNATE);
interfaces::spi1::mosi::alternateFunction(5);
interfaces::spi2::sck::mode(Mode::ALTERNATE);
interfaces::spi2::sck::alternateFunction(5);
interfaces::spi2::miso::mode(Mode::ALTERNATE);
interfaces::spi2::miso::alternateFunction(5);
interfaces::spi2::mosi::mode(Mode::ALTERNATE);
interfaces::spi2::mosi::alternateFunction(5);
interfaces::usart1::rx::mode(Mode::ALTERNATE);
interfaces::usart1::rx::alternateFunction(7);
interfaces::usart1::tx::mode(Mode::ALTERNATE);
interfaces::usart1::tx::alternateFunction(7);
interfaces::usart2::rx::mode(Mode::ALTERNATE);
interfaces::usart2::rx::alternateFunction(7);
interfaces::usart2::tx::mode(Mode::ALTERNATE);
interfaces::usart2::tx::alternateFunction(7);
interfaces::usart3::rx::mode(Mode::ALTERNATE);
interfaces::usart3::rx::alternateFunction(7);
interfaces::usart3::tx::mode(Mode::ALTERNATE);
interfaces::usart3::tx::alternateFunction(7);
interfaces::can1::rx::mode(Mode::ALTERNATE);
interfaces::can1::rx::alternateFunction(9);
interfaces::can1::tx::mode(Mode::ALTERNATE);
interfaces::can1::tx::alternateFunction(9);
sensors::lis331hh::cs::mode(Mode::OUTPUT);
sensors::lis331hh::cs::high();
sensors::ad8403::cs::mode(Mode::OUTPUT);
sensors::ad8403::cs::high();
sensors::ina188::vsense1::mode(Mode::INPUT_ANALOG);
sensors::ina188::vsense2::mode(Mode::INPUT_ANALOG);
sensors::ina188::mosfet1::mode(Mode::OUTPUT);
sensors::ina188::mosfet1::high();
sensors::ina188::mosfet2::mode(Mode::OUTPUT);
sensors::ina188::mosfet2::high();
sensors::vbat::mode(Mode::INPUT_ANALOG);
actuators::buttons::bypass::mode(Mode::INPUT);
actuators::buttons::record::mode(Mode::INPUT);
actuators::buzzer::drive::mode(Mode::ALTERNATE);
actuators::buzzer::drive::alternateFunction(3);
actuators::leds::led1::mode(Mode::OUTPUT);
actuators::leds::led1::low();
actuators::leds::led2::mode(Mode::OUTPUT);
actuators::leds::led2::low();
actuators::leds::led3::mode(Mode::OUTPUT);
actuators::leds::led3::low();
actuators::leds::led4::mode(Mode::OUTPUT);
actuators::leds::led4::low();
using namespace interfaces;
spi1::cs::mode(Mode::OUTPUT);
spi1::cs::high();
spi1::sck::mode(Mode::ALTERNATE);
spi1::sck::alternateFunction(5);
spi1::miso::mode(Mode::ALTERNATE);
spi1::miso::alternateFunction(5);
spi1::mosi::mode(Mode::ALTERNATE);
spi1::mosi::alternateFunction(5);
spi2::sck::mode(Mode::ALTERNATE);
spi2::sck::alternateFunction(5);
spi2::miso::mode(Mode::ALTERNATE);
spi2::miso::alternateFunction(5);
spi2::mosi::mode(Mode::ALTERNATE);
spi2::mosi::alternateFunction(5);
usart1::rx::mode(Mode::ALTERNATE);
usart1::rx::alternateFunction(7);
usart1::tx::mode(Mode::ALTERNATE);
usart1::tx::alternateFunction(7);
usart2::rx::mode(Mode::ALTERNATE);
usart2::rx::alternateFunction(7);
usart2::tx::mode(Mode::ALTERNATE);
usart2::tx::alternateFunction(7);
usart3::rx::mode(Mode::ALTERNATE);
usart3::rx::alternateFunction(7);
usart3::tx::mode(Mode::ALTERNATE);
usart3::tx::alternateFunction(7);
can1::rx::mode(Mode::ALTERNATE);
can1::rx::alternateFunction(9);
can1::tx::mode(Mode::ALTERNATE);
can1::tx::alternateFunction(9);
using namespace devices;
lis331hh::cs::mode(Mode::OUTPUT);
lis331hh::cs::high();
ad5204::cs::mode(Mode::OUTPUT);
ad5204::cs::high();
ina188::vsense1::mode(Mode::INPUT_ANALOG);
ina188::vsense2::mode(Mode::INPUT_ANALOG);
ina188::mosfet1::mode(Mode::OUTPUT);
ina188::mosfet1::high();
ina188::mosfet2::mode(Mode::OUTPUT);
ina188::mosfet2::high();
vbat::mode(Mode::INPUT_ANALOG);
buttons::bypass::mode(Mode::INPUT);
buttons::record::mode(Mode::INPUT);
buzzer::drive::mode(Mode::ALTERNATE);
buzzer::drive::alternateFunction(3);
leds::led1::mode(Mode::OUTPUT);
leds::led1::low();
leds::led2::mode(Mode::OUTPUT);
leds::led2::low();
leds::led3::mode(Mode::OUTPUT);
leds::led3::low();
leds::led4::mode(Mode::OUTPUT);
leds::led4::low();
DefaultConsole::instance().IRQset(intrusive_ref_ptr<Device>(
new STM32Serial(defaultSerial, defaultSerialSpeed,
......
......@@ -49,18 +49,18 @@ namespace miosix
inline void ledOn()
{
actuators::leds::led1::high();
actuators::leds::led2::high();
actuators::leds::led3::high();
actuators::leds::led4::high();
devices::leds::led1::high();
devices::leds::led2::high();
devices::leds::led3::high();
devices::leds::led4::high();
}
inline void ledOff()
{
actuators::leds::led1::low();
actuators::leds::led2::low();
actuators::leds::led3::low();
actuators::leds::led4::low();
devices::leds::led1::low();
devices::leds::led2::low();
devices::leds::led3::low();
devices::leds::led4::low();
}
/**
......
......@@ -27,7 +27,8 @@
#include "interfaces/delays.h"
namespace miosix {
namespace miosix
{
void delayMs(unsigned int mseconds)
{
......@@ -43,11 +44,13 @@ void delayMs(unsigned int mseconds)
{
// This delay has been calibrated to take 1 millisecond
// It is written in assembler to be independent on compiler optimization
asm volatile(" mov r1, #0 \n"
asm volatile(
" mov r1, #0 \n"
"___loop_m: cmp r1, %0 \n"
" itt lo \n"
" addlo r1, r1, #1 \n"
" blo ___loop_m \n"::"r"(count):"r1");
" blo ___loop_m \n" ::"r"(count)
: "r1");
}
#else //__CODE_IN_XRAM
......@@ -61,13 +64,15 @@ void delayUs(unsigned int useconds)
// This delay has been calibrated to take x microseconds
// It is written in assembler to be independent on compiler optimization
asm volatile(" mov r1, #30 \n"
asm volatile(
" mov r1, #30 \n"
" mul r2, %0, r1 \n"
" mov r1, #0 \n"
"___loop_u: cmp r1, r2 \n"
" itt lo \n"
" addlo r1, r1, #1 \n"
" blo ___loop_u \n"::"r"(useconds):"r1","r2");
" blo ___loop_u \n" ::"r"(useconds)
: "r1", "r2");
#else //__CODE_IN_XRAM
#error "No delays"
......
......@@ -82,7 +82,7 @@ using tx = Gpio<GPIOA_BASE, 12>;
} // namespace interfaces
namespace sensors
namespace devices
{
namespace lis331hh
......@@ -90,7 +90,7 @@ namespace lis331hh
using cs = Gpio<GPIOC_BASE, 4>;
}
namespace ad8403
namespace ad5204
{
using cs = Gpio<GPIOC_BASE, 0>;
}
......@@ -105,11 +105,6 @@ using mosfet2 = Gpio<GPIOC_BASE, 2>;
using vbat = Gpio<GPIOC_BASE, 5>;
} // namespace sensors
namespace actuators
{
namespace buttons
{
using bypass = Gpio<GPIOC_BASE, 7>;
......@@ -129,7 +124,7 @@ using led3 = Gpio<GPIOB_BASE, 6>;
using led4 = Gpio<GPIOB_BASE, 7>;
} // namespace leds
} // namespace actuators
} // namespace devices
} // namespace miosix
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment