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

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

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

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

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

caxapa

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

AVR PIC MSP PLD,FPGA,DSP 

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

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

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

 
Новая темаПравила РегистрацияСтатистика Архив
Вернуться в конференциюТопик полностью
VLLV  (12.04.2019 15:44) , в ответ на это в смысле так как-то? автор: NAUT
У меня полно разных вариантов, даже не знаю, что предлагать :) Вот например макросы, размещающие результат проверки условий в биты слова.  
//			number					name			name2		condition
SENSOR( CanAEmpty			,	"Can empty"		, "AC,A2" , GetAdc(CanAdc) > se.CanEmptyLevel					)
SENSOR( CanAShorted			,	"Can error"		, "AC,A2" , GetAdc(CanAdc) < se.CanShortLevel					)

SENSOR( NivBelowEmpty		,	"Niv below empt", "AC,A3" , GetAdc(NivEmptyAdc)>se.NiveauLevel					)
SENSOR( NivBelowLow			,	"Niv below low"	, "AC,A0" , GetAdc(NivLowAdc)>se.NiveauLevel						)
SENSOR( NivBelowHigh		,	"Niv below high", "AC,A1" , GetAdc(NivHighAdc)>se.NiveauLevel					)
SENSOR( NivInvalid			,	"Niv invalid"	, "     " , 0>1	)
//SENSOR( InputPressureHigh	,	"High in press"	, "DC,A5" , GetAdc(InputAdc)<se.InSensorLevel					)
SENSOR( LeakageOn			,	"Leakage"		, "DC,A5" , GetAdc(LeakageAdc)<se.LeakageSensorLevel			)

SENSOR( LowwOutputPressure	,	"Low out press"	, "DC,A4" , GetAdc(OutputAdc) <	loww_output_pressure				)
SENSOR( OffOutputPressure	,	"Off pressure"	, "DC,A4" , GetAdc(OutputAdc) >	off_output_pressure				)
SENSOR( OnOutputPressure	,	"On pressure"	, "DC,A4" , GetAdc(OutputAdc) <	on_output_pressure				)

//SENSOR( MaxOutputPressure	,	"Max Sys press"	, "DC,A5" , GetAdc(OutputAdc) >	max_output_pressure				)
//SENSOR( ExtraOutputPressure ,	"Extra press	"	, "DC,A5" , GetAdc(OutputAdc) >	extra_output_pressure			)
SENSOR( LowPower			,	"Low power	"	, "DC,A6" , GetAdc(PowerAdc)	<	se.LowPowerLevel				)

SENSOR( ConcCounterInput	,	"Conc counter "	, "DC,P4.0", GetPin(ConcCounterIn)								)
SENSOR( WaterCounterInput	,	"Water counter"	, "DC,P4.1", GetPin(WaterCounterIn)								)
void SensorService(void)
{

	unsigned int s=0;
	unsigned int niv_sensors;


#pragma diag_suppress=Pa082
#define SENSOR(nam,mesa,mesb,condition) if (condition) s|=b##nam;
#include SENSORS_HEADER
#undef SENSOR
#pragma diag_warning=Pa082

	sensors=s;
	old_sensors=sensors;
}
 [x][x][x][x][x][x] [x][x][x][x][x][x][x][x]

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

 

Имя


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