鱼C论坛

 找回密码
 立即注册
查看: 2004|回复: 8

调用库函数

[复制链接]
发表于 2021-10-28 13:44:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
买了一个电机,想通过C语言程序控制它,卖家已经给了库函数,怎么把它写成完整的程序。自己写的问题很多,求指正。
卖家给的:
3 库函数介绍 本章将对所有库函数进行介绍,并给出了示例程序,示例中出现的所有宏均在库函数所 附带的头文件(NTControl.h)中定义。 注意,该库的所有功能都使用 cdecl 调用约定。某些开发环境(例如 Delphi)默认使 用 stdcall。导入库函数时必须考虑到这一点。 3.1 初始化函数 NT_OpenSystem 函数原型: NT_STATUS NT_OpenSystem(NT_INDEX *systemIndex, const char *systemLocator, const char *options); 功能描述: 用来初始化 systemLocator 指定的系统。systemIndex 是系统句柄,由此函数调用成功 后返回。该参数将作为入口参数传递给其他库函数,作为系统索引来寻址指定系统。options 是配置选项表,用于配置 Dll 的通信模式,还可以复位控制器。每种配置选项之间必须用逗 号或换行符分隔。 options 的配置选项表: ● reset 在控制器上电的情况下进行硬件复位,该项非必选项。 ● async,sync 使用 async 选项将通信模式设置为异步,使用 sync 选项将通信 模式设置为同步,该项为必选项。 入口参数 ● systemIndex (unsigned 32bit),输出 – 返回打开的系统的句柄。 ● systemLocator (const char pointer),输入 - 指定系统的定位符。 ● options (const char pointer),输入 - 初始化系统的配置选项。参见 options 的配置 选项表。 示例程序: const char loc[] = “usb:id:5535186640”; NT_STATUS result; NT_INDEX ntHandle; // connect to a USB interface for async. communication and reset the system result = NT_OpenSystem(&ntHandle, loc, “async,reset”); if(result != NT_OK){ // handle error }
自己写的:
#include"NT_Control.h"
#include"stdio.h"
const char loc[] = "usb:ix:0";
NT_STATUS result;
NT_INDEX ntHandle;
const char *systemLocator, *options;
int main()
{
result = NT_OpenSystem(&ntHandle, loc, "sync,reset");
if (result != NT_OK)
{
  return -1;
}
else
{
  printf("%d\n", result);
}
return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-10-28 15:01:35 | 显示全部楼层
家用智能?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-28 15:36:34 | 显示全部楼层
你这代码不友好啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-28 15:37:09 | 显示全部楼层
能整理好吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-10-28 16:13:53 | 显示全部楼层

3 库函数介绍 本章将对所有库函数进行介绍,并给出了示例程序,示例中出现的所有宏均在库函数所 附带的头文件(NTControl.h)中定义。 注意,该库的所有功能都使用 cdecl 调用约定。某些开发环境(例如 Delphi)默认使 用 stdcall。导入库函数时必须考虑到这一点。
3.1 初始化函数 NT_OpenSystem 函数原型: NT_STATUS NT_OpenSystem(NT_INDEX *systemIndex, const char *systemLocator, const char *options);
功能描述: 用来初始化 systemLocator 指定的系统。systemIndex 是系统句柄,由此函数调用成功 后返回。该参数将作为入口参数传递给其他库函数,作为系统索引来寻址指定系统。options 是配置选项表,用于配置 Dll 的通信模式,还可以复位控制器。每种配置选项之间必须用逗 号或换行符分隔。 options 的配置选项表: ● reset 在控制器上电的情况下进行硬件复位,该项非必选项。 ● async,sync 使用 async 选项将通信模式设置为异步,使用 sync 选项将通信 模式设置为同步,该项为必选项。 入口参数 ● systemIndex (unsigned 32bit),输出 – 返回打开的系统的句柄。 ● systemLocator (const char pointer),输入 - 指定系统的定位符。 ● options (const char pointer),输入 - 初始化系统的配置选项。参见 options 的配置 选项表。
示例程序:
const char loc[] = “usb:id:5535186640”;
NT_STATUS result;
NT_INDEX ntHandle;
// connect to a USB interface for async. communication and reset the system
result = NT_OpenSystem(&ntHandle, loc, “async,reset”);
if(result != NT_OK)
{ // handle error }
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-28 16:36:21 | 显示全部楼层
机械学C 发表于 2021-10-28 16:13
3 库函数介绍 本章将对所有库函数进行介绍,并给出了示例程序,示例中出现的所有宏均在库函数所 附带的头 ...

提问题就认真一点,用心一点

买了一个电机,想通过C语言程序控制它,卖家已经给了库函数,怎么把它写成完整的程序。自己写的问题很多,求指正。
卖家给的:
3. 库函数介绍 本章将对所有库函数进行介绍,并给出了示例程序,示例中出现的所有宏均在库函数所 附带的头文件(NTControl.h)中定义。
   注意,该库的所有功能都使用 cdecl 调用约定。某些开发环境(例如 Delphi)默认使 用 stdcall。导入库函数时必须考虑到这一点。
3.1 初始化函数 NT_OpenSystem 函数原型:
   NT_STATUS NT_OpenSystem(NT_INDEX *systemIndex, const char *systemLocator, const char *options);
功能描述:用来初始化
   systemLocator 指定的系统。
   systemIndex 是系统句柄,由此函数调用成功 后返回。该参数将作为入口参数传递给其他库函数,作为系统索引来寻址指定系统。
   options 是配置选项表,用于配置 Dll 的通信模式,还可以复位控制器。每种配置选项之间必须用逗 号或换行符分隔。
   options 的配置选项表:
       ● reset 在控制器上电的情况下进行硬件复位,该项非必选项。
       ● async,sync 使用 async 选项将通信模式设置为异步,使用 sync 选项将通信 模式设置为同步,该项为必选项。
入口参数
       ● systemIndex (unsigned 32bit),输出 – 返回打开的系统的句柄。
       ● systemLocator (const char pointer),输入 - 指定系统的定位符。
       ● options (const char pointer),输入 - 初始化系统的配置选项。参见 options 的配置 选项表。
示例程序:
const char loc[] = “usb:id:5535186640”;
NT_STATUS result;
NT_INDEX ntHandle; // connect to a USB interface for async. communication and reset the system
result = NT_OpenSystem(&ntHandle, loc, “async,reset”);
if(result != NT_OK) {
    // handle error
}

自己写的:
#include "NT_Control.h"
#include <stdio.h>

const char loc[] = "usb:ix:0";
NT_STATUS result;
NT_INDEX ntHandle;
const char *systemLocator, *options;

int main(void) {
    result = NT_OpenSystem(&ntHandle, loc, "sync,reset");
    if (result != NT_OK) {
        return -1;
    } else {
        printf("%d\n", result);
    }
    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-10-28 17:24:05 | 显示全部楼层
谢谢,第一次,不太会弄成这样
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-28 17:50:32 | 显示全部楼层
机械学C 发表于 2021-10-28 17:24
谢谢,第一次,不太会弄成这样

这样也可以呀,这样也比你贴的那个好很多


买了一个电机,想通过C语言程序控制它,卖家已经给了库函数,怎么把它写成完整的程序。自己写的问题很多,求指正。
卖家给的:
3. 库函数介绍 本章将对所有库函数进行介绍,并给出了示例程序,示例中出现的所有宏均在库函数所 附带的头文件(NTControl.h)中定义。
   注意,该库的所有功能都使用 cdecl 调用约定。某些开发环境(例如 Delphi)默认使 用 stdcall。导入库函数时必须考虑到这一点。
3.1 初始化函数 NT_OpenSystem 函数原型:
   NT_STATUS NT_OpenSystem(NT_INDEX *systemIndex, const char *systemLocator, const char *options);
功能描述:用来初始化
   systemLocator 指定的系统。
   systemIndex 是系统句柄,由此函数调用成功 后返回。该参数将作为入口参数传递给其他库函数,作为系统索引来寻址指定系统。
   options 是配置选项表,用于配置 Dll 的通信模式,还可以复位控制器。每种配置选项之间必须用逗 号或换行符分隔。
   options 的配置选项表:
       ● reset 在控制器上电的情况下进行硬件复位,该项非必选项。
       ● async,sync 使用 async 选项将通信模式设置为异步,使用 sync 选项将通信 模式设置为同步,该项为必选项。
入口参数
       ● systemIndex (unsigned 32bit),输出 – 返回打开的系统的句柄。
       ● systemLocator (const char pointer),输入 - 指定系统的定位符。
       ● options (const char pointer),输入 - 初始化系统的配置选项。参见 options 的配置 选项表。[/code]
示例程序:
const char loc[] = “usb:id:5535186640”;
NT_STATUS result;
NT_INDEX ntHandle; // connect to a USB interface for async. communication and reset the system
result = NT_OpenSystem(&ntHandle, loc, “async,reset”);
if(result != NT_OK) {
    // handle error
}

自己写的:
#include "NT_Control.h"
#include <stdio.h>

const char loc[] = "usb:ix:0";
NT_STATUS result;
NT_INDEX ntHandle;
const char *systemLocator, *options;

int main(void) {
    result = NT_OpenSystem(&ntHandle, loc, "sync,reset");
    if (result != NT_OK) {
        return -1;
    } else {
        printf("%d\n", result);
    }
    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-28 17:51:45 | 显示全部楼层
机械学C 发表于 2021-10-28 17:24
谢谢,第一次,不太会弄成这样

其实,嵌入式代码问题,别人基本上没办法,因为别人没有开发板,没办法调试程序
学习嵌入式基本上得靠你自己
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-22 19:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表