Добрый день
Цитата
Сейчас, хотя препроцессор и интегрирован с транслятором, но "нарастить" значения идентификаторов попрежнему не может. Впрочем, нужно ли это? Я себе не представляю программу, в которой это пригодилось бы.
По поводу увеличивающихся по значению идентификаторов.
Вот пример (в асме он используется всегда):
Код
LABEL SET 0
START_TIMER_TIME_OUT MACRO COUNTER,LABEL_NUM
COUNTER SET COUNTER+1
JB TR2,SUF&LABEL_NUM
MOV TMR2L,#LOW(TIME_MINIMUM) ; Мин. промежуток времени для задержки по IIC шине (для EEPROM и термодатчиков)
MOV TMR2H,#HIGH(TIME_MINIMUM)
SUF&LABEL_NUM:
SETB TR2 ; Запускаем отсчет времени
ENDM
Вызоа макроса
Код
START_TIMER_TIME_OUT LABEL,%LABEL ; Запускаем таймер
Может быть пример неудачный. Но использование макросов с проверкой оправдано когда критичны потери времени на вход и выход в/из процедуры.
Удачи.
Удачи.