Когда ваш рукописный код выделяет память для сигнала, состояния или данных параметра, можно сгенерировать код, который обращается к этим данным через указатель. Применить класс памяти, такой как ImportedExternPointer
к элементу данных в модели. Ваш рукописный код предоставляет определение указателя.
extern double *myIn;
1. Откройте пример модели ex_pointer
.
2. Откройте приложение Embedded Coder.
3. На вкладке C Code выберите Code Interface > Individual Element Code Mappings.
4. В редакторе Отображения на вкладке Inports установите значение класса памяти для блока Inport равным ImportedExternPointer
.
5. Сгенерируйте код из модели.
Сгенерированный заголовочный файл ex_pointer.h
объявляет указатель.
/* Imported (extern) pointer block signals */ extern real_T *In1; /* '<Root>/In1' */
В сгенерированном исходном файле ex_pointer.c
, в функции шага модели алгоритм обыгрывает указатель мыши, In1
.
/* Model step function */ void ex_pointer_step(void) { /* Outport: '<Root>/Out1' incorporates: * Inport: '<Root>/In1' */ rtY.Out1 = *In1; }