的setupImpl
和stepImpl
方法将C函数与System对象™挂钩。作为输出的数字引脚的初始化只需要在模型初始化时进行一次。因此,MW_gpioInit
函数被调用setupImpl
.要更新数字输出引脚的逻辑状态,调用MW_gpioRead
是由stepImpl
方法。终止时,呼叫MW_gpioTerminate
是由releaseImpl
方法释放硬件资源。按照以下步骤更新您在其中创建的DigitalRead System对象的初始化、输出和终止代码部分选择系统对象模板.
在MATLAB®编辑器,打开DigitalRead.m
类文件。
更新setupImpl
方法,使用以下代码。
方法(访问=保护)函数setupImpl (obj)% #好<马努>如果isempty (coder.target)%在这里放置模拟设置代码其他的调用c函数实现设备初始化coder.cinlcude (“MW_gpio.h”);coder.ceval (“MW_gpioInit”9、0);结束结束...结束
的coder.ceval
函数执行对C包装器函数的调用MW_gpio.h
.第二个和第三个论点coder.ceval
是手臂®皮质®-A硬件板引脚编号和值。
更新BuildInfo
方法,使用以下代码。
方法(静态)...函数updateBuildInfo (buildInfo上下文)如果context.isCodeGenTarget (“环球套票”)%更新buildInfosrcDir = fullfile (fileparts (mfilename (' fullpath ')),“src”);%#ok includeDir = fullfile(fileparts(mfilename('fullpath')),'include');addIncludePaths (buildInfo includeDir);%使用以下API添加包含文件,源和链接器标志addSourceFiles (buildInfo“MW_gpio.c”srcDir);结束结束...结束
更新stepImpl
方法,使用以下代码。
方法(访问=保护)...函数y = stepImpl (obj)% #好<马努>y =双(0);如果isempty (coder.target)%在这里放置模拟输出代码其他的%调用c函数实现设备输出y = coder.ceval (“MW_gpioRead”9);结束结束...结束
不像DigitalWrite
系统对象,stepImpl
方法DigitalRead
系统对象定义输出,y
,这是所选引脚的逻辑值。
更新releaseImpl
方法,使用以下代码。
方法(访问=保护)...函数releaseImpl (obj)% #好<马努>如果isempty (coder.target)%在此处放置模拟终止代码其他的%调用c功能实现设备终止coder.ceval (“MW_gpioTerminate”9);结束结束...结束
在下一节中,您将看到设置输出端口属性系统对象的。