ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
25 ноября
234360
mazur (19.01.2011 14:55, просмотров: 12478)
Здравствуйте! fko давал мне пример программного шима. И я увидел у него замечательную вещь. Макросы для динамического определения регистров. Попытался применить их в AVR-Studio. Хрен. По колено хрен. Макросы писались в линуховом компиляторе. AVR-Studio ругается на неверный синтаксис при применении директивы DEF. Попытался на других вещах применить, вроде получилось. .set NUM_FLG = -1 .macro Set_Flags .set NUM_FLG = (NUM_FLG+1) .equ @0 = NUM_FLG .endmacro ;========================================================================= ; Флаги. ; FLAGS: Set_Flags SYSTEM_TICK_FLG Set_Flags TIME_OUT_FLG Set_Flags KEYS_PRESSED_FLG Set_Flags KEYS_HOLD_FLG Set_Flags DEFINE_KEYS_FLG Set_Flags KBD_MSG_FLG ;.equ SYSTEM_TICK_FLG = 0 ;.equ TIME_OUT_FLG = 1 ;.equ KEYS_PRESSED_FLG = 2 ;.equ KEYS_HOLD_FLG = 3 ;.equ DEFINE_KEYS_FLG = 4 ;.equ KBD_MSG_FLG = 5 ;========================================================================= А вот с регистрами пока никак не получается. Подскажет кто-нибудь, как можно написать подобные макросы для динамического определения регистров?