16+
Пятница
19 апреля
Вход |Карта сайта |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Средства и методы разработки

 
Новая темаПравила РегистрацияСтатистика Архив
Вернуться в конференциюТопик полностью
NAUT  (12.04.2019 14:49) , в ответ на ну дык нужен массив функций проверки условий, индекс этого массива и впихивается. автор: VLLV
если оборачивать в функции, то есть такое, но это звиздец: 
void GearDown();
void WtgForTakeoff();
void RaisingGear();
void GearUp();
void LoweringGear();

void GearDown(){}
void WtgForTakeoff(){}
void RaisingGear(){}
void GearUp(){}
void LoweringGear(){}

#define FunctionItem(id,fun) id

typedef enum {
#include "fi.h"
} State_Type;

#undef FunctionItem
#define FunctionItem(id,fun) fun

void (*state_table[])() = {
#include "fi.h"
};

void main(void)
{	
	int curr_state = 0;
	while(1)
	{
		state_table[curr_state]();
	}
}
fi.h:
FunctionItem(GEAR_DOWN = 0, GearDown),
FunctionItem(WTG_FOR_TKOFF, WtgForTakeoff),
FunctionItem(RAISING_GEAR, RaisingGear),
FunctionItem(GEAR_UP, GearUp),
FunctionItem(LOWERING_GEAR, LoweringGear)
 [x][x][x][x][x][x] [x][x][x][x][x][x][x][x]

Тема выделяется по переводу строки или автоматом

 

Имя


Регистрация позволит вам редактировать и перемещать ваши сообщения и прикреплять к ним файлы.
 
Символы: á é ó ú ý « »
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7527 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXIX