summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt4
-rw-r--r--app/head_task/head_task.c44
-rw-r--r--app/indicate/indicate_modes_task.c4
3 files changed, 29 insertions, 23 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 93cca90..c50deb9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -80,6 +80,9 @@ set(nixie_clock_sources
"app/platform/stm32f0-gcc/startup/startup.cpp"
)
+set_source_files_properties("third_party/FreeRTOS/queue.c" PROPERTIES
+ COMPILE_FLAGS -Wno-cast-align)
+
add_executable(${PROJECT_NAME}
${nixie_clock_sources}
)
@@ -132,7 +135,6 @@ target_compile_options(${PROJECT_NAME} PRIVATE
-g3
-Wall
-Wextra
- -pedantic
-Wcast-align
-Wshadow
-Wlogical-op
diff --git a/app/head_task/head_task.c b/app/head_task/head_task.c
index db693f7..4d2b2b6 100644
--- a/app/head_task/head_task.c
+++ b/app/head_task/head_task.c
@@ -27,7 +27,7 @@ typedef enum {
STATE_MENU_ADJ_TIME_TIMER_OUT
} MenuAdjTimeStates_t;
-static MenuFunctionsNums_t curr_menu_func = MENU_FUNC_SIMPLE_TIME_VIEW;
+static MenuFunctionsNums_t g_curr_menu_func = MENU_FUNC_SIMPLE_TIME_VIEW;
// Прототипы функций меню
static void MenuFunc_SimpleTimeView ( void );
@@ -43,14 +43,14 @@ static const MenuFunctions_t MenuFunctions[MAX_MENU_FUNCTIONS] = {
};
-void GetCurrTime ( DataToIndicate_t* indic_data );
-void SetTime ( DataToIndicate_t* indic_data );
-void AdjTimeChangeTube ( ButtonCombName_t but_comb_name, uint8_t *position );
-void AdjTimeChangeValue ( ButtonCombName_t but_comb_name, IndicModesMsgBlink_t* data, uint8_t position_mask );
-void ChangeValue ( uint8_t increase, uint8_t *data, uint8_t limit );
+static void GetCurrTime ( DataToIndicate_t* indic_data );
+static void SetTime ( const DataToIndicate_t* indic_data );
+static void AdjTimeChangeTube ( ButtonCombName_t but_comb_name, uint8_t *position );
+static void AdjTimeChangeValue ( ButtonCombName_t but_comb_name, IndicModesMsgBlink_t* data, uint8_t position_mask );
+static void ChangeValue ( uint8_t increase, uint8_t *data, uint8_t limit );
-DataToIndicate_t indic_data;
+static DataToIndicate_t g_indic_data;
extern QueueHandle_t queue_data_to_indic; // indicate_modes_task.c
extern QueueHandle_t queue_but_comb; // button_handler.c
extern QueueHandle_t queue_data_to_blink_mode;
@@ -67,7 +67,7 @@ void HeadTaskInit ( void )
queue_switch_indic_mode = xQueueCreate ( 1, sizeof (IndicModesNums_t) );
configASSERT( queue_switch_indic_mode );
- curr_menu_func = MENU_FUNC_SIMPLE_TIME_VIEW;
+ g_curr_menu_func = MENU_FUNC_SIMPLE_TIME_VIEW;
}
@@ -80,15 +80,15 @@ void MenuFunc_SimpleTimeView ( void )
/* Get the current Time */
RTC_GetTime(RTC_Format_BCD, &RTC_TimeStructure);
- GetCurrTime ( &indic_data );
- xQueueSend ( queue_data_to_indic, &indic_data, 0 );
+ GetCurrTime ( &g_indic_data );
+ xQueueSend ( queue_data_to_indic, &g_indic_data, 0 );
}
// ----------------------------------------------------------------------------
// Ф-я-меню настройки времени
// ----------------------------------------------------------------------------
-void MenuFunc_AdjTime ( void )
+static void MenuFunc_AdjTime ( void )
{
static const uint32_t TIME_ADJ_OUT = 5000; //ms
@@ -130,7 +130,7 @@ void MenuFunc_AdjTime ( void )
{
state_adj_time = STATE_MENU_ADJ_TIME_START;
// Выходим из этого меню режима
- curr_menu_func = MENU_FUNC_SIMPLE_TIME_VIEW;
+ g_curr_menu_func = MENU_FUNC_SIMPLE_TIME_VIEW;
indic_mode_num = INDIC_MODE_STANDART;
xQueueSend ( queue_switch_indic_mode, &indic_mode_num, 0 );
// При выходе из настройки времени нужно послать сообщ. на обновление
@@ -138,8 +138,8 @@ void MenuFunc_AdjTime ( void )
// отрицательной, а данные обновляются только раз в секунду, и поэтому
// лампа может быть потухшей 1 секунду.
// - тут лучше сделать завершение фазы моргания
- GetCurrTime ( &indic_data );
- xQueueSend ( queue_data_to_indic, &indic_data, 0 );
+ GetCurrTime ( &g_indic_data );
+ xQueueSend ( queue_data_to_indic, &g_indic_data, 0 );
}
else
{
@@ -193,7 +193,7 @@ void MenuFunc_AdjTime ( void )
// ----------------------------------------------------------------------------
//
// ----------------------------------------------------------------------------
-void ProcessFSM_Head ( void )
+static void ProcessFSM_Head ( void )
{
// - тут можно совершать внешние переключения функций меню:
@@ -215,10 +215,10 @@ void ProcessFSM_Head ( void )
// внутреннее состояние текущего режима
xQueueReceive ( queue_but_comb, &but_comb_name, 0 );
- curr_menu_func = MENU_ADJ_TIME;
+ g_curr_menu_func = MENU_ADJ_TIME;
}
}
- MenuFunctions [curr_menu_func]();
+ MenuFunctions [g_curr_menu_func]();
taskYIELD();
}
@@ -227,7 +227,7 @@ void ProcessFSM_Head ( void )
//
// ----------------------------------------------------------------------------
-void GetCurrTime ( DataToIndicate_t *indic_data )
+static void GetCurrTime ( DataToIndicate_t *indic_data )
{
RTC_TimeTypeDef RTC_TimeStructure;
@@ -248,7 +248,7 @@ void GetCurrTime ( DataToIndicate_t *indic_data )
// ----------------------------------------------------------------------------
//
// ----------------------------------------------------------------------------
-void SetTime ( DataToIndicate_t* indic_data )
+static void SetTime ( const DataToIndicate_t* indic_data )
{
RTC_TimeTypeDef RTC_TimeStructure;
@@ -270,7 +270,7 @@ void SetTime ( DataToIndicate_t* indic_data )
// Ф-я вызывается из MenuFunc_AdjTime
// Номер лампы соотносится с номером лампы ( левый бит - нулевой, и лампа тоже )
// ----------------------------------------------------------------------------
-void AdjTimeChangeTube ( ButtonCombName_t but_comb_name, uint8_t *position_mask )
+static void AdjTimeChangeTube ( ButtonCombName_t but_comb_name, uint8_t *position_mask )
{
if ( but_comb_name == BUTTON_SINGLE_FORWARD )
{
@@ -289,7 +289,7 @@ void AdjTimeChangeTube ( ButtonCombName_t but_comb_name, uint8_t *position_mask
// Ф-я изменения значения цифры в текущем положении
// То есть тут настраиваем время "поцифирно"
// ----------------------------------------------------------------------------
-void AdjTimeChangeValue ( ButtonCombName_t but_comb_name, IndicModesMsgBlink_t *data_struct, uint8_t position_mask )
+static void AdjTimeChangeValue ( ButtonCombName_t but_comb_name, IndicModesMsgBlink_t *data_struct, uint8_t position_mask )
{
uint8_t increase;
@@ -343,7 +343,7 @@ void AdjTimeChangeValue ( ButtonCombName_t but_comb_name, IndicModesMsgBlink_t *
//
// ----------------------------------------------------------------------------
-void ChangeValue ( uint8_t increase, uint8_t *data, uint8_t limit )
+static void ChangeValue ( uint8_t increase, uint8_t *data, uint8_t limit )
{
if ( increase )
diff --git a/app/indicate/indicate_modes_task.c b/app/indicate/indicate_modes_task.c
index 95d8da5..2f3223e 100644
--- a/app/indicate/indicate_modes_task.c
+++ b/app/indicate/indicate_modes_task.c
@@ -171,6 +171,8 @@ static void IndicMode_Blink ( void )
switch ( state_blink )
{
+ case STATE_BLINK_START_OFF:
+ break;
case STATE_BLINK_TIMER_OFF:
if ( GetLTimer ( LTIMER_INDIC_MODE_BLINK_OFF ) >= TIME_BLINK_OFF )
@@ -266,6 +268,8 @@ void ProcessFSM_IndicateModes ( void )
case INDIC_MODE_BLINK:
state_blink = STATE_BLINK_TIMER_OFF;
break;
+ case MAX_INDIC_MODES:
+ break;
}
curr_indic_mode = indic_mode_num;