主要内容

编写特定于硬件的C/ c++代码

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

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

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

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

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

    // Copyright 2012-2015 The MathWorks, Inc.#如果未定义_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);走读生MW_gpioRead(int32_T gpio);走读生无效MW_gpioWrite(int32_T gpio, boolean_T值);# ifdef__cplusplus}# endif# endif
  3. 保存文件的副本MW_gpio.h在包含文件夹中,包括的设备驱动程序项目文件夹,请参见创建项目文件夹

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

    编辑(fullfile (codertarget.arm_cortex_a.internal.getSpPkgRootDir,“src”“MW_gpio.c”))
  5. 保存文件的副本MW_gpio.c进入源文件夹,src的设备驱动程序项目文件夹,请参见创建项目文件夹

警告

请勿修改MW_gpio.h而且MW_gpio.c的文件手臂皮层——目录。

许多硬件设备要么不支持,要么不推荐使用c++编译器。万博1manbetx为了用C编译器编译和链接c++函数,需要添加走读生“C”标识符,告诉编译器不要混淆函数名,以便与C链接器一起使用。

rtwtypes.h每当引用Simulink数据类型时,必须包含一个文件。万博1manbetx

在下一节中,您将了解选择一个系统对象模板为System对象设置。

另请参阅

||