skl-tunnel/main.cpp
2022-08-24 23:42:24 +03:00

65 lines
1.2 KiB
C++

#include <atmel_start.h>
#include <utility_logging.hpp>
#include <utility_assert.hpp>
#include <utility_staticpointer.hpp>
#include <utility_function.hpp>
#include "radio_hw_instance.hpp"
#include "skullc_samd21_hal.hpp"
#include "app_transparent_client.hpp"
namespace Hal = Peripherals::Hal::Samd;
#define APP_NODE_ID 11
//#define APP_NODE_ID 18
namespace
{
Utility::StaticPointer<App::TransparentClient> m_app;
[[noreturn]] void m_faultHandler(const char* expression, const char* file, const int line)
{
SKULLC_LOG_FATAL("Expression failed: (%s), source: %s:%d", expression, file, line);
__asm__("BKPT");
while (true);
}
}
int main()
{
/* Initializes MCU, drivers and middleware */
atmel_start_init();
Utility::Assert::setHandler(m_faultHandler);
Hal::StaticHal::initialize();
gpio_set_pin_level(OUT_LED_TX, false);
SKULLC_LOG_DEBUG("Begin.");
App::RadioSettings settings;
settings.short_address = APP_NODE_ID;
m_app.setup(settings);
std::uint32_t counter = 0;
/* Replace with your application code */
while (true)
{
if (counter++ == 1000)
{
gpio_toggle_pin_level(OUT_LED_TX);
counter = 0;
}
m_app->process();
Hal::StaticHal::delay(1);
}
}