Реле Tianbo - ресурс 10 млн переключений

Макропрограммирование на AVRASM2

Новичок
 
Аватар для Dmitry122
 
Регистрация: 26.02.2009
Сообщений: 65
Репутация: 24
14 7
0 0
 
28.12.2016 11:21 #1
Предлагаю поделиться интересными макросами или приёмами макропрограммирования для компилятора avrasm2.
Вот пример использования рекурсии в макросах:
Код:
.list
.macro Ft
.if a != 1
	.set r = r * a
	.set a = a - 1
	Ft a

.endif
.endmacro

.macro Factorial
.set a = @0
.set r = 1
	Ft a

.endmacro

.cseg
	Factorial 7

	ldi r16,byte4(r)
	ldi r16,byte3(r)
	ldi r16,byte2(r)
	ldi r16,byte1(r)
Используя рекурсивный вызов и другие приёмы, можно писать довольно интересные вещи. Вот здесь макрос для инициализации портов ввода/вывода.http://www.avr-assm.ru/files/macro2.zip
Оценка
Компания MEAN WELL пополнила ассортимент своей широкой линейки светодиодных драйверов новым семейством XLC для внутреннего освещения. Главное отличие – поддержка широкого спектра проводных и беспроводных технологий диммирования. Новинки представлены в MEANWELL.market моделями с мощностями 25 Вт, 40 Вт и 60 Вт. В линейке есть модели, работающие как в режиме стабилизации тока (СС), так и в режиме стабилизации напряжения (CV) значением 12, 24 и 48 В.
Ответ
Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход
ТМ Электроникс. Электронные компоненты и приборы. Скидки, кэшбэк и бесплатная доставка
Часовой пояс GMT +3, время: 02:50.
Обратная связь РадиоЛоцман Вверх