Simulink: Assigning values at a memory location (on a DSP) to constants

15 views (last 30 days)
I'm going to be loading a hex file with preloaded constants into a DSP's flash memory, and I need to be able to have those constants be parameters for Simulink blocks. If I know the memory address of where the parameter data would be (in the DSP's flash memory), how can I have that turned into a constant that I can then plug into a Simulink block? Thanks!

Answers (1)

TAB
TAB on 1 Jun 2018
Edited: TAB on 1 Jun 2018
  • In Simulink define those constants as Simulink.Parameter.
  • Set the storage class of those parameters so you can import them from external code (eg ImportedExternPointer or Define or GetSet etc. depends upon your DSP code.
Just a simple example:
My DSP constants are defined in c-file as below:
File: dspFlashConst.c
uint8 *CONST_DATA1 = Address1;
uint8 *CONST_DATA2 = Address2;
.....
.....
In Matlab:
CONST_DATA1 = Simulink.Parameter;
CONST_DATA1.DataType = 'uint8';
CONST_DATA1.CoderInfo.StorageClass = 'ImportedExternPointer';

Categories

Find more on Simulink Coder in Help Center and File Exchange

Tags

Products


Release

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!