主要内容

编写硬件专用的C/ c++代码

在大多数情况下,将设备驱动程序代码集成到Simulink中金宝app®块时,您需要围绕硬件供应商提供的API编写一个包装函数。

所有手臂®皮质®-处理器派生的支持包使用一组通用的C/ c金宝app++文件来进行GPIO读写操作。

按照以下步骤访问实现数字读写功能所需的C/ c++代码:

  1. 打开C头文件,MW_gpio.h,手臂皮层——一个处理器。

    编辑(fullfile (codertarget.arm_cortex_a.internal.getSpPkgRootDir,“包括”“MW_gpio.h”))
  2. 头文件提供了在System对象中调用的C函数原型。

    //版权所有(2012-2015)#如果未定义_MW_GPIO_H_#定义_MW_GPIO_H_# include“rtwtypes.h”# ifdef__cplusplus走读生“C”# endif/ /共同定义#定义GPIO_MAX_BUF (128)#定义GPIO_DIRECTION_INPUT (1)/ / MATLAB编号#定义GPIO_DIRECTION_OUTPUT (2)走读生无效MW_gpioInit(int32_T gpio, boolean_T方向);走读生无效MW_gpioTerminate (int32_T gpio);走读生boolean_T MW_gpioRead (int32_T gpio);走读生无效MW_gpioWrite(int32_T gpio, boolean_T值);# ifdef__cplusplus}# endif# endif
  3. 保存文件的副本MW_gpio.h进入include文件夹,包括,请参阅创建项目文件夹

  4. 打开C源文件,MW_gpio.c,手臂皮层——一个处理器。

    编辑(fullfile (codertarget.arm_cortex_a.internal.getSpPkgRootDir,“src”“MW_gpio.c”))
  5. 保存文件的副本MW_gpio.c到源文件夹中,src,请参阅创建项目文件夹

警告

请勿修改MW_gpio.hMW_gpio.c文件手臂皮层——目录。

许多硬件设备不支持或推荐使用c++编译器。金宝app为了用C编译器编译和链接c++函数,您需要添加走读生“C”在每个函数声明中的标识符,告诉编译器不要篡改函数名,以便它们可以与C连接器一起使用。

MW_gpio.c函数包括MW_gpio.h定义GPIO管脚的初始化、读、写和终止函数的文件。注意,我们正在使用Simulink数据类型金宝appgpio方向变量。出于这个原因,我们包括rtwtypes.h文件中MW_gpio.h.无论何时引用Simulink数据类型,都必须包含该文件。金宝app自gpio我们用的是0到53之间的数字吗uint8_T表示此变量的数据类型。in变量是要写入数字输出引脚的值,用表示boolean_T数据类型。

在下一节中,您将看到选择系统对象模板为System对象。

另请参阅

||