ARMv7-A
коллекция макросов
Пауза (число) - вставляет программную паузу, указанную в микросекундах.
Пауза 10000 - вставит программную паузу на 10 мс
Используется как правило в линейном коде, во время инициализации камня.
NOPS число - вставляет в программу директивы NOP в указанном количестве. Для создания микрозадержек.
INC (регистр) - увеличивает регистр на 1
DEC (регистр) - уменьшает регистр на 1
CLR (регистр) - сбрасывает регистр в 0
SER (регистр) - устанавливает все биты регистра в 1
BIS регистр, число - устанавливает биты регистра по маске (аналог
BIC)
BII регистр, число - инвертирует биты регистра по маске
JMP (адрес) - переходит по указанному адресу
CALL (адрес) - выполняет подпрограмму по указанному адресу
RET - выход из подпрограммы
RETI - выход из прерывания в ARMv7-A
MOV32 регистр, число - загружает в R регистр ядра 32-битную константу или адрес
CMP32 регистр, число - сравнивает регистр с 32-битной константой
ADD32 регистр, число - прибавляет к регистру 32-битную константу
VMOV32 регистр, число - загружает в S регистр NEON целое 32-битное число
VMOV64 регистр, число - загружает в D регистр NEON целое 64-битное число
VMOV128 регистр, число - загружает в Q регистр NEON целое 128-битное число
FLDR регистр, плавающее_число - загружает в R регистр ядра плавучее число одинарной точности
FLDS регистр плавающее_число - загружает в S регистр NEON плавучее число одинарной точности
FLDD регистр, плавающее_число - загружает в D регистр NEON плавучее число двойной точности
Зависнуть - программа останавливается в безконечном цикле
Смотрите
стартовый комплект для NXP i.MX7D.