刚学qt不到两个星期,想写个控制步进电机的代码,一直出错,各位高手能否帮忙写个给我参考。用的是学校的ARM9,linux平台
这边分C写的代码:
#include <stdio.h>
#include <fcntl.h>
#include <string.h>
#include <sys/ioctl.h>
#define DCM_IOCTRL_SETPWM (0x10)
#define DCM_TCNTB0 (16384)
static int dcm_fd = -1;
char *DCM_DEV="/dev/dcm/0raw";
void Delay(int t)
{
int i;
for(;t>0;t--)
for(i=0;i<400;i++);
}
/****************************************************************/
int main(int argc, char **argv)
{
int i = 0;
int status = 1;
int setpwm = 0;
int factor = DCM_TCNTB0/1024;
if((dcm_fd=open(DCM_DEV, O_WRONLY))<0){
printf("Error opening %s device\n", DCM_DEV);
return 1;
}
for (;;) {
for (i=-512; i<=512; i++) {
if(status == 1)
setpwm = i;
else
setpwm = -i;
ioctl(dcm_fd, DCM_IOCTRL_SETPWM, (setpwm * factor));
Delay(500);
printf("setpwm = %d \n", setpwm);
}
status = -status;
}
close(dcm_fd);
return 0;
}
我现在想写个qt的界面程序放到arm上运行,通过界面的按钮来控制电机的转速和方向,但不知道要怎么修改这个c的程序,请各位高手指点一二