MATLAB Answers

Datatype problem with arduino and coder.ceval

2 views (last 30 days)
Marcell on 30 Jan 2015
Edited: Marcell on 30 Jan 2015
Hello, I'm writing a simulink device driver block for Arduino Due with the Matlab Function Approach as explained in the Simulink Device Driver guide. When I want to pass a double from the C++ code to the matlab function code with coder.ceval() I get a wrong number. Here is an example:
C++ function:
#include <Arduino.h>
extern "C" double dout_output()
return 50.5;
Matlab function in Simulink:
function x = example()
x = 0.0;
if strcmp(,'rtw'),
x = coder.ceval('dout_output');
When I run this code in external mode on an adruino due I don't get the 50.5 but a large number like 1113794816. Any sugestions?


Sign in to comment.

Answers (0)

Sign in to answer this question.