S-function for reading the Lego NXT compass sensor

1 view (last 30 days)
Hi!
My question is about using the NXT Toolbox in simulink. Since there is no built in block for reading the compass sensor, I would like to write an S-function containing C-code with libraries from nxtOSEK (ecrobot_interface.h mainly), which have methods for reading the compass sensor. I have tried using the s-function builder as well as writing the c-file manually from a template, and also the Code Legacy Tool. None of these manages to compile the c-code. I get lots of (>100) syntax errors in library files not written by me, for example:
C:\Matlab\R2012a\targets\nxtOSEK\lejos_nxj\src\nxtvm\javavm\classes.h(70) : error C2143: syntax error : missing ')' before '('
Is there something special I need to think about when using external libraries in C mex S-functions?
regards, Fredrik

Accepted Answer

Kaustubha Govind
Kaustubha Govind on 8 Jun 2012
You just need to make sure to have all the right #includes and use the right compiler/linker flags. Pretty much what you might need to do if you were trying to create a standalone application with that code outside of MATLAB.

More Answers (0)

Categories

Find more on LEGO MINDSTORMS EV3 Hardware in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!