Ответ: Наверное Вопрос 1 и 2 общие голову поломать, как ето все в программе учесть. Помогите разобраться. **BL51: HOW DOES OVERLAY ANALYSIS WORK?
http://www.keil.co …/support/docs/1887.htm
++++++++++
To provide the most efficient use of memory, automatic variables and function arguments are overlaid in memory according to a well-defined procedure.
Например-
Assuming that functions A, B, and C do not call each other, the memory they use may be overlaid. So, rather than taking 46 bytes of data memory (10 for A + 20 for B + 16 for C) only 20 bytes of data memory are consumed.
++++++++++
Вот рекомендации фирмы KEIL на английском, если появляется предупреждение-
L15 WARNING : MULTIPLE CALL TO SEGMENT
http://www.keil.com/support/docs/805.htm
Методы рещения-
C51: USING NON-REENTRANT FUNCTION IN MAIN AND INTERRUPTS
http://www.keil.co …/support/docs/2042.htm
1. Disable interrupts
Больщой вопрос, правильно ли я понял?
2. OVERLAY directive to remove the function from overlay analysis.
Чтоб защититься от OVERLAY ANALYSIS используется
OVERLAY Linker Directive
http://www.keil.co …/lx51/lx51_overlay.htm
Например-
Task functions in RTX51 and RTX51 Tiny are handled automatically by the linker and do not require use of the OVERLAY directive.