- From: <corbetta_at_aero.polimi.it>
- Date: Wed, 10 Nov 2004 16:25:06 +0100
Hi,
I am using this code to start a writing by a NI6713 but when I insert my
module (i'm working in kernel space) the command return always -1.
int do_cmd(void)
{
int ret, i, n;
double s;
comedi_cmd cmd;
unsigned int chanlist[N_WRITE];
comedi_insn insn;
lsampl_t data_insn[1];
sampl_t preload;
memset(&cmd,0,sizeof(cmd));
/* Set up channel list */
for (i = 0; i < N_WRITE; i++) {
chanlist[i] = CR_PACK(BUF_WRITE[i],4,AREF_GROUND);
}
cmd.subdev = subdev;
cmd.flags= TRIG_WAKE_EOS;
cmd.start_src = TRIG_INT;
cmd.start_arg = 0;
cmd.scan_begin_src = TRIG_TIMER;
cmd.scan_begin_arg = SAMP_TIME;
cmd.convert_src = TRIG_NOW;
cmd.convert_arg = 0;
cmd.scan_end_src = TRIG_COUNT;
cmd.scan_end_arg = N_WRITE;
cmd.stop_src = TRIG_NONE;
cmd.stop_arg = 0;
cmd.chanlist = chanlist;
cmd.chanlist_len = N_WRITE;
// cmd.data=map;
// cmd.data_len=sizeof(sampl_t);
ret = comedi_command_test(dev,&cmd);
printk("1st command test returned %d\n",ret);
ret = comedi_command_test(dev,&cmd);
printk("2nd command test returned %d\n",ret);
printk("CONVERT ARG: %d\n", cmd.convert_arg);
if (ret) {
return ret;
}
ret = comedi_command(dev,&cmd);
printk("command returned %d\n",ret);
// preload[0] = 1;
/* for (n = 0; n < BUFSIZE; n++) {
s = (1. - range_min)/(range_max - range_min)*maxdata;
preload = (sampl_t)(floor(s+0.5));
comedi_data_write(dev, subdev, n , 0, AREF_GROUND, preload);}*/
// n = N_WRITE * sizeof(sampl_t);
// write(comedi_fileno(dev), (void *)preload, n);
memset(&insn, 0, sizeof(comedi_insn));
data_insn[0]=0;
insn.insn = INSN_INTTRIG;
insn.n = 1;
insn.subdev = subdev;
insn.data = data_insn;
insn.chanspec=CR_PACK(BUF_WRITE[0],4,AREF_GROUND);
ret = comedi_do_insn(dev, &insn);
if(ret<0){
comedi_perror("no cazzo internal trigger\n");
}
return 0;
}
using > insmod signal_generator.o && dmesg
-I recive this message
-1st command test returned 0
-2nd command test returned 0
-CONVERT ARG: 0
-command returned 0
-ni_mio_common: DMA underrun
-comedi2: ni_pcimio: timed out waiting for dma load
-: unknown error
somebody can help me?
thanks
walter
Received on 2004-11-10Z15:25:06