#include "stdafx.h" #include #include #include #include #include "7088.h" #include "PACSDK.h" #pragma comment(lib,"PACSDK.lib") char Cmd[32]; char Res[512]; char cmd[50]; int len; long delaytime=100; ///////////////////////////////// void Init7088(HANDLE comport) { float fao= 9; int s,ret,aoch=0,iRet; char id[32]; unsigned char OutBufCom0[20],InBufCom0[20]; len=sprintf(Cmd,"$01M\r"); uart_BinSend(comport,Cmd,len); Sleep(100); len=uart_GetDataSize(comport,IN_DATA); if(len>0) uart_BinRecv(comport,Res,len); if(Res[0]=='!'&& Res[3]=='7'&& Res[4]=='0'&& Res[5]=='8'&& Res[6]=='8') { printf(" find I-7088\n"); SetDutyCycle(comport,0,50); SetFREQ(comport,0,50000); SetMode(comport,0,0,1); } else { printf(" can't find I-7088 , %s\n",Res); getchar(); } } void SetDutyCycle(HANDLE comport,int ch,float val)//$AACnD(data) { len=sprintf(Cmd,"$01C%01dD%2.1f\r",ch,val); //printf("DUTY_%s\n",Cmd); uart_BinSend(comport,Cmd,len); Sleep(100); len=uart_GetDataSize(comport,IN_DATA); if(len>0) uart_BinRecv(comport,Res,len); if(Res[0]!='!') { printf("DUTY_I-7088 error , %s\n",Res); } } void SetFREQ(HANDLE comport,int ch,unsigned long val)//$AACnF(data) { len=sprintf(Cmd,"$01C%01dF%06d\r",ch,val); //printf("FREQ_%s\n",Cmd); uart_BinSend(comport,Cmd,len); Sleep(100); len=uart_GetDataSize(comport,IN_DATA); if(len>0) uart_BinRecv(comport,Res,len); if(Res[0]!='!') { printf("FREQ_I-7088 error , %s\n",Res); } } void SetMode(HANDLE comport,int ch,int mode,unsigned long count)//$AACnMS //$AACnP(data) { len=sprintf(Cmd,"$01C%01dP%04X\r",ch,count); //printf("Count_%s\n",Cmd); uart_BinSend(comport,Cmd,len); Sleep(100); len=uart_GetDataSize(comport,IN_DATA); if(len>0) uart_BinRecv(comport,Res,len); if(Res[0]!='!') { printf("Count_I-7088 error , %s\n",Res); } len=sprintf(Cmd,"$01C%01dM%01d\r",ch,mode); //printf("Mode_%s\n",Cmd); uart_BinSend(comport,Cmd,len); Sleep(100); len=uart_GetDataSize(comport,IN_DATA); if(len>0) uart_BinRecv(comport,Res,len); if(Res[0]!='!') { printf("Mode_I-7088 error , %s\n",Res); } } void PWM_Start(HANDLE comport,int ch,int enable)//$AAAcDD { len=sprintf(Cmd,"#01A%01d%02d\r",ch,enable); //printf("Start_%s\n",Cmd); uart_BinSend(comport,Cmd,len); Sleep(100); len=uart_GetDataSize(comport,IN_DATA); if(len>0) uart_BinRecv(comport,Res,len); if(Res[0]!='>') { printf("Start_I-7088 error , %s\n",Res); } }