TA的每日心情 | 衰 2019-11-19 15:32 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
dll已加载成功并且能调用一部分函数,调用'ReadWavelength'直接挂 我该怎么办?: T# T4 h( z0 J! o; @& \$ o
- @2 g/ S! X: m% V' y/ Xtry
, ?4 U7 E- S6 Y; z: E6 s 9 N9 |* s' A' M9 G
if~libisloaded('OpticalDevice')
- P7 \4 s$ h5 X8 @ loadlibrary('OpticalDevice','OpticalDevice.h');
# g/ Q7 ~5 Q4 C' Y7 \3 t end;
/ M5 v: F6 {, T m = libfunctions('OpticalDevice','-full');%显示库中函数
: F3 W6 l7 d# i$ L/ Y& N/ p3 B% libfunctionsview OpticalDevice;%显示库中函数" h) j7 V2 O0 [1 o
sSerialNO ='123';
) L8 t8 ?1 W0 A pCharSerialNO = libpointer('cstring',sSerialNO);5 L2 W: w& \! D, g
6 n1 V; R% }# Q" O: q8 w %p = libpointer('stringPtr');0 Y: k1 ^: e% K Z6 u
nNumPixels = 0;
2 I0 ?4 t- ^4 M/ K6 ? sSerialNum='';%序列号8 U B) Z1 u% p) s( T, Z
bSuccess=calllib('OpticalDevice','OpenDevice');%打开设备 是否安装了驱动? usb插拔一下?
; |9 ?# L6 t9 Z! J( D* @ if bSuccess==0& W1 J- J) Q3 Z0 \
msgbox('打开设备失败','警告');
0 j9 q8 B5 @' z B/ j else
' `' Y8 [! P, D. ^! ~. D2 y nNumPixels = calllib('OpticalDevice','GetNumPixels');%调用成功0 ^% _# w b0 `. _1 O0 u
% calllib('OpticalDevice','GetSerialNO',pCharSerialNO); %调了就崩溃
6 ]/ P3 k3 o9 x: W: ]
: p4 e$ Q- K+ Z: L# g+ U%%调用'ReadWavelength'直接挂+ l' w9 U6 g0 z$ r" L
wavelength = 0.1:1:10000;
* e f* `9 t# u8 C# w pWavelength = libpointer('singlePtr',wavelength);" d) ]8 o( s3 W8 n0 X5 M: \
bSuccess = calllib('OpticalDevice','ReadWavelength',pWavelength);%运行到这里Matlab直接崩溃弹窗(Matlab system error)2 X" F5 n( m# I. {
%'[bool, singlePtr] ReadWavelength(singlePtr)'
& y' y4 g3 d+ f2 y6 T$ c* Z. M! Z
7 Q9 ]4 ~4 \: W! J- B* B
- N$ j) A, z* z% N4 `7 V/ l1 E* v if bSuccess==1
6 ]% H J0 |( D/ m" j$ n+ [ h, v disp('读取波长成功');
& B. u* [2 w: ~2 [ else7 s8 W, a' o* H* U
disp('读取波长失败');" M6 F8 f6 o0 [7 M8 \
end
, H. \4 i) |2 _0 w' ^# \* w end
3 J1 C1 X6 A& _( r2 u7 i/ j3 [ 0 }/ u4 D, w" M0 `( G
bSuccess=calllib('OpticalDevice','CloseDevice');
3 O3 T& I" i& p, U3 {$ e unloadlibrary('OpticalDevice');3 s! K" o4 {, U$ Q. c: T
catch exception# Y( R5 \& h9 a/ m+ v+ M* v1 i: z
bSuccess=calllib('OpticalDevice','CloseDevice');%关闭设备
7 `+ y) P" J+ O9 ?+ C8 f+ O, I( ] unloadlibrary('OpticalDevice');%释放库
5 P. Z. S3 w6 ~+ l- {, M) F9 m
) p1 t! W/ R& T) {% e0 P _ disp(exception);: B( c, E) b4 G
end" l4 S; V2 g0 `# d9 O
* a0 [; C$ d3 c+ Z3 f; @2 O; m |
|