Different size definition in Matlab and Simulink

조회 수: 3 (최근 30일)
Leon
Leon 2022년 12월 16일
댓글: Leon 2022년 12월 18일
I am trying to work with TCP/IP communication in Simulink using "Simulink Coder" and "Simulink Desktop Real-Time" and faced a confusing problem. The size of an expression in Matlab is [1, 1].
>> bytes = uint8([0, 1]);
>> byte = typecast(bytes, 'uint16');
>> size(typecast(bytes, 'uint16'))
ans =
1 1
>>
However, when the same exact expression is run in Simulink through the "Matlab Function" block, the result size is [8, 1], but it is needed to be [1, 1].
How could it be solved or explained?

답변 (1개)

VBBV
VBBV 2022년 12월 16일
편집: VBBV 2022년 12월 16일
It seems you are accessing 2 elements of array data with each representing 4 byte register address. Each element of which has 4 digits. For example, a 32 Bit x86 chip has register length of 4 byte can be stored and accessed as you did

카테고리

Help CenterFile Exchange에서 Target Computer Setup에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by