Клеммы, реле, разъемы Degson со склада в России

Макропрограммирование на 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
Оценка
КОМПЭЛ начал поставки продукции GP Batteries International Ltd. — одного из ведущих мировых производителей элементов питания для промышленного и профессионального применения, успешно работающего на рынке более 30 лет. В основе философии GP Batteries лежат инновационные технологии, надёжность и стремление предложить потребителям оптимальное соотношение цены и эффективности. Широкий ассортимент элементов питания GP уже готов к заказу со склада КОМПЭЛ.
Ответ
Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

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

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