6.62.30 Встроенные функции PRU
GCC предоставляет несколько специальных встроенных функций для работы со специальными инструкциями PRU.
Поддерживаемые встроенные функции:
-
Встроенная функция:
void__delay_cycles(constant long long cycles) Вставляет последовательность инструкций, которая занимает ровно cycles циклов (от 0 до 0xffffffff). Вставляемая последовательность может использовать переходы, циклы или NOP-инструкции и не взаимодействует с другими инструкциями. Обратите внимание, что cycles должен быть целочисленной константой, то есть вы должны передать число, а не переменную, которая может быть оптимизирована до константы позднее. Количество отложенных циклов с помощью этой встроенной функции точно соответствует заданному значению.
-
Встроенная функция:
void__halt(void) Вставляет инструкцию HALT для остановки выполнения процессора.
-
Встроенная функция:
unsigned int__lmbd(unsigned int wordval, unsigned int bitval) Вставляет инструкцию LMBD для вычисления левого бита со значением bitval в значении wordval. Учитывается только младший бит bitval.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-14.2.0/gcc/PRU-Built_002din-Functions.html