Да, описался. 8, конечно.
Цитата:
Сообщение от roman5
WORK1 = next_sig_lr ( SIGFN_DISTANCE );
if ( WORK1 ==# SIGASP_CLEAR_2 ) { SVET = 5; }
if ( WORK1 ==# SIGASP_CLEAR_1 ) { SVET = 4; }
if ( WORK1 ==# SIGASP_APPROACH_3 ) { SVET = 3; }
if ( WORK1 ==# SIGASP_APPROACH_2 ) { SVET = 2; }
if ( WORK1 ==# SIGASP_APPROACH_1 ) { SVET = 1; } if ( WORK1 ==# SIGASP_RESTRICTING ) { POEZD = 2; }
if ( WORK1 ==# SIGASP_STOP_AND_PROCEED ) { POEZD = 1; } // либо SVET больше 0 - если разрещающий поездной сигнал DISTANCE впереди нижний - либо POEZD на белый или красный_1
|
Почему нижний?
Вообще не рекомендую ловить состояние блока головами типа DISTANCE и делать на этом основании сигнальные выводы. "Козлёночком станешь" (ц)