我正在关注此MathWorks File Exchange Link。我在运行kSecPaddingNone
演示时遇到问题。
我的MATLAB版本是R2015a,我使用的是Arduino Uno。我在更改m文件中的相关目录列表和arduino版本后运行了文件myarduino_blink.slx
,我在COM 3上得到了Arduino的输出,这是正确的。
在此之后,我检查了Simulink Library Browser,我有自定义C / C ++目标Arduino库将其所有模块。现在,当我模拟模型时,我收到以下错误:
S功能错误' myarduino_blink /数字输出':
S-Function' sfunar_digitalOutput'不存在
请帮助我,我能做错什么?
更新1
好的,我解决了"不存在"问题。显然,没有安装MEX编译器。所以我安装了Windows SDK,然后重新运行m文件,现在我能够生成.mex64文件。现在我遇到另一个问题,当我构建simulink模型时,它会出现这个错误:
模型的构建过程:' myarduino_blink'因错误而中止
如何解决这个问题?
答案 0 :(得分:1)
setup_custom_target_arduino.m
调用build_all_sfunctions.m
,它应该编译blocks
目录中的所有S函数。看起来好像由于某种原因没有发生过。在blocks
目录中检查每个S-Functions是否有.c
,.tlc
(两者都附带包)和.mex64
(已编译)由.c
)文件生成的build_all_sfunctions.m
的版本。
如果它们不在那里,那么设置没有正确执行,你需要编译所有的S-Functions。 如果它们在那里,那么你很可能会遇到某种路径问题(虽然你说你可以在库浏览器中看到这个库,但这似乎不太可能。)