1 新建空的win32控制台程序,添加新的.cpp文件,进行调试生成Debug文件夹
2 把程序涉及到的.dll文件放在Debug文件夹中,把.h和.lib文件放在项目根目录下
3 在.cpp文件中编写程序
#include<iostream>
#include<TML_Lib.h>
#include<tmlcomm.h>
using namespace std;
void main() //can通讯
{
//打开通信通道
LPCSTR pszDevName="1"; //被打开的通信通道
BYTE ChannelType= CHANNEL_PEAK_SYS_PCAN_USB;
BYTE ProtocolType=PROTOCOL_TMLCAN;
BYTE btType=ChannelType | ProtocolType; //通信通道的类型与CAN-bus 通信协议
BYTE nHostID=255; //PC轴ID号
DWORD baudrate=1000000; //通信波特率
if(!TS_OpenChannel(pszDevName, btType, nHostID, baudrate))
{
TS_OpenChannel(pszDevName, btType, nHostID, baudrate);
}
//装入EasyMotion的设置数据表
LPCSTR setupDirectory="C:\Program Files (x86)\Technosoft\ESM\Archives\test0527.t.zip"; //设置文件的目录名称
//TS_LoadSetup(setupDirectory); //setupDirectory 设置文件的目录名称
//为每个轴设置相关的设置信息
BYTE axisID=4; //驱动器/电机的轴ID号
if(!TS_SetupAxis( axisID, TS_LoadSetup(setupDirectory) )) //idxSetup 由TS_LoadSetup 所产生的配置索引指针
{
TS_SetupAxis( axisID, TS_LoadSetup(setupDirectory) );
}
//选择需要接收主机命令的目标轴
if(!TS_SelectAxis(axisID))
{
TS_SelectAxis(axisID);
}
//检查已下载在驱动器只读存储器中设置数据的完整性
//WORD Status;
//TS_ReadStatus( REG_MCR,Status);
cout<<"通信通道为:"<<pszDevName<<endl;
cout<<"PC轴ID号为 :"<<int (nHostID)<<endl;
cout<<"通信波特率为:"<<baudrate<<endl;
cout<<"驱动器/电机的轴ID号为:"<<int (axisID)<<endl;
//cout<<"是否开始运行?"<<endl;
//if(getchar()=='y')
//使能驱动器
BOOL Enable;
Enable = TRUE;
if(!TS_Power(Enable))
{
TS_Power(Enable);
cout<<TS_GetLastErrorText();
}
//发出运动命令
//LONG AbsPosition=180; //以TML 位置单位表示所要达到的目标位置
//DOUBLE Speed=100; //以TML 速度单位表示的转速。如果这个值为0,驱动器/电机将使用以前值设置为速度
//double Acceleration=0; //以TML 加速度单位表示加速度/减速度。如果这个值为0,驱动器/电机将使用以前值设置为加速度
//SHORT MoveMoment=UPDATE_IMMEDIATE; //定义执行运动的启动模式
//SHORT ReferenceBase=FROM_MEASURE; //指定如何计算运动参考量
//TS_MoveAbsolute( AbsPosition,Speed,Acceleration,MoveMoment,ReferenceBase);
double Speed = 100;
double Accerleration = 0;
short MoveMoment = UPDATE_IMMEDIATE;
short ReferenceBase = FROM_MEASURE;
if(!TS_MoveVelocity(Speed,Accerleration,MoveMoment,ReferenceBase))
{
TS_MoveVelocity(Speed,Accerleration,MoveMoment,ReferenceBase);
}
//禁止驱动器
if(getchar()=='s')
{
Enable = FALSE;
if(TS_Power(Enable))
{
TS_Power(Enable);
}
//关闭通信通道
INT fd=-1;
TS_CloseChannel(fd);
}
}
4 完了之后会出现提醒,无法读取.h文件
在VS2012中,右键项目名称,选择 属性,在下图所示的附加包含目录中添加项目地址就可以解决了

5 结果出现如下错误:

解决办法:属性->链接器->常规->附加库目录,在里面添加两个.lib文件的地址,要精确到.lib文件

6 出现如下错误


875





