编写硬件具体的C / c++代码
在大多数情况下,将设备驱动程序代码集成到模型万博1manbetx®块,您需要编写一个包装器函数在硬件供应商提供的API。
所有手臂®皮质®——处理器中支持包使用一组通用的C / c万博1manbetx++文件的GPIO读和写操作。
遵循以下步骤来访问所需的C / c++代码实现数字读写功能:
打开C头文件,
MW_gpio.h
,手臂皮层——一个处理器。编辑(fullfile (codertarget.arm_cortex_a.internal.getSpPkgRootDir,“包括”,“MW_gpio.h”))
标题提供了C函数原型系统中被调用对象。
/ /版权2012 - 2015 MathWorks公司。#如果未定义_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
保存一份文件
MW_gpio.h
包括文件夹,包括
设备驱动程序的项目文件夹,看到的创建一个项目文件夹。打开C源文件,
MW_gpio.c
,手臂皮层——一个处理器。编辑(fullfile (codertarget.arm_cortex_a.internal.getSpPkgRootDir,“src”,“MW_gpio.c”))
保存一份文件
MW_gpio.c
源文件夹,src
设备驱动程序的项目文件夹,看到的创建一个项目文件夹。
警告
不修改MW_gpio.h
和MW_gpio.c
文件手臂皮层——目录。
很多硬件设备不支持或建议使用c++编译器。万博1manbetx为了编译和链接c++函数C编译器,您需要添加走读生“C”标识符在每个函数声明告诉编译器不要损坏函数名,这样就可以使用C链接器。
在MW_gpio.c
函数包括MW_gpio.h
文件定义了初始化,读、写和终止功能的别针。注意,我们使用仿真软件的数据类型万博1manbetxgpio
和方向
变量。出于这个原因,我们包括rtwtypes.h
文件中MW_gpio.h
。你必须包括这个文件当你参考模型的数据类型。万博1manbetx自gpio
是一个数字0和53之间我们使用吗uint8_T
数据类型来表示这个变量。变量的值写入数字输出销和代表boolean_T
数据类型。
在下一节中,您将选择系统对象模板系统对象。