|
|
发表于 2025-12-11 12:06:35
|
显示全部楼层
MBD技术论坛专业解决AI解决不了的问题。
在C Mex S函数中,如果需要定义定点类型,需要使用函数ssRegisterDataTypeFxpBinaryPoint(),而这个函数是以独立文件形式定义的,用户编写C Mex S函数代码时需要包含fixedpoint.h和fixedpoint.c文件。
然后,在编写代码的时候,S函数的初始化方法中调用ssRegisterDataTypeFxpBinaryPoint(),例如实现一个fixdt(1,16,8)的端口:
- DTypeId dataTypeId = ssRegisterDataTypeFxpBinaryPoint(S,
- 1, /* 有符号 (1=有符号, 0=无符号) */
- 16, /* 字长 */
- 8, /* 分数长度 */
- 0); /* 数据是否Override */
- ssSetOutputPortDataType(S, 0, dataTypeId);
复制代码
代码编写完毕,进行编译的时候,需要依赖定点的外部静态库文件libfixedpoint.lib。编译命令中既要包含定义函数的文件也要链接(-l)静态库文件,如下:
- mex xxx_sfcn.c fixedpoint.c -llibfixedpoint.lib
复制代码
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|