ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
30 июня
276439 Топик полностью
ilyaul (05.10.2011 01:08 - 01:34, просмотров: 169) ответил MBedder на Какой смысл делать одноразовые МНОГОСТРОЧНЫЕ макросы, применяемые в проекте лишь единожды? Вот для примера один из моих универсальных макрофайлов, включаемый в РАЗНЫЕ проекты:
Может это тоже оформить в макрос , а не таскать по всем проектам как отдельный файл. 
// Очистка памяти ldwi Y,(RAMEND+1) // Очищаем память с конца (RAMEND) ldwi X,SRAM_START // к началу(SRAM_START). SRAM_START определен в inc-файле контроллера; clr R0 ZeroLoop: st -Y,R0 cp YL,XL cpc YH,XH brne ZeroLoop // Установка стека ldwi Y,(RAMEND) .ifdef SPL out SPL,YL // для контроллеров, у которых нет ОЗУ, не выполняется .ifdef SPH out SPH,YH // для контроллеров, с размером ОЗУ < 256 байт, не выполняется .endif .endif // Очитска регистров clr R0 clr R1 clr R2 clr R3 clr R4 clr R5 clr R6 clr R7 clr R8 clr R9 clr R10 clr R11 clr R12 clr R13 clr R14 clr R15 clr R16 clr R17 clr R18 clr R19 clr R20 clr R21 clr R22 clr R23 clr R24 clr R25 clr R26 clr R27 clr R28 clr R29 clr R30 clr R31
Вот кстати тоже макрос которым я часто пользуюсь. Не надо думать какую команду применить при выводе в порт
.macro outi ldi CopySRAM,@1 .if ( @0 < 0x60 ) out @0,CopySRAM .else sts @0,CopySRAM .endif .endm