|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 Uqzalq 于 2020-9-7 18:41 编辑
# k; d: @: e S; w" Y# w' d; Q; z, n s4 Z' e
使用vs2017 c#调用matlab dll时出现了异常,错误为:输出参数过多' o3 O% m+ c1 i$ m4 z1 T$ s( f+ B
c#部分的代码:
. p8 p% i F' X1 h- MWArray[] Result = new MWArray[1000];
- IEMG iemg = new IEMG();
- Result=iemg.IEMGtest(30,(MWNumericArray)receiveddata);9 G, |. \. \6 k4 E# `2 j. b- R
0 _1 H$ q% H" u9 u
9 k& N( B3 @/ ]# h
matlab部分代码:- O$ x% `- m' n% b" b. v4 @7 w: m
- function y=IEMGtest(n,k)
- lev=10;
- s1=wden(k,'rigrsure','s','mln',lev,'db8');%rigrsure阈值信号处理;
- N=n;
- for i=1:length(s1)-N
- iemg(i)=sum(abs(s1(i:i+N-1)))/N;
- % rms(i)=sqrt(sum(s1(i:i+N-1).^2))/N;
- end
- a=iemg;
- y=a;
* m* \. [# n/ `9 ~7 I6 f 9 ]! {$ v1 H, K7 |' f1 o, m. z4 h$ Y
3 O: K6 d- W0 ~/ v0 X/ }
9 d" S- n% V5 H8 ~3 q* e1 t
因为返回的a是一个数组,我尝试建立了MWArray[1000]来采集,但是还是报错输出参数过多,请求论坛的大佬们帮忙给个解决的方法,挺急的,在线等,非常感谢!; J O$ b$ D- W4 [- R- N: _, T: i
|
|