Максимальный размер программы -- 1024 PRU команды (4096 байт). Суммарно может быть 2 программы одновременно (одна для PRU0, вторая для PRU1)
Размер занимаемой памяти видно в коде генерируемой ..._PruXInit программы.
Код:
...
PROGRAM BlinkningLeds_Pru1Init
(* Generated by Hardella IDE 1.8.0: https://hardella.com *)
VAR_INPUT
enable : BOOL := TRUE; (* PRU is reset on the R_TRIG(enable) *)
END_VAR
VAR_OUTPUT
running : BOOL := FALSE; (* TRUE when PRU is running *)
END_VAR
VAR
initDone : BOOL := FALSE;
enTrg : R_TRIG;
xx, yy : POINTER TO DWORD;
x, i : DWORD;
pruCode : ARRAY[1..38] OF DWORD :=
16#51000102, 16#15012121, 16#01002141, 16#15012161, 16#24f08082, 16#2402fac2, 16#91000303, 16#51000306, 16#51020301, 16#51030302
, 16#91040301, 16#24000003, 16#81000303, 16#24780ce3, 16#f1002383, 16#013ce3e3, 16#66e2e3f6, 16#00e2e0e0, 16#24780ce3, 16#f1002384
, 16#010ae4e4, 16#48e4e203, 16#240000e5, 16#21001ee1, 16#04e4e2e5, 16#c900e502, 16#1501e5e5, 16#5100e503, 16#0502e5e5, 16#6f00e5ff
, 16#e1002385, 16#11ffde82, 16#090841c2, 16#12c28282, 16#090961c2, 16#12c28282, 16#010082de, 16#210000e1;
END_VAR
...
Это означает (см объявление переменной pruCode), что программа BlinkningLeds занимает 38 из 1024 команд в PRU1.