This commit is contained in:
Attila Body 2025-06-29 22:00:31 +02:00
parent d7dbc95a7b
commit d8f35c562c
Signed by: abody
GPG key ID: BD0C6214E68FB5CF
4 changed files with 14 additions and 10 deletions

View file

@ -127,7 +127,7 @@ void MX_FREERTOS_Init(void)
__weak void StartDefaultTask(void const *argument) __weak void StartDefaultTask(void const *argument)
{ {
/* USER CODE BEGIN StartDefaultTask */ /* USER CODE BEGIN StartDefaultTask */
app_main(NULL); app_main();
/* Infinite loop */ /* Infinite loop */
for (;;) { for (;;) {
osDelay(1); osDelay(1);

View file

@ -13,15 +13,17 @@
#ifdef __cplusplus #ifdef __cplusplus
#include <f4ll/console_handler.h> #include <f4ll/console_handler.h>
#include <f4ll/singleton.h>
#include <task.h> #include <task.h>
#include <thread_safe_console_output.h> #include <thread_safe_console_output.h>
class app : public f4ll::initialized_singleton<app>, public f4ll::console_handler::iconsole_input class app : public f4ll::singleton<app>, public f4ll::console_handler::iconsole_input
{ {
friend class f4ll::initialized_singleton<app>; friend class f4ll::singleton<app>;
private: private:
app(void const *param); app();
public: public:
__attribute__((noreturn)) void main(); __attribute__((noreturn)) void main();
@ -49,7 +51,7 @@ private:
extern "C" { extern "C" {
#endif // __cplusplus #endif // __cplusplus
void app_main(void const *param) __attribute__((noreturn)); void app_main() __attribute__((noreturn));
#ifdef __cplusplus #ifdef __cplusplus
} // extern "C" { } // extern "C" {

View file

@ -15,18 +15,21 @@
#include <f4ll/console_handler.h> #include <f4ll/console_handler.h>
#include <f4ll/str_util.h> #include <f4ll/str_util.h>
#include <f4ll/fault.h>
#include <f4ll/irq_lock.h>
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
#include <app.h> #include <app.h>
void app_main(void const *param) void app_main()
{ {
app::init(param).main(); app::instance().main();
} }
app::app(void const *param) app::app()
: m_con( : m_con(
f4ll::console_handler::init( f4ll::console_handler::init(
USART2, DMA1, LL_DMA_STREAM_5, LL_DMA_STREAM_6, m_rx_buf_mem, sizeof(m_rx_buf_mem), m_tx_buf_mem, sizeof(m_tx_buf_mem), USART2, DMA1, LL_DMA_STREAM_5, LL_DMA_STREAM_6, m_rx_buf_mem, sizeof(m_rx_buf_mem), m_tx_buf_mem, sizeof(m_tx_buf_mem),
@ -34,7 +37,6 @@ app::app(void const *param)
m_safe_conout(m_con) m_safe_conout(m_con)
{ {
(void)param;
} }
void app::main() void app::main()

@ -1 +1 @@
Subproject commit eb385a113f4dbf3f2f2a722b18fe140968a88aa1 Subproject commit 80fc520b6fad8a012e239efca77f33f759337344